This repository has been archived by the owner on Jul 24, 2023. It is now read-only.
Merge branch 'hotfix' #23
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Web Deploy | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
# - dev | |
paths: | |
- ".github/workflows/web.yml" | |
- "Dockerfile.web" | |
- "apps/web/**" | |
- "!apps/web/package.json" | |
- "!apps/web/CHANGELOG.md" | |
pull_request: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
lint: | |
name: ⬣ ESLint | |
runs-on: ubuntu-latest | |
steps: | |
- name: ⬇️ Checkout repo | |
uses: actions/checkout@v3 | |
- name: ⎔ Setup node | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 18 | |
- name: 📥 Download deps | |
uses: bahmutov/npm-install@v1 | |
- name: 🔬 Lint | |
run: npm run lint | |
# typecheck: | |
# name: ʦ TypeScript | |
# runs-on: ubuntu-latest | |
# steps: | |
# - name: ⬇️ Checkout repo | |
# uses: actions/checkout@v3 | |
# - name: ⎔ Setup node | |
# uses: actions/setup-node@v3 | |
# with: | |
# node-version: 18 | |
# - name: 📥 Download deps | |
# uses: bahmutov/npm-install@v1 | |
# - name: 🔎 Type check | |
# run: npm run typecheck --if-present | |
deploy: | |
name: 🚀 Web Deploy | |
runs-on: ubuntu-latest | |
needs: [lint] | |
if: ${{ (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/dev') && github.event_name == 'push' }} | |
steps: | |
- name: ⬇️ Checkout repo | |
uses: actions/checkout@v3 | |
- name: 👀 Read app name | |
uses: SebRollen/[email protected] | |
id: app_name | |
with: | |
file: "fly.web.toml" | |
field: "app" | |
- name: 🚀 Web Deploy Staging | |
if: ${{ github.ref == 'refs/heads/dev' }} | |
uses: superfly/[email protected] | |
with: | |
args: deploy --remote-only --build-arg COMMIT_SHA=${{ github.sha }} --app ${{ steps.app_name.outputs.value }}-staging --dockerfile=Dockerfile.web --build-arg SENTRY_AUTH_TOKEN=${{secrets.SENTRY_AUTH_TOKEN}} --build-arg SENTRY_ORG=${{secrets.SENTRY_ORG}} --build-arg SENTRY_PROJECT=${{secrets.SENTRY_PROJECT}} --build-arg AWS_ACCESS_KEY_ID=${{secrets.AWS_ACCESS_KEY_ID}} --build-arg AWS_SECRET_ACCESS_KEY=${{secrets.AWS_SECRET_ACCESS_KEY}} --build-arg AWS_S3_BUCKET_REGION=${{secrets.AWS_S3_BUCKET_REGION}} --build-arg AWS_S3_BUCKET=${{secrets.AWS_S3_BUCKET}} --build-arg CLOUDFRONT=${{secrets.CLOUDFRONT}}" | |
env: | |
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }} | |
- name: 🚀 Web Deploy Production | |
if: ${{ github.ref == 'refs/heads/main' }} | |
uses: superfly/[email protected] | |
with: | |
args: deploy --remote-only --build-arg COMMIT_SHA=${{ github.sha }} --app ${{ steps.app_name.outputs.value }} --dockerfile=Dockerfile.web --build-arg SENTRY_AUTH_TOKEN=${{secrets.SENTRY_AUTH_TOKEN}} --build-arg SENTRY_ORG=${{secrets.SENTRY_ORG}} --build-arg SENTRY_PROJECT=${{secrets.SENTRY_PROJECT}} --build-arg AWS_ACCESS_KEY_ID=${{secrets.AWS_ACCESS_KEY_ID}} --build-arg AWS_SECRET_ACCESS_KEY=${{secrets.AWS_SECRET_ACCESS_KEY}} --build-arg AWS_S3_BUCKET_REGION=${{secrets.AWS_S3_BUCKET_REGION}} --build-arg AWS_S3_BUCKET=${{secrets.AWS_S3_BUCKET}} --build-arg CLOUDFRONT=${{secrets.CLOUDFRONT}}" | |
env: | |
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }} |