Skip to content
This repository
tree: 5aa0d96855
Fetching contributors…

Cannot retrieve contributors at this time

file 165 lines (111 sloc) 6.646 kb


A simple java command line application for Amazon Glacier. You can find the latest version at

How to get it

Either download the latest binary, or build from source.

You can download a nightly build from our the CI server.

How to run

You need a file named with 2 lines:


When running the uploader, specify the path to this file with --credentials /path/to/ or set the default in your configuration file. If you don't specify this option, the default is to search for the file in javas user.home directory.

Command-line options

Option                                  Description                            
------                                  -----------                            
-a, --calculate <File>                  calculate hashsum for a file           
-c, --create                            creates a new vault                    
--credentials <File>                    path to your aws credentials file      
                                          (default: /home/carsten/aws.         
-d, --delete                            deletes an existing archive            
-e, --endpoint <URL>                    URL of the amazon AWS endpoint where   
                                          your vault is                        
-l, --list-inventory                    retrieve the inventory listing of a    
-o, --download                          download an existing archive           
-r, --delete-vault                      deletes an existing vault              
-t, --target <File>                     filename to store downloaded archive   
-u, --upload <File>                     start uploading a new archive          
-v, --vault                             name of your vault   

Configuration file

Available since 0.0.6

If you don't want to specify the options credentials, vault and endpoint every time, you can create a configuration file .glacieruploaderrc and enter the options there. The default is to search for the configuration file in java user.home directory.

This is an example of the configuration file:



Create vault

Available since 0.0.4.

java -jar glacieruploader.jar --endpoint --vault myvaultname --create

Delete vault

Available since 0.0.4. Changed in 0.0.6.

java -jar glacieruploader.jar --endpoint --vault myvaultname --delete-vault

Upload archive

Available since 0.0.3.

java -jar glacieruploader.jar --endpoint --vault myvaultname --upload /path/to/my/

Starting to upload
Using endpoint
Starting upload of
Uploaded archive j7UL7pH46FJGhoAxNVDsdjhHs_GLSKGLd12Dq44dfiyTciW6DSCQubctUFEZ4nKWPrJzv_YoxPVK_TfdAuMCxiQIE3_zEGDg84luI0-tzWMusdfjKHG2ILuhJhK5PySOOaw

This will return an archive id which you can use to retrieve the archive again later.

Download archive

Available since 0.0.4. Changed in 0.0.5.

java -jar glacieruploader.jar --endpoint --vault myvaultname --download myarchiveid --target path/to/

This will download the archive to a temporary location and append the prefix glacier- and the postfix .dl to the file. This will change later and you'll provide the file location.

The option --target specifies an absolute or relative path to a file where the downloaded archive will be saved.

Delete archive

Available since 0.0.6

java -jar glacieruploader.jar --endpoint --vault myvaultname --delete myarchiveid

Deletes the archive myarchiveid.

Calculate HASH for file

Available since 0.0.5.

java -jar glacieruploader.jar --calculate /path/to/

This will calculate a TreeHash sum for the given file. The hash can be verified with the one calculated by Amazon.

List inventory

java -jar glacieruploader.jar --endpoint --vault myvaultname --list-inventory
Listing inventory for vault myvaultname...
Inventory Job ID=8yM9rC4RvSKW5QlXdsglkjJHDFGPMSQyZA2CjhpIWgw2AE4lyyIU87uZz2d-b8eoKrCbGehR4vj5dfHiKPA9Zj5

This will give you a job ID for the inventory listing of the vault. After the job is completed, you can retrieve the listing.

Retrieve inventory listing

Available since 0.0.3.

java -jar glacieruploader.jar --endpoint --vault myvaultname --list-inventory yourjobidfromthepreviousstep
Retrieving inventory for job id 8yM9rC4RvSKW5QlXdsglkjJHDFGPMSQyZA2CjhpIWgw2AE4lyyIU87uZz2d-b8eoKrCbGehR4vj5dfHiKPA9Zj5...
Using endpoint

This is not working for me. What should I do?

Go to my Issues page and add a new issue with a nice report about what's failing for you. Try to provide enough information so I can help you out and fix the error for everyone. It might be a good idea to check for existing issues before reporting a new one.

And as always, you can fork me and fix the error yourself. :-)


This project is distributed under GNU GPL v3.

Something went wrong with that request. Please try again.