This repository has been archived by the owner on May 26, 2024. It is now read-only.
Leiden to main #753
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Continuous Delivery | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
jobs: | |
continuous-integration: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Node.js version | |
uses: actions/setup-node@v2 | |
with: | |
node-version: "16.x" | |
- name: Install | |
run: | | |
npm ci | |
npm ls | |
- name: "Continuous Integration: build" | |
run: | | |
npm run build --if-present | |
- name: "Continuous Integration: lint" | |
run: | | |
npm run lint --if-present | |
- name: "Continuous Integration: test" | |
run: | | |
npm run test --if-present | |
- name: "Retain build artifacts" | |
uses: actions/upload-artifact@v2 | |
with: | |
name: build | |
path: .next/ | |
retention-days: 42 | |
continuous-deployment: | |
runs-on: ubuntu-latest | |
permissions: | |
packages: write | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Docker meta | |
id: meta | |
uses: docker/metadata-action@v4 | |
with: | |
images: | | |
ghcr.io/${{ github.repository }} | |
tags: | | |
type=ref,event=pr | |
type=semver,pattern={{version}} | |
type=semver,pattern={{major}}.{{minor}} | |
type=raw,value={{sha}},enable=${{ github.ref_type != 'tag' }} | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v2 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- name: Login to GitHub Container Registry | |
uses: docker/login-action@v2 | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build and push | |
uses: docker/build-push-action@v4 | |
with: | |
context: . | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: ${{ steps.meta.outputs.tags }} | |
labels: ${{ steps.meta.outputs.labels }} |