We do not use reo.dev or linked in ads anymore so removing #5025
Workflow file for this run
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: UI Build | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: [main] | |
jobs: | |
setup: | |
name: Setup Node/NPM | |
runs-on: ubuntu-latest | |
steps: | |
- name: Stop previous | |
uses: styfle/[email protected] | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'npm' | |
cache-dependency-path: '**/package-lock.json' | |
registry-url: 'https://npm.pkg.github.com' | |
scope: '@estuary' | |
- name: Get Deps | |
run: npm ci | |
env: | |
NODE_AUTH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
quality: | |
name: Check Quality | |
needs: setup | |
runs-on: ubuntu-latest | |
steps: | |
- name: Stop previous | |
uses: styfle/[email protected] | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'npm' | |
cache-dependency-path: '**/package-lock.json' | |
- name: Get Deps | |
run: npm ci | |
- name: Licenses | |
run: npm run licenses | |
- name: Typecheck | |
run: npm run typecheck | |
- name: Linting | |
run: npm run lint | |
- name: Prettier | |
run: npm run format | |
- name: Test | |
run: npm run test | |
# Deployment steps undertaken on a merge to `main`. | |
deploy: | |
name: Deploy | |
env: | |
NODE_OPTIONS: '--max_old_space_size=4096' | |
needs: quality | |
runs-on: ubuntu-latest | |
if: ${{ github.ref == 'refs/heads/main' }} | |
# Ask github to inject an ID token with sufficient claims | |
# for GCP workload identity federation. | |
permissions: | |
contents: read | |
id-token: write | |
steps: | |
- name: Stop previous | |
uses: styfle/[email protected] | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'npm' | |
cache-dependency-path: '**/package-lock.json' | |
- name: Get Deps | |
run: npm ci | |
- name: Create a release build | |
run: npm run build | |
# This was generated via `setup-workload-ident.sh` in the ops repo. | |
- name: Set up Google Cloud SDK | |
uses: google-github-actions/auth@v2 | |
with: | |
service_account: [email protected] | |
workload_identity_provider: projects/1084703453822/locations/global/workloadIdentityPools/github-actions/providers/github-actions-provider | |
# Based on https://github.com/google-github-actions/example-workflows/blob/main/workflows/deploy-cloudrun/cloudrun-source.yml | |
- name: Update Dashboard Deployment | |
uses: 'google-github-actions/deploy-cloudrun@v2' | |
with: | |
service: 'dashboard' | |
project_id: 'estuary-control' | |
region: 'us-central1' | |
source: './build/' |