Skip to content

Instantly share code, notes, and snippets.

@vindard
Last active April 15, 2021 03:19
Show Gist options
  • Save vindard/0a4b7c5edea6771d557213e85952ba93 to your computer and use it in GitHub Desktop.
Save vindard/0a4b7c5edea6771d557213e85952ba93 to your computer and use it in GitHub Desktop.
An account of my journey trying to upload a single file from a Raspberry Pi to AWS Glacier Deep Archive

My Glacier Deep Archive user story

to be shared with AWS support

What I want to do?

  • Save stuff to Glacier from a Raspberry Pi

My steps:

  1. It's a storage thing I think since it's called S3 Glacier, so I assume I start with awscli to get s3 access:

    • I try to install aarch64 awscli v2 to Pi and fail

    • Couldn't find a 'releases' link that would at least tell me which architectures were supported

    • Fall back to apt install which gives me v1

  2. Go to Services in the AWS UI and search Glacier, find Glacier vaults but no UI hints about Deep storage

  3. Go to Glacier Getting Started docs, search for 'Deep' and find nothing (ok this is getting frustrating)

  4. Go back to Services and search for 'Deep', find nothing

  5. Go to Google and search for 'Glacier Deep Archive', find nothing useful about using it (only descriptions on what it is)

  6. Eventually stumble upon a StackOverflow response after much searching and find out it's just a 'storage class' under S3

    • I think to myself, "why was this not ANYWHERE in the documentation in an easily findable way, and instead in a StackOverflow response"
  7. Eventually fumble my way to the aws s3 cp docs via googling 'awscli s3 storage class' and find an obscure flag option called DEEP_STORAGE with no descriptive text next to it (which is terrible for SEO and explains why I couldn't find it before)

  8. I try an aws s3 cp command with this and fail inexplicably with a curtailed list of supported storage classes which is immediately confusing

  9. Eventually stumble my way again to "maybe this is a v1/v2" thing which I absolutely would not have known if I hadn't tried to manually install first and then fall back to sudo apt install

  10. I find instructions for building for Pi and getting v2 installed again from Stack Overflow and NOT any official documentation (frustrating that an armv6 or armv7 binary wasn't available)

  11. I finally manage to build awscli, get it installed and upload a file to S3 with the Glacier Deep Archive storage class

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment