Bump follow-redirects from 1.15.1 to 1.15.6 #29
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: Build and deploy | |
on: | |
push: | |
branches: | |
- '**' | |
env: | |
app_name: bidrag_admin_ui | |
bucket_name_dev: bidrag-ui-static-files-dev | |
bucket_name_prod: bidrag-ui-static-files-prod | |
IS_FEATURE: ${{ github.ref != 'refs/heads/release' && github.ref != 'refs/heads/main'}} | |
IS_DEV: ${{ github.ref == 'refs/heads/main' }} | |
NPM_TOKEN: ${{ secrets.READER_TOKEN }} | |
jobs: | |
build: | |
name: Build | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20.x | |
- uses: actions/cache@v3 | |
id: yarn-cache | |
with: | |
path: .yarn/cache | |
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-yarn- | |
- name: Set environment variables for frontend build | |
# Use environment variables from feature just for the build to go green. Using actual env variables in deploy step | |
run: cat env/.env.dev >> $GITHUB_ENV | |
- name: Install yarn dependencies | |
run: yarn --immutable | |
- name: Check lint | |
run: yarn lint | |
- name: Run tests and build | |
run: yarn test && yarn build | |
deploy-to-feature: | |
name: Deploy to feature | |
runs-on: ubuntu-latest | |
needs: build | |
if: github.ref != 'refs/heads/main' | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20.x | |
- uses: actions/cache@v3 | |
id: yarn-cache | |
with: | |
path: .yarn/cache | |
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-yarn- | |
- name: Install yarn dependencies | |
run: yarn --immutable | |
- name: Set environment variables for build | |
run: cat env/.env.dev >> $GITHUB_ENV | |
- name: Build app | |
run: yarn build | |
- name: Login GCP dev | |
uses: google-github-actions/auth@v1 | |
with: | |
credentials_json: ${{ secrets.GCP_SERVICEUSER_KEY_DEV }} | |
- name: Set up Cloud SDK | |
uses: google-github-actions/setup-gcloud@v1 | |
- name: Upload static files to feature GCP bucket | |
run: gsutil -m rsync -R -d dist gs://${{env.bucket_name_dev}}/${{env.app_name}}/feature/static | |
deploy-to-main: | |
name: Deploy to main | |
runs-on: ubuntu-latest | |
needs: build | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20.x | |
- uses: actions/cache@v3 | |
id: yarn-cache | |
with: | |
path: .yarn/cache | |
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-yarn- | |
- name: Install yarn dependencies | |
run: yarn --immutable | |
- name: Set environment variables for build | |
run: cat env/.env.main >> $GITHUB_ENV | |
- name: Build app | |
run: yarn build | |
- name: Login GCP dev | |
uses: google-github-actions/auth@v1 | |
with: | |
credentials_json: ${{ secrets.GCP_SERVICEUSER_KEY_DEV }} | |
- name: Set up Cloud SDK | |
uses: google-github-actions/setup-gcloud@v1 | |
- name: Upload static files to dev GCP bucket | |
run: gsutil -m rsync -R -d dist gs://${{env.bucket_name_dev}}/${{env.app_name}}/main/static | |
deploy-to-prod: | |
name: Deploy to prod | |
runs-on: ubuntu-latest | |
needs: build | |
if: github.ref == 'refs/heads/main' | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20.x | |
- uses: actions/cache@v3 | |
id: yarn-cache | |
with: | |
path: .yarn/cache | |
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-yarn- | |
- name: Install yarn dependencies | |
run: yarn --immutable | |
- name: Set environment variables for build | |
run: cat env/.env.prod >> $GITHUB_ENV | |
- name: Build app | |
run: yarn build | |
- name: Login GCP dev | |
uses: google-github-actions/auth@v1 | |
with: | |
credentials_json: ${{ secrets.GCP_SERVICEUSER_KEY_PROD }} | |
- name: Set up Cloud SDK | |
uses: google-github-actions/setup-gcloud@v1 | |
- name: Upload static files to prod GCP bucket | |
run: gsutil -m rsync -R -d dist gs://${{env.bucket_name_prod}}/${{env.app_name}}/static |