Metadata-Version: 2.3
Name: thinice
Version: 1.0.2
Summary: Human-friendly Amazon glacier API
Project-URL: Homepage, https://github.com/yaroslaff/ThinIce
Project-URL: Issues, https://github.com/yaroslaff/showcert/ThinIce
Author-email: Yaroslav Polyakov <yaroslaff@gmail.com>
License-File: LICENSE
Keywords: API,CLI,Glacier,aws,cold,cold storage,download,friendly,inventory,s4fs,storage,tool,upload,utility
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.8
Requires-Dist: boto3
Requires-Dist: fastapi
Requires-Dist: mypy-boto3-glacier
Requires-Dist: python-dotenv
Requires-Dist: rich
Requires-Dist: typer
Requires-Dist: uvicorn
Description-Content-Type: text/markdown

# ThinIce - friendly client for Amazon Glacier 

## Install
~~~shell
pipx install thinice
~~~
or (recommended: in virtualenv):
~~~shell
pip3 install thinice
~~~

## Configuration
Write `~/.thinice/.env` config file, example:
~~~
AWS_ACCESS_KEY_ID = AK...
AWS_SECRET_ACCESS_KEY = FN...
AWS_REGION = eu-south-1
AWS_GLACIER_VAULT = mytest
~~~

Or you can supply this via options: `--key-id`, `--secret-key`, `--region` and `--vault`.

## Basic commands
### Inventory
First, you need to initialize local inventory:
~~~shell
# request inventory
thinice inventory

# watch when job complete (will take few hours)
thinice job

# now accept inventory with same command
thinice inventory

# now you can list files
thinice ls
~~~

### Upload
Thinice support multipart uploads and can upload very large files
~~~shell
# No description explicitly given, description will be myarchive.zip
thinice upload /path/to/myarchive.zip

# Upload with description
thinice upload /path/to/myarchive.zip "My archive from 01/02/2003"
~~~

### Download
~~~shell
# To download, we should *warm* file, transit it from cold to warm storage
thinice request myarchive.zip

# or by first part of ArchiveId
thinice request S39to

# watch it in list to become warm (will take few hours)
thinice ls

# and finally download it
# file with this description MyServer.tar.gz will be saved as MyServer.tar.gz (only if description is a filename)
thinice download myarchive.zip

# download file with ArchiveId starting with this characters
thinice download S39to myarchive.zip
~~~

### Delete
~~~shell
# delete archive with this ArchiveId
thinice delete S39to

# delete all archives with this ArchiveDescription
thinice delete myarchive.zip
~~~

### Other commands
~~~shell
# help
thinice -h
thinice download -h

# list vaults
thinice vaults

# list jobs
thinice jobs
~~~
