Skip to content

Workflows for building and testing #11

Workflows for building and testing

Workflows for building and testing #11

Workflow file for this run

name: Build and test
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
run-linters:
name: Run linters
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [20.x]
steps:
-
uses: actions/checkout@v3
-
name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
-
name: pnpm install
run: npm install -g pnpm
-
run: pnpm install prettier
-
run: pnpm install --frozen-lockfile
-
name: ESLint
uses: reviewdog/action-eslint@v1
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
reporter: github-pr-check
filter_mode: file
-
name: Prettier
uses: EPMatt/reviewdog-action-prettier@v1
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
reporter: github-pr-check
filter_mode: file
level: warning
test:
name: Test
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [20.x]
steps:
-
uses: actions/checkout@v3
-
name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
-
name: pnpm install
run: npm install -g pnpm
-
run: pnpm install --frozen-lockfile
-
run: pnpm test
build:
name: Build docker container
runs-on: ubuntu-latest
steps:
-
uses: actions/checkout@v3
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
-
name: Login to GitHub Container Registry
if: ${{ github.ref == 'refs/heads/main' }}
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
-
name: Build Docker image (and push on main)
uses: docker/build-push-action@v4.0.0
with:
push: ${{ github.ref == 'refs/heads/main' }}
tags: ghcr.io/cthit/chalmers.it:latest