Merge remote-tracking branch 'upstream/main' into HEAD #1
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 | |
pull_request: | |
jobs: | |
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: 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: Build Storybook | |
run: yarn nx storybook:pages:build --quiet twenty-front | |
- name: Run storybook tests | |
run: | | |
cd packages/twenty-front && npx concurrently -k -s first -n "SB,TEST" -c "magenta,blue" \ | |
"npx http-server storybook-static --silent --port 6006" \ | |
"yarn storybook:pages:coverage" | |
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: Build Storybook | |
run: yarn nx storybook:modules:build --quiet twenty-front | |
- name: Run storybook tests | |
run: | | |
cd packages/twenty-front && npx concurrently -k -s first -n "SB,TEST" -c "magenta,blue" \ | |
"npx http-server storybook-static --silent --port 6006" \ | |
"yarn storybook:modules:coverage" | |
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: Front / Run linter | |
run: yarn nx lint:ci twenty-front | |
- name: Front / Run Typescript Check | |
run: yarn nx tsc:ci twenty-front | |
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: yarn nx coverage twenty-front |