1
1
mirror of https://github.com/theoludwig/theoludwig.git synced 2024-11-05 04:51:30 +01:00
.profile/.github/workflows/Divlo.yml

128 lines
3.0 KiB
YAML
Raw Normal View History

2021-04-18 22:30:27 +02:00
name: 'Divlo'
2021-04-18 01:56:23 +02:00
on:
push:
2021-06-13 01:53:13 +02:00
branches: [master, develop]
2021-04-18 01:56:23 +02:00
pull_request:
2021-06-13 01:53:13 +02:00
branches: [master, develop]
2021-04-18 01:56:23 +02:00
jobs:
2021-05-31 15:04:17 +02:00
analyze:
2021-04-18 01:56:23 +02:00
runs-on: 'ubuntu-latest'
2021-05-31 15:04:17 +02:00
2021-04-18 01:56:23 +02:00
strategy:
2021-05-31 15:04:17 +02:00
fail-fast: false
2021-04-18 01:56:23 +02:00
matrix:
2021-05-31 15:04:17 +02:00
language: ['javascript']
steps:
- uses: 'actions/checkout@v2.3.4'
- name: 'Initialize CodeQL'
uses: 'github/codeql-action/init@v1'
with:
languages: ${{ matrix.language }}
- name: 'Perform CodeQL Analysis'
uses: 'github/codeql-action/analyze@v1'
lint:
runs-on: 'ubuntu-latest'
2021-04-18 01:56:23 +02:00
steps:
- uses: 'actions/checkout@v2.3.4'
2021-04-18 01:56:23 +02:00
2021-05-31 15:04:17 +02:00
- name: 'Use Node.js'
2021-04-18 01:56:23 +02:00
uses: 'actions/setup-node@v2.1.5'
with:
2021-06-13 01:53:13 +02:00
node-version: '16.x'
2021-04-18 01:56:23 +02:00
- name: 'Cache dependencies'
uses: 'actions/cache@v2.1.6'
2021-04-18 01:56:23 +02:00
with:
path: '.npm'
key: ${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}
2021-05-31 15:04:17 +02:00
- name: 'Install'
run: 'npm ci --cache .npm --prefer-offline'
2021-04-18 01:56:23 +02:00
- run: 'npm run lint:commit -- --to "${{ github.sha }}"'
- run: 'npm run lint:docker'
- run: 'npm run lint:editorconfig'
- run: 'npm run lint:markdown'
- run: 'npm run lint:typescript'
2021-05-31 15:04:17 +02:00
build:
runs-on: 'ubuntu-latest'
steps:
- uses: 'actions/checkout@v2.3.4'
- name: 'Use Node.js'
uses: 'actions/setup-node@v2.1.5'
with:
2021-06-13 01:53:13 +02:00
node-version: '16.x'
2021-05-31 15:04:17 +02:00
- name: 'Cache dependencies'
uses: 'actions/cache@v2.1.6'
with:
path: '.npm'
key: ${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}
- name: 'Install'
run: 'npm ci --cache .npm --prefer-offline'
- name: 'Build'
run: 'npm run build'
- name: 'Lighthouse'
run: 'npm run lighthouse'
2021-06-15 20:35:52 +02:00
env:
LHCI_GITHUB_APP_TOKEN: ${{ secrets.LHCI_GITHUB_APP_TOKEN }}
2021-05-31 15:04:17 +02:00
test:
runs-on: 'ubuntu-latest'
steps:
- uses: 'actions/checkout@v2.3.4'
- name: 'Use Node.js'
uses: 'actions/setup-node@v2.1.5'
with:
2021-06-13 01:53:13 +02:00
node-version: '16.x'
2021-05-31 15:04:17 +02:00
- name: 'Cache dependencies'
uses: 'actions/cache@v2.1.6'
with:
path: '.npm'
key: ${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}
- name: 'Install'
run: 'npm ci --cache .npm --prefer-offline'
- name: 'Test'
run: 'npm run test'
release:
if: github.ref == 'refs/heads/master' && github.event_name == 'push'
needs: [analyze, lint, build, test]
runs-on: 'ubuntu-latest'
steps:
- uses: 'actions/checkout@v2.3.4'
- name: 'Use Node.js'
uses: 'actions/setup-node@v2.1.5'
with:
2021-06-13 01:53:13 +02:00
node-version: '16.x'
2021-05-31 15:04:17 +02:00
- name: 'Cache dependencies'
uses: 'actions/cache@v2.1.6'
with:
path: '.npm'
key: ${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}
- name: 'Install'
run: 'npm ci --cache .npm --prefer-offline'
- name: 'Release'
run: 'npm run release'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}