Add 2FA support to reactivation flow #134
This file contains hidden or 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: Lint | |
| on: | |
| pull_request: | |
| push: | |
| branches: | |
| - main | |
| concurrency: | |
| group: "${{ github.workflow }}-${{ github.head_ref || github.ref }}" | |
| cancel-in-progress: true | |
| jobs: | |
| linting: | |
| name: Run linters | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out Git repository | |
| uses: actions/checkout@v4 | |
| - name: Verify Node version pins match .nvmrc | |
| run: | | |
| set -euo pipefail | |
| expected=$(tr -d '[:space:]' < .nvmrc) | |
| rc=0 | |
| check() { | |
| if [ "$2" != "$expected" ]; then | |
| echo "::error file=$1::Node version mismatch: $1 pins '$2' but .nvmrc is '$expected'" | |
| rc=1 | |
| fi | |
| } | |
| # FROM node:X.Y.Z — service runtime images | |
| for f in Dockerfile.bskylink Dockerfile.bskyogcard; do | |
| v=$(grep -oE 'FROM node:[0-9]+\.[0-9]+\.[0-9]+' "$f" | grep -oE '[0-9]+\.[0-9]+\.[0-9]+' | sort -u) | |
| check "$f" "$v" | |
| done | |
| # ENV NODE_VERSION=X.Y.Z — Go images that nvm-install Node for the JS build stage | |
| for f in Dockerfile Dockerfile.embedr; do | |
| v=$(grep -oE 'NODE_VERSION=[0-9]+\.[0-9]+\.[0-9]+' "$f" | grep -oE '[0-9]+\.[0-9]+\.[0-9]+' | sort -u) | |
| check "$f" "$v" | |
| done | |
| # eas.json "node": "X.Y.Z" | |
| v=$(grep -oE '"node":[[:space:]]*"[0-9]+\.[0-9]+\.[0-9]+"' eas.json | grep -oE '[0-9]+\.[0-9]+\.[0-9]+' | sort -u) | |
| check "eas.json" "$v" | |
| exit $rc | |
| - name: Install node | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version-file: .nvmrc | |
| cache: yarn | |
| - name: Yarn install | |
| uses: Wandalen/wretry.action@master | |
| with: | |
| command: yarn --frozen-lockfile | |
| attempt_limit: 3 | |
| attempt_delay: 2000 | |
| - name: Lint check | |
| run: yarn lint | |
| - name: Lint lockfile | |
| run: yarn lockfile-lint | |
| - name: Prettier check | |
| run: yarn prettier --check . | |
| - name: Check & compile i18n | |
| run: yarn intl:build | |
| - name: Type check | |
| run: yarn typecheck | |
| testing: | |
| name: Run tests | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out Git repository | |
| uses: actions/checkout@v4 | |
| - name: Install node | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version-file: .nvmrc | |
| cache: yarn | |
| - name: Yarn install | |
| uses: Wandalen/wretry.action@master | |
| with: | |
| command: yarn --frozen-lockfile | |
| attempt_limit: 3 | |
| attempt_delay: 2000 | |
| - name: Check & compile i18n | |
| run: yarn intl:build | |
| - name: Run tests | |
| run: | | |
| NODE_ENV=test yarn test --forceExit |