Restructure pipelines and badges
- Seperate test pipeline into E2E, integration and unit test pipelines. - Improve documenetation for pipelines (ci-cd.md). - Introduce naming convention for worklow files and names. - Center badges with multiple files on README file.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
name: Quality checks
|
||||
name: quality-checks
|
||||
|
||||
on: [ push, pull_request ]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
name: Security checks
|
||||
name: security-checks
|
||||
|
||||
on:
|
||||
push:
|
||||
@@ -1,4 +1,4 @@
|
||||
name: Deploy desktop
|
||||
name: desktop-release
|
||||
|
||||
on:
|
||||
release:
|
||||
@@ -1,4 +1,4 @@
|
||||
name: Bump & release
|
||||
name: git-release
|
||||
|
||||
on:
|
||||
push: # Ensure a new release is created for each new tag
|
||||
@@ -1,4 +1,4 @@
|
||||
name: Deploy site
|
||||
name: site-release
|
||||
|
||||
on:
|
||||
release:
|
||||
28
.github/workflows/tests.e2e.yaml
vendored
Normal file
28
.github/workflows/tests.e2e.yaml
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
name: e2e-tests
|
||||
|
||||
on:
|
||||
push:
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
run-tests:
|
||||
strategy:
|
||||
matrix:
|
||||
os: [macos, ubuntu, windows]
|
||||
fail-fast: false # So it still runs on other OSes if one of them fails
|
||||
runs-on: ${{ matrix.os }}-latest
|
||||
steps:
|
||||
-
|
||||
name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
-
|
||||
name: Setup node
|
||||
uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: 15.x
|
||||
-
|
||||
name: Install dependencies
|
||||
run: npm ci
|
||||
-
|
||||
name: Run e2e tests
|
||||
run: npm run test:e2e -- --headless
|
||||
@@ -1,9 +1,9 @@
|
||||
name: Test
|
||||
name: integration-tests
|
||||
|
||||
on:
|
||||
push:
|
||||
pull_request:
|
||||
schedule: # for integration tests
|
||||
schedule: # To get notified about problems from third party dependencies
|
||||
- cron: '0 0 * * 0' # at 00:00 on every Sunday
|
||||
|
||||
jobs:
|
||||
@@ -25,13 +25,6 @@ jobs:
|
||||
-
|
||||
name: Install dependencies
|
||||
run: npm ci
|
||||
-
|
||||
name: Run unit tests
|
||||
run: npm run test:unit
|
||||
-
|
||||
name: Run integration tests
|
||||
run: npm run test:integration
|
||||
-
|
||||
name: Run e2e tests
|
||||
if: always() # Run even if previous step fail
|
||||
run: npm run test:e2e -- --headless
|
||||
28
.github/workflows/tests.unit.yaml
vendored
Normal file
28
.github/workflows/tests.unit.yaml
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
name: unit-tests
|
||||
|
||||
on:
|
||||
push:
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
run-tests:
|
||||
strategy:
|
||||
matrix:
|
||||
os: [macos, ubuntu, windows]
|
||||
fail-fast: false # So it still runs on other OSes if one of them fails
|
||||
runs-on: ${{ matrix.os }}-latest
|
||||
steps:
|
||||
-
|
||||
name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
-
|
||||
name: Setup node
|
||||
uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: 15.x
|
||||
-
|
||||
name: Install dependencies
|
||||
run: npm ci
|
||||
-
|
||||
name: Run units
|
||||
run: npm run test:unit
|
||||
Reference in New Issue
Block a user