* Run `bin/update_node 20.18.2 22.15.0` * Remove expects on `fetchMock.callHistory.done()` to fix tests: are they necessary? * Set node version to `22.x` in linked-url-proxy * Increase test timeout to 30s in `github-sync`, Add waiting steps * Define `navigator.onLine` in tests setup GitOrigin-RevId: 75eb556e9f51b665e57497a0879b6915d14069ce
71 lines
1.8 KiB
YAML
71 lines
1.8 KiB
YAML
steps:
|
|
- id: npm_ci
|
|
name: "node:22.15.0"
|
|
entrypoint: /bin/bash
|
|
args:
|
|
- '-c'
|
|
- 'bin/npm_install_subset . libraries/* services/web'
|
|
|
|
- id: build-storybook
|
|
name: 'node:22.15.0'
|
|
env:
|
|
- 'BRANCH_NAME=$BRANCH_NAME'
|
|
- 'BUILD_ID=$BUILD_ID'
|
|
script: |
|
|
#!/bin/bash
|
|
set -e
|
|
make -C services/web BRANCH_NAME="${BRANCH_NAME:-$BUILD_ID}" build_storybook
|
|
|
|
- id: deploy-storybook
|
|
name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
|
|
env:
|
|
- 'BRANCH_NAME=$BRANCH_NAME'
|
|
- 'BUILD_ID=$BUILD_ID'
|
|
- 'BUCKET=gs://overleaf-dev-storybook'
|
|
dir: services/web
|
|
script: |
|
|
#!/bin/bash
|
|
: ${BRANCH_NAME:=$BUILD_ID}
|
|
[[ "$BRANCH_NAME" ]] || {
|
|
echo 1>&2 "ERROR: BRANCH_NAME not set"
|
|
exit 2
|
|
}
|
|
gsutil -m copy -r storybook-output/* "${BUCKET}/"
|
|
waitFor:
|
|
- build-storybook
|
|
|
|
- id: read-storybook-bucket
|
|
name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
|
|
dir: services/web
|
|
env:
|
|
- 'BUCKET=gs://overleaf-dev-storybook'
|
|
script: |
|
|
#!/bin/bash
|
|
set -ex
|
|
gsutil ls "${BUCKET}/" \
|
|
| sed -E "s@^${BUCKET}/([^/]+)/@\1@" \
|
|
> storybook-bucket-listing.txt
|
|
waitFor:
|
|
- deploy-storybook
|
|
|
|
- id: create-storybook-index
|
|
name: 'node:22.15.0'
|
|
dir: services/web
|
|
env:
|
|
- 'BRANCH_NAME=$BRANCH_NAME'
|
|
script: |
|
|
#!/bin/bash
|
|
set -ex
|
|
LIST=$(tr '\n' , < storybook-bucket-listing.txt)
|
|
m4 -DLIST="$LIST" -DBRANCH_NAME="$BRANCH_NAME" cloudbuild-storybook-index.html.m4 > storybook-index.html
|
|
waitFor:
|
|
- read-storybook-bucket
|
|
|
|
- id: update-storybook-index
|
|
name: 'gcr.io/google.com/cloudsdktool/cloud-sdk'
|
|
dir: services/web
|
|
entrypoint: 'gsutil'
|
|
args: [ "copy", "storybook-index.html", "gs://overleaf-dev-storybook/index.html" ]
|
|
waitFor:
|
|
- create-storybook-index
|