Update workflow.yml

This commit is contained in:
linguist
2020-12-31 21:43:29 +01:00
parent 66ecbbb5fd
commit 366c4d9026

View File

@@ -11,24 +11,10 @@ on:
jobs: jobs:
docker-master: # Build docker image from branch and run tests
name: Update GitHub Packages
runs-on: ubuntu-latest
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Login to GitHub registry
run: echo ${{ secrets.CONTAINER_REGISTRY_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin
- name: Build docker image
run: docker build -t ghcr.io/lowlighter/metrics:master .
- name: Publish to GitHub registry
run: docker push ghcr.io/lowlighter/metrics:master
build: build:
name: Build and test name: Build and test
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: [ docker-master ]
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v2 uses: actions/checkout@v2
@@ -37,6 +23,7 @@ jobs:
- name: Run tests - name: Run tests
run: docker run --workdir=/metrics --entrypoint="" lowlighter/metrics:${{ github.head_ref || 'master' }} npm test run: docker run --workdir=/metrics --entrypoint="" lowlighter/metrics:${{ github.head_ref || 'master' }} npm test
# Run CodeQL on branch
analyze: analyze:
name: Analyze code name: Analyze code
runs-on: ubuntu-latest runs-on: ubuntu-latest
@@ -51,3 +38,52 @@ jobs:
config-file: ./.github/config/codeql.yml config-file: ./.github/config/codeql.yml
- name: Analyze code - name: Analyze code
uses: github/codeql-action/analyze@v1 uses: github/codeql-action/analyze@v1
# Build docker image from master and publish it to GitHub registry
docker-master:
name: Publish master to GitHub registry
runs-on: ubuntu-latest
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Login to GitHub registry
run: echo ${{ secrets.CONTAINER_REGISTRY_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin
- name: Build docker image
run: docker build -t ghcr.io/lowlighter/metrics:master .
- name: Publish to GitHub registry
run: docker push ghcr.io/lowlighter/metrics:master
# Test lowlighter/metrics@master
action-master-test:
name: Test lowlighter/metrics@master
runs-on: ubuntu-latest
needs: [ docker-master ]
if: github.event_name == 'push' && github.ref == 'refs/heads/master'
steps:
- name: Run tests
uses: lowlighter/metrics@master
with:
token: MOCKED_TOKEN
plugins_errors_fatal: yes
dryrun: yes
use_mocked_data: yes
verify: yes
# TODO
# =========================
# Build docker image from master and publish it to GitHub registry with release tag
#docker-release:
# name: Publish release to GitHub registry
# runs-on: ubuntu-latest
# needs: [ action-master-test ]
# if: github.event_name == 'push' && github.ref == 'refs/heads/master' && contains(github.event.head_commit.message, '[release]')
# steps:
# - name: Checkout repository
# uses: actions/checkout@v2
# - name: Login to GitHub registry
# run: echo ${{ secrets.CONTAINER_REGISTRY_TOKEN }} | docker login ghcr.io -u ${{ github.actor }} --password-stdin
# - name: Build docker image
# run: docker build -t ghcr.io/lowlighter/metrics:master .
# - name: Publish to GitHub registry
# run: docker push ghcr.io/lowlighter/metrics:master