Skip to content

Instantly share code, notes, and snippets.

@WooodHead
Forked from hadynz/serverless-deploy.yml
Created December 29, 2020 15:12
Show Gist options
  • Save WooodHead/a6c704877d0f0d85a1cf390611834a41 to your computer and use it in GitHub Desktop.
Save WooodHead/a6c704877d0f0d85a1cf390611834a41 to your computer and use it in GitHub Desktop.
Serverless deploy with state management in S3
name: Continuous deploy
on:
push:
branches: [master]
jobs:
serverless-deploy:
runs-on: ubuntu-latest
env:
AWS_ACCESS_KEY_ID: ${{secrets.AWS_ACCESS_KEY_ID}}
AWS_SECRET_ACCESS_KEY: ${{secrets.AWS_SECRET_ACCESS_KEY}}
steps:
- uses: actions/checkout@v1
- uses: actions/setup-node@v1
with:
node-version: 12
- name: Install dependencies
run: npm ci
- name: Run tests
run: npm test
- name: Download `.serverless` state from S3
run: aws s3 sync s3://my-bucket/my-repo-name/env-name/.serverless .serverless --delete
- name: Deploy to AWS
run: npm run deploy
- name: Upload `.serverless` state to S3
run: aws s3 sync .serverless s3://my-bucket/my-repo-name/env-name/.serverless --delete
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment