Skip to content

publish-prod

publish-prod #593

Workflow file for this run

name: S3 Deploy production
on:
repository_dispatch:
types: [publish-prod]
push:
branches:
- main
jobs:
run:
runs-on: ubuntu-latest
environment: production
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
API_URL: ${{ secrets.API_URL }}
GATSBY_NEWSLETTER_API: ${{ secrets.GATSBY_NEWSLETTER_API }}
steps:
- uses: actions/checkout@v3
with:
ref: main
#- name: Caching Gatsby
# id: gatsby-cache-build
# uses: actions/cache@v2
# with:
# path: |
# public
# .cache
# key: ${{ runner.os }}-gatsby-build-${{ github.run_id }}
# restore-keys: |
# ${{ runner.os }}-gatsby-build-
- name: Install dependencies
run: npm install --force --production-only --frozen-lockfile
- name: Build
run: npm run build
env:
GATSBY_EXPERIMENTAL_PAGE_BUILD_ON_DATA_CHANGES: true
CI: true
- name: Deploy
uses: reggionick/s3-deploy@v3
with:
folder: public
bucket: ${{ secrets.S3_BUCKET }}
bucket-region: ${{ secrets.S3_BUCKET_REGION }}
delete-removed: true
no-cache: false
private: true
- name: Purge cache
uses: nathanvaughn/actions-cloudflare-purge@master
if: success()
# preferred
with:
cf_zone: ${{ secrets.CLOUDFLARE_ZONE }}
cf_auth: ${{ secrets.CLOUDFLARE_AUTH_KEY }}