# Frontend Masters: AWS for Frontend Engineers You should have the following completed on your computer _before_ the workshop: - Install the [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/installing.html) - Have [Node.js](https://nodejs.org/en/) installed on your system. (Recommended: Use [nvm](https://github.com/creationix/nvm).) - Install `yarn` with `brew install yarn`. - Create an [AWS account](https://portal.aws.amazon.com/billing/signup#/start). (This will require a valid credit card.) - Create a [Travis CI](https://travis-ci.org/) account. (This should be as simple as logging in via GitHub). ## Repositories - [Noted](https://github.com/stevekinney/noted-base) ## S3 Bucket Policy This might be helpful at some point. ```json { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::YOUR_BUCKET_NAME_HERE/*" } ] } ``` ## Travis Configuration ```yml language: node_js node_js: - '8' cache: yarn: true directories: - node_modules script: - yarn test before_deploy: - yarn global add travis-ci-cloudfront-invalidation - yarn run build deploy: provider: s3 access_key_id: $AWS_ACCESS_KEY_ID secret_access_key: $AWS_SECRET_ACCESS_KEY bucket: $S3_BUCKET skip_cleanup: true local-dir: dist on: branch: master after_deploy: - travis-ci-cloudfront-invalidation -a $AWS_ACCESS_KEY_ID -s $AWS_SECRET_ACCESS_KEY -c $CLOUDFRONT_ID -i '/*' -b $TRAVIS_BRANCH -p $TRAVIS_PULL_REQUEST ```