ci: improve storybook build (#1728)

This commit is contained in:
Himself65 2023-03-28 13:55:35 -05:00 committed by GitHub
parent e19c32aa5d
commit c87aad436f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 60 additions and 10 deletions

View File

@ -16,8 +16,25 @@ jobs:
uses: ./.github/actions/setup-node
- run: yarn lint --max-warnings=0
build-storybook:
name: Build Storybook
runs-on: ubuntu-latest
environment: development
steps:
- uses: actions/checkout@v3
- name: Setup Node.js
uses: ./.github/actions/setup-node
- run: yarn build:storybook
- name: Upload storybook artifact
uses: actions/upload-artifact@v3
with:
name: storybook
path: ./packages/component/storybook-static
if-no-files-found: error
build-frontend:
name: Build frontend
name: Build @affine/web
runs-on: ubuntu-latest
environment: production
@ -51,7 +68,9 @@ jobs:
- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: next-js
path: ./apps/web/out
if-no-files-found: error
publish-frontend:
name: Push frontend image
@ -75,8 +94,8 @@ jobs:
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: artifact
path: apps/web/out/
name: next-js
path: ./apps/web/out
- name: Log in to Docker Hub
uses: docker/login-action@v2
@ -111,7 +130,7 @@ jobs:
matrix:
shard: [1, 2, 3, 4]
environment: development
needs: build-frontend
needs: [build-frontend, build-storybook]
services:
octobase:
image: ghcr.io/toeverything/cloud-self-hosted:nightly-latest
@ -134,9 +153,15 @@ jobs:
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: artifact
name: next-js
path: ./apps/web/.next
- name: Download storybook artifact
uses: actions/download-artifact@v3
with:
name: storybook
path: ./packages/component/storybook-static
- name: Run playwright tests
run: yarn test --forbid-only --shard=${{ matrix.shard }}/${{ strategy.job-total }}
env:

View File

@ -17,8 +17,25 @@ jobs:
uses: ./.github/actions/setup-node
- run: yarn lint --max-warnings=0
build-storybook:
name: Build Storybook
runs-on: ubuntu-latest
environment: development
steps:
- uses: actions/checkout@v3
- name: Setup Node.js
uses: ./.github/actions/setup-node
- run: yarn build:storybook
- name: Upload storybook artifact
uses: actions/upload-artifact@v3
with:
name: storybook
path: ./packages/component/storybook-static
if-no-files-found: error
build:
name: Build on Pull Request
name: Build @affine/web
runs-on: ubuntu-latest
environment: development
@ -48,8 +65,9 @@ jobs:
- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: artifact
name: next-js
path: ./apps/web/.next
if-no-files-found: error
e2e-test:
name: E2E Test
@ -59,7 +77,7 @@ jobs:
matrix:
shard: [1, 2, 3, 4]
environment: development
needs: [build]
needs: [build, build-storybook]
services:
octobase:
image: ghcr.io/toeverything/cloud-self-hosted:nightly-latest
@ -79,9 +97,15 @@ jobs:
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: artifact
name: next-js
path: ./apps/web/.next
- name: Download storybook artifact
uses: actions/download-artifact@v3
with:
name: storybook
path: ./packages/component/storybook-static
- name: Run playwright tests
run: yarn test --forbid-only --shard=${{ matrix.shard }}/${{ strategy.job-total }}
env:

View File

@ -56,7 +56,8 @@ const config: PlaywrightTestConfig = {
},
},
{
command: 'yarn run build:storybook && yarn run start:storybook',
// Intentionally not building the storybook, reminds you to run it by yourself.
command: 'yarn run start:storybook',
port: 6006,
timeout: 120 * 1000,
reuseExistingServer: !process.env.CI,