Fix Favorites issue #50
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: CI Front | |
on: | |
push: | |
branches: | |
- main | |
paths: | |
- 'package.json' | |
- 'packages/twenty-front/**' | |
- 'packages/twenty-ui/**' | |
pull_request: | |
paths: | |
- 'package.json' | |
- 'packages/twenty-front/**' | |
- 'packages/twenty-ui/**' | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
front-yarn-install: | |
runs-on: ci-8-cores | |
env: | |
REACT_APP_SERVER_BASE_URL: http://localhost:3000 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: "18" | |
- name: Cache front node modules | |
uses: actions/cache@v3 | |
with: | |
path: packages/twenty-front/node_modules | |
key: front-node_modules-${{hashFiles('yarn.lock')}} | |
restore-keys: front-node_modules- | |
- name: Cache root node modules | |
uses: actions/cache@v3 | |
with: | |
path: node_modules | |
key: root-node_modules-${{hashFiles('yarn.lock')}} | |
restore-keys: root-node_modules- | |
- name: Front / Install Dependencies | |
run: yarn | |
front-pages-sb-test: | |
needs: front-yarn-install | |
runs-on: ci-8-cores | |
env: | |
REACT_APP_SERVER_BASE_URL: http://localhost:3000 | |
steps: | |
- name: Cancel Previous Runs | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- uses: actions/checkout@v4 | |
- name: Setup Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: "18" | |
- name: Front / Write .env | |
run: | | |
cd packages/twenty-front | |
cp .env.example .env | |
- name: Cache front node modules | |
uses: actions/cache@v3 | |
with: | |
path: packages/twenty-front/node_modules | |
key: front-node_modules-${{hashFiles('yarn.lock')}} | |
restore-keys: front-node_modules- | |
- name: Cache root node modules | |
uses: actions/cache@v3 | |
with: | |
path: node_modules | |
key: root-node_modules-${{hashFiles('yarn.lock')}} | |
restore-keys: root-node_modules- | |
- name: Install Playwright | |
run: cd packages/twenty-front && npx playwright install | |
- name: Run storybook tests | |
run: | | |
npx concurrently -k -s first -n "SB,TEST" -c "magenta,blue" \ | |
"STORYBOOK_SCOPE=pages npx nx run twenty-front:storybook:static:ci" \ | |
"npx wait-on tcp:6006 && STORYBOOK_SCOPE=pages npx nx run twenty-front:storybook:test" | |
front-modules-sb-test: | |
needs: front-yarn-install | |
runs-on: ci-4-cores | |
env: | |
REACT_APP_SERVER_BASE_URL: http://localhost:3000 | |
steps: | |
- name: Cancel Previous Runs | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- uses: actions/checkout@v4 | |
- name: Setup Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: "18" | |
- name: Front / Write .env | |
run: | | |
cd packages/twenty-front | |
cp .env.example .env | |
- name: Cache front node modules | |
uses: actions/cache@v3 | |
with: | |
path: packages/twenty-front/node_modules | |
key: front-node_modules-${{hashFiles('yarn.lock')}} | |
restore-keys: front-node_modules- | |
- name: Cache root node modules | |
uses: actions/cache@v3 | |
with: | |
path: node_modules | |
key: root-node_modules-${{hashFiles('yarn.lock')}} | |
restore-keys: root-node_modules- | |
- name: Install Playwright | |
run: cd packages/twenty-front && npx playwright install | |
- name: Run storybook tests | |
run: | | |
npx concurrently -k -s first -n "SB,TEST" -c "magenta,blue" \ | |
"STORYBOOK_SCOPE=modules npx nx run twenty-front:storybook:static:ci" \ | |
"npx wait-on tcp:6006 && STORYBOOK_SCOPE=modules npx nx run twenty-front:storybook:test" | |
front-lint-tsc: | |
needs: front-yarn-install | |
runs-on: ubuntu-latest | |
env: | |
REACT_APP_SERVER_BASE_URL: http://localhost:3000 | |
steps: | |
- name: Cancel Previous Runs | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- uses: actions/checkout@v4 | |
- name: Setup Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: "18" | |
- name: Cache front node modules | |
uses: actions/cache@v3 | |
with: | |
path: packages/twenty-front/node_modules | |
key: front-node_modules-${{hashFiles('yarn.lock')}} | |
restore-keys: front-node_modules- | |
- name: Cache root node modules | |
uses: actions/cache@v3 | |
with: | |
path: node_modules | |
key: root-node_modules-${{hashFiles('yarn.lock')}} | |
restore-keys: root-node_modules- | |
- name: UI / Run linter | |
run: npx nx lint twenty-ui | |
- name: UI / Run Typescript Check | |
run: npx nx run twenty-ui:typecheck:ci | |
- name: Front / Run linter | |
run: npx nx run twenty-front:lint:ci | |
- name: Front / Run Typescript Check | |
run: npx nx run twenty-front:typecheck:ci | |
front-jest: | |
needs: front-yarn-install | |
runs-on: ubuntu-latest | |
env: | |
REACT_APP_SERVER_BASE_URL: http://localhost:3000 | |
steps: | |
- name: Cancel Previous Runs | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- uses: actions/checkout@v4 | |
- name: Setup Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: "18" | |
- name: Cache front node modules | |
uses: actions/cache@v3 | |
with: | |
path: packages/twenty-front/node_modules | |
key: front-node_modules-${{hashFiles('yarn.lock')}} | |
restore-keys: front-node_modules- | |
- name: Cache root node modules | |
uses: actions/cache@v3 | |
with: | |
path: node_modules | |
key: root-node_modules-${{hashFiles('yarn.lock')}} | |
restore-keys: root-node_modules- | |
- name: Front / Run jest | |
run: npx nx test twenty-front --configuration=ci |