This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

s3same (“sesame”, like “open sesame”) creates unique-per-repo AWS credentials for Travis CI artifact uploading to S3 and encrypts those credentials with the repo’s public key.


Running the command

sudo pip install s3same

will install the latest stable release of s3same as a command in /usr/local/bin.


$ s3same --help
Usage: s3same [OPTIONS] REPO

  --pro               Use Travis CI Pro
  --github TEXT       GitHub token
  --owner TEXT        GitHub owner
  --s3-bucket TEXT    S3 bucket for artifacts
  --aws-region TEXT   AWS region
  --aws-key TEXT      AWS key
  --aws-secret TEXT   AWS secret
  --aws-profile TEXT  AWS profile
  --nuke              Nuke the entire s3same setup on IAM
  --help              Show this message and exit.

Let’s assume you’ve got your AWS credentials in `~/.aws/credentials <>`__. Go to your GitHub settings and create a personal access token for s3same (the token must have the repo permission). Create ~/.s3same with:

GITHUB_TOKEN=put your token here
S3_BUCKET=the bucket to which artifacts will be uploaded
AWS_PROFILE=some profile
AWS_REGION=your AWS region

If your AWS credentials are in the default profile, you can omit the AWS_PROFILE line.

With all the credentials in place, running

$ s3same some-repo-name --owner some-user --pro

will create an AWS IAM user unique to the repo (s3same_travis__some-user__some-repo-name), add that user to the s3same_travis AWS IAM group (creating the group if it doesn’t exist) to give it the necessary permissions (defined by the s3same_travis policy, which will be created if it doesn’t exist), generate an AWS key and secret for that user, use the public key for the given repo on Travis CI to encrypt the key and secret, and print out the YAML snippet to use for artifact uploading credentials.


Several configuration parameters can be specified by the environment, in the ~/.s3same file, or on the command line. The name/syntax for environment variables and within the ~/.s3same file are the same. Anything in the ~/.s3same file overrides the corresponding environment variable and anything passed as a command-line parameter overrides the environment variables and the ~/.s3same file. Setting an AWS key/secret pair overrides specifying an AWS configuration profile.

Parameter Variable Name Command-Line
GitHub Token GITHUB_TOKEN --github
GitHub Owner GITHUB_OWNER --owner
S3 Bucket S3_BUCKET --s3-bucket
AWS Region AWS_REGION --aws-region
AWS Secret AWS_SECRET_ACCESS_KEY --aws-secret
AWS Profile AWS_PROFILE --aws-profile
Release History

Release History


This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
s3same-0.1-py2.py3-none-any.whl (8.6 kB) Copy SHA256 Checksum SHA256 py2.py3 Wheel Mar 4, 2016
s3same-0.1.tar.gz (6.7 kB) Copy SHA256 Checksum SHA256 Source Mar 4, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting