/chef-s3cmd

chef cookbook to install s3cmd from master branch

Primary LanguageRuby

s3cmd Cookbook

This chef cookbook installs the latest s3cmd from the master branch at github. It downloads the tarball of master: https://github.com/s3tools/s3cmd/archive/master.tar.gz

The latest version of S3CMD from github seems to work better than the older versions included in Ubuntu and CentOS.

Be aware this is an alpha version and not bug free, don't rely on this version for production servers, altho I use it in production servers just fine.

https://github.com/fred/chef-s3cmd

Requirements

This cookbook will install the following packages:

  • python
  • python-setuptools
  • python-distutils-extra

Attributes

TODO: List you cookbook attributes here.

e.g.

s3cmd::default

Key Type Description Default
['s3cmd']['url'] String Tarball URL to download s3cmd https://github.com/s3tools/s3cmd/archive/master.tar.gz
['s3cmd']['gpg_passphrase'] String GPG passphrase used to encrypt files before uploading some-top-secret-passphrase
['s3cmd']['encrypt'] Boolean Enable Encryption of files before uploading to S3 using gpg false
['s3cmd']['secret_key'] String AWS secret key --
['s3cmd']['access_key'] String AWS access key --
['s3cmd']['bucket_location'] String Datacentre to create bucket in. As of now the datacenters are: US (default), EU, ap-northeast-1, ap-southeast-1, sa-east-1, us-west-1 and us-west-2 US
['s3cmd']['user'] String User to install .s3cfg config file ubuntu
['s3cmd']['config_dir'] String Directory where the .s3cfg config file will be installed. This must be explicitly set if the user account is created by chef. ['s3cmd']['user']'s home directory

Usage

s3cmd::default

TODO: Write usage instructions for each cookbook.

e.g. Just include s3cmd in your node's run_list and configure it

{
  "s3cmd": {
    "user": "fred",
    "encrypt": true,
    "gpg_passphrase": "some-top-secret-passphrase",
    "secret_key": "your-secret-key",
    "access_key": "your-access-key",
    "bucket_location": "EU"
  },
  "run_list": [
    "recipe[s3cmd]"
  ]
}

Contributing

  1. Fork the repository on Github
  2. Create a named feature branch (like add_component_x)
  3. Write you change
  4. Write tests for your change (if applicable)
  5. Run the tests, ensuring they all pass
  6. Submit a Pull Request using Github

License and Authors

Authors: Frederico Araujo (github.com/fred)

Contributors: Steven Lehrburger (github.com/lehrblogger) Cristóbal Castillo (github.com/c-castillo)