Skip to content

Instantly share code, notes, and snippets.

@bkawk
Created December 24, 2018 04:49
Show Gist options
  • Save bkawk/efc4ea888f05ba7ddc6b8dfd03dcdf2d to your computer and use it in GitHub Desktop.
Save bkawk/efc4ea888f05ba7ddc6b8dfd03dcdf2d to your computer and use it in GitHub Desktop.
Deploy branches to different buckets
language: node_js
node_js:
- '10'
dist: trusty
sudo: required
addons:
firefox: latest
chrome: stable
cache:
directories:
- node_modules
install:
- npm install
before_script:
- npm run lint
script:
- xvfb-run npm run test
- xvfb-run npm run test:integration
deploy:
# Live Deploy
- provider: s3
access_key_id: $AWS_ACCESS_KEY_ID
secret_access_key: $AWS_SECRET_ACCESS_KEY
bucket: $S3_BUCKET_NAME
skip_cleanup: true
local_dir: build/es6-bundled
on:
branch: master
# Staging Deploy
- provider: s3
access_key_id: $AWS_ACCESS_KEY_ID
secret_access_key: $AWS_SECRET_ACCESS_KEY
bucket: $S3_STAGING_BUCKET_NAME
skip_cleanup: true
local_dir: build/es6-bundle
on:
branch: staging
# Development Deploy
- provider: s3
access_key_id: $AWS_ACCESS_KEY_ID
secret_access_key: $AWS_SECRET_ACCESS_KEY
bucket: $S3_DEVELOPMENT_BUCKET_NAME
skip_cleanup: true
local_dir: build/es6-bundle
on:
branch: development
after_deploy:
- test $TRAVIS_BRANCH = "master" && travis-ci-cloudfront-invalidation -a $AWS_ACCESS_KEY_ID -s $AWS_SECRET_ACCESS_KEY -c $CLOUDFRONT_DISTRIBUTION_ID -i '/*' -b $TRAVIS_BRANCH -p $TRAVIS_PULL_REQUEST -o 'master'
- test $TRAVIS_BRANCH = "staging" && travis-ci-cloudfront-invalidation -a $AWS_ACCESS_KEY_ID -s $AWS_SECRET_ACCESS_KEY -c $CLOUDFRONT_STAGING_DISTRIBUTION_ID -i '/*' -b $TRAVIS_BRANCH -p $TRAVIS_PULL_REQUEST -o 'master'
- test $TRAVIS_BRANCH = "development" && travis-ci-cloudfront-invalidation -a $AWS_ACCESS_KEY_ID -s $AWS_SECRET_ACCESS_KEY -c $CLOUDFRONT_DEVELOPMENT_DISTRIBUTION_ID -i '/*' -b $TRAVIS_BRANCH -p $TRAVIS_PULL_REQUEST -o 'master'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment