ci: added commit lint, build check, test and release (#31)

* ci: added commit lint, build check, test and release

* refactor: fix compilation errors

* ci: add checkout to the tests

* test: resolved issues with running tests

* chore: addressed PR comments

* chore: renamed package-name in release-please
This commit is contained in:
Vojtech Simetka
2021-03-31 15:33:09 +02:00
committed by GitHub
parent 325a59098e
commit 7fc1356212
15 changed files with 23036 additions and 166 deletions
+51
View File
@@ -0,0 +1,51 @@
name: Check
on:
push:
branches:
- 'master'
pull_request:
branches:
- '**'
jobs:
check:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [14.x]
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
## Try getting the node modules from cache, if failed npm ci
- uses: actions/cache@v2
id: cache-npm
with:
path: node_modules
key: ${{ runner.os }}-node-${{ matrix.node }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.OS }}-node-${{ matrix.node-version }}-${{ env.cache-name }}-
${{ runner.OS }}-node-${{ matrix.node-version }}-
- name: Install npm deps
if: steps.cache-npm.outputs.cache-hit != 'true'
run: npm ci
- name: Commit linting
uses: wagoid/commitlint-github-action@v2
# - name: Code linting
# run: npm run lint:check
# env:
# CI: true
- name: Build
run: npm run build
+20
View File
@@ -0,0 +1,20 @@
# On each new commit to master, create/update a PR with release
# automatically bumps version and creates changelog as per conventional commits
name: Release Github
on:
push:
branches:
- master
jobs:
release-please:
runs-on: ubuntu-latest
steps:
- uses: GoogleCloudPlatform/release-please-action@v2
id: release
with:
token: ${{ secrets.REPO_GHA_PAT }}
release-type: node
package-name: bee-status
bump-minor-pre-major: true
+45
View File
@@ -0,0 +1,45 @@
name: Tests
on:
push:
branches:
- 'master'
pull_request:
branches:
- '**'
jobs:
tests:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [14.x]
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
## Try getting the node modules from cache, if failed npm ci
- uses: actions/cache@v2
id: cache-npm
with:
path: node_modules
key: ${{ runner.os }}-node-${{ matrix.node }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.OS }}-node-${{ matrix.node-version }}-${{ env.cache-name }}-
${{ runner.OS }}-node-${{ matrix.node-version }}-
- name: Install npm deps
if: steps.cache-npm.outputs.cache-hit != 'true'
run: npm ci
- name: Run tests
run: npm run test