mirror of
https://github.com/penpot/penpot.git
synced 2025-12-11 22:14:05 +01:00
✨ Make automatic workflows not dependent on yarn
This commit is contained in:
61
.github/workflows/tests.yml
vendored
61
.github/workflows/tests.yml
vendored
@@ -20,7 +20,7 @@ concurrency:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
lint:
|
lint:
|
||||||
name: "Code Linter"
|
name: "Linter"
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
container: penpotapp/devenv:latest
|
container: penpotapp/devenv:latest
|
||||||
|
|
||||||
@@ -30,10 +30,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Check clojure code format
|
- name: Check clojure code format
|
||||||
run: |
|
run: |
|
||||||
corepack enable;
|
./scripts/lint
|
||||||
corepack install;
|
|
||||||
yarn install
|
|
||||||
yarn run fmt:clj:check
|
|
||||||
|
|
||||||
test-common:
|
test-common:
|
||||||
name: "Common Tests"
|
name: "Common Tests"
|
||||||
@@ -52,10 +49,7 @@ jobs:
|
|||||||
- name: Run tests on NODE
|
- name: Run tests on NODE
|
||||||
working-directory: ./common
|
working-directory: ./common
|
||||||
run: |
|
run: |
|
||||||
corepack enable;
|
./scripts/test
|
||||||
corepack install;
|
|
||||||
yarn install;
|
|
||||||
yarn run test;
|
|
||||||
|
|
||||||
test-frontend:
|
test-frontend:
|
||||||
name: "Frontend Tests"
|
name: "Frontend Tests"
|
||||||
@@ -69,25 +63,12 @@ jobs:
|
|||||||
- name: Unit Tests
|
- name: Unit Tests
|
||||||
working-directory: ./frontend
|
working-directory: ./frontend
|
||||||
run: |
|
run: |
|
||||||
corepack enable;
|
./scripts/test
|
||||||
corepack install;
|
|
||||||
yarn install;
|
|
||||||
yarn run test;
|
|
||||||
|
|
||||||
- name: Component Tests
|
- name: Component Tests
|
||||||
working-directory: ./frontend
|
working-directory: ./frontend
|
||||||
run: |
|
run: |
|
||||||
yarn run playwright install chromium --with-deps;
|
./scripts/test-components
|
||||||
yarn run build:storybook
|
|
||||||
|
|
||||||
npx concurrently -k -s first -n "SB,TEST" -c "magenta,blue" \
|
|
||||||
"npx http-server storybook-static --port 6006 --silent" \
|
|
||||||
"npx wait-on tcp:6006 && yarn test:storybook"
|
|
||||||
|
|
||||||
- name: Check SCSS Format
|
|
||||||
working-directory: ./frontend
|
|
||||||
run: |
|
|
||||||
yarn run lint:scss;
|
|
||||||
|
|
||||||
test-render-wasm:
|
test-render-wasm:
|
||||||
name: "Render WASM Tests"
|
name: "Render WASM Tests"
|
||||||
@@ -164,11 +145,7 @@ jobs:
|
|||||||
- name: Run tests
|
- name: Run tests
|
||||||
working-directory: ./library
|
working-directory: ./library
|
||||||
run: |
|
run: |
|
||||||
corepack enable;
|
./scripts/test
|
||||||
corepack install;
|
|
||||||
yarn install;
|
|
||||||
yarn run build:bundle;
|
|
||||||
yarn run test;
|
|
||||||
|
|
||||||
build-integration:
|
build-integration:
|
||||||
name: "Build Integration Bundle"
|
name: "Build Integration Bundle"
|
||||||
@@ -219,11 +196,7 @@ jobs:
|
|||||||
- name: Run Tests
|
- name: Run Tests
|
||||||
working-directory: ./frontend
|
working-directory: ./frontend
|
||||||
run: |
|
run: |
|
||||||
corepack enable;
|
./scripts/test-e2e --shard="1/4";
|
||||||
corepack install;
|
|
||||||
yarn install;
|
|
||||||
yarn run playwright install chromium --with-deps;
|
|
||||||
yarn run test:e2e -x --workers=2 --reporter=list --shard="1/4";
|
|
||||||
|
|
||||||
- name: Upload test result
|
- name: Upload test result
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
@@ -253,11 +226,7 @@ jobs:
|
|||||||
- name: Run Tests
|
- name: Run Tests
|
||||||
working-directory: ./frontend
|
working-directory: ./frontend
|
||||||
run: |
|
run: |
|
||||||
corepack enable;
|
./scripts/test-e2e --shard="2/4";
|
||||||
corepack install;
|
|
||||||
yarn install;
|
|
||||||
yarn run playwright install chromium --with-deps;
|
|
||||||
yarn run test:e2e -x --workers=2 --reporter=list --shard "2/4";
|
|
||||||
|
|
||||||
- name: Upload test result
|
- name: Upload test result
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
@@ -287,11 +256,7 @@ jobs:
|
|||||||
- name: Run Tests
|
- name: Run Tests
|
||||||
working-directory: ./frontend
|
working-directory: ./frontend
|
||||||
run: |
|
run: |
|
||||||
corepack enable;
|
./scripts/test-e2e --shard="3/4";
|
||||||
corepack install;
|
|
||||||
yarn install;
|
|
||||||
yarn run playwright install chromium --with-deps;
|
|
||||||
yarn run test:e2e -x --workers=2 --reporter=list --shard "3/4";
|
|
||||||
|
|
||||||
- name: Upload test result
|
- name: Upload test result
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
@@ -303,7 +268,7 @@ jobs:
|
|||||||
retention-days: 3
|
retention-days: 3
|
||||||
|
|
||||||
test-integration-4:
|
test-integration-4:
|
||||||
name: "Integration Tests 3/4"
|
name: "Integration Tests 4/4"
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
container: penpotapp/devenv:latest
|
container: penpotapp/devenv:latest
|
||||||
needs: build-integration
|
needs: build-integration
|
||||||
@@ -321,11 +286,7 @@ jobs:
|
|||||||
- name: Run Tests
|
- name: Run Tests
|
||||||
working-directory: ./frontend
|
working-directory: ./frontend
|
||||||
run: |
|
run: |
|
||||||
corepack enable;
|
./scripts/test-e2e --shard="4/4";
|
||||||
corepack install;
|
|
||||||
yarn install;
|
|
||||||
yarn run playwright install chromium --with-deps;
|
|
||||||
yarn run test:e2e -x --workers=2 --reporter=list --shard "4/4";
|
|
||||||
|
|
||||||
- name: Upload test result
|
- name: Upload test result
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
|
|||||||
7
common/scripts/test
Executable file
7
common/scripts/test
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
corepack enable;
|
||||||
|
corepack install;
|
||||||
|
yarn install;
|
||||||
|
yarn run test;
|
||||||
9
frontend/scripts/test
Executable file
9
frontend/scripts/test
Executable file
@@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
corepack enable;
|
||||||
|
corepack install;
|
||||||
|
yarn install;
|
||||||
|
|
||||||
|
yarn run lint:scss;
|
||||||
|
yarn run test;
|
||||||
13
frontend/scripts/test-components
Executable file
13
frontend/scripts/test-components
Executable file
@@ -0,0 +1,13 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
corepack enable;
|
||||||
|
corepack install;
|
||||||
|
yarn install;
|
||||||
|
|
||||||
|
yarn run playwright install chromium --with-deps;
|
||||||
|
yarn run build:storybook
|
||||||
|
|
||||||
|
exec npx concurrently -k -s first -n "SB,TEST" -c "magenta,blue" \
|
||||||
|
"npx http-server storybook-static --port 6006 --silent" \
|
||||||
|
"npx wait-on tcp:6006 && yarn test:storybook"
|
||||||
8
frontend/scripts/test-e2e
Executable file
8
frontend/scripts/test-e2e
Executable file
@@ -0,0 +1,8 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
corepack enable;
|
||||||
|
corepack install;
|
||||||
|
yarn install;
|
||||||
|
yarn run playwright install chromium --with-deps;
|
||||||
|
yarn run test:e2e -x --workers=2 --reporter=list "$@";
|
||||||
9
library/scripts/test
Executable file
9
library/scripts/test
Executable file
@@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
corepack enable;
|
||||||
|
corepack install;
|
||||||
|
yarn install;
|
||||||
|
|
||||||
|
yarn run build:bundle;
|
||||||
|
yarn run test;
|
||||||
10
package.json
10
package.json
@@ -11,14 +11,8 @@
|
|||||||
},
|
},
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"fmt:clj:check": "cljfmt check --parallel=true common/src/ common/test/ frontend/src/ frontend/test/ backend/src/ backend/test/ exporter/src/ library/src",
|
"lint": "./scripts/lint",
|
||||||
"fmt:clj": "cljfmt fix --parallel=true common/src/ common/test/ frontend/src/ frontend/test/ backend/src/ backend/test/ exporter/src/ library/src",
|
"fmt": "./scripts/fmt"
|
||||||
"lint:clj:common": "clj-kondo --parallel=true --lint common/src",
|
|
||||||
"lint:clj:frontend": "clj-kondo --parallel=true --lint frontend/src",
|
|
||||||
"lint:clj:backend": "clj-kondo --parallel=true --lint backend/src",
|
|
||||||
"lint:clj:exporter": "clj-kondo --parallel=true --lint exporter/src",
|
|
||||||
"lint:clj:library": "clj-kondo --parallel=true --lint library/src",
|
|
||||||
"lint:clj": "yarn run lint:clj:common && yarn run lint:clj:frontend && yarn run lint:clj:backend && yarn run lint:clj:exporter && yarn run lint:clj:library"
|
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/node": "^20.12.7"
|
"@types/node": "^20.12.7"
|
||||||
|
|||||||
13
scripts/fmt
Executable file
13
scripts/fmt
Executable file
@@ -0,0 +1,13 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
cljfmt --parallel=true \
|
||||||
|
common/src/ \
|
||||||
|
common/test/ \
|
||||||
|
frontend/src/ \
|
||||||
|
frontend/test/ \
|
||||||
|
backend/src/ \
|
||||||
|
backend/test/ \
|
||||||
|
exporter/src/ \
|
||||||
|
library/src;
|
||||||
19
scripts/lint
Executable file
19
scripts/lint
Executable file
@@ -0,0 +1,19 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
cljfmt check --parallel=true \
|
||||||
|
common/src/ \
|
||||||
|
common/test/ \
|
||||||
|
frontend/src/ \
|
||||||
|
frontend/test/ \
|
||||||
|
backend/src/ \
|
||||||
|
backend/test/ \
|
||||||
|
exporter/src/ \
|
||||||
|
library/src;
|
||||||
|
|
||||||
|
clj-kondo --parallel=true --lint common/src;
|
||||||
|
clj-kondo --parallel=true --lint frontend/src;
|
||||||
|
clj-kondo --parallel=true --lint backend/src;
|
||||||
|
clj-kondo --parallel=true --lint exporter/src/;
|
||||||
|
clj-kondo --parallel=true --lint library/src;
|
||||||
Reference in New Issue
Block a user