Continuous Deployment from Github to S3 by TravisCI

Step by step:

1. Create an AWS account:

Allows connecting to the S3 bucket and invalidates the CloudFront distribution:

Note: Currently, AWS doesn’t support using IAM to control access to specific CloudFront resources.
http://stackoverflow.com/questions/29558655/restrict-access-to-a-particular-cloudfront-distribution-using-iam

2. TravisCI is enabled for this repository

and configured with these environment variables:
- `AWS_ACCESS_KEY_ID`
- `AWS_SECRET_ACCESS_KEY`
- `AWS_DEFAULT_REGION`
- `AWS_CLOUDFRONT_DISTRIBUTION_ID`: CouldFront Distribution ID will be invalidated after deployments
- `AWS_S3_BUCKET_NAME`

3. Configure your .travis.yaml

4. Run on pushes

P/S: In case you want to deploy to multiple directories to multiple S3 buckets, just use this configuration:

That’s all. Enjoy your continuous deployment ¯\_(ツ)_/¯