Improvements to Github Actions #48
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
# SPDX-License-Identifier: Apache-2.0 | |
# Copyright 2024 Intel Corporation | |
name: Main workflow | |
on: | |
pull_request: | |
branches: | |
- main | |
push: | |
branches: | |
- main | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-go@v5 | |
with: | |
go-version-file: 'go.mod' | |
- name: Build | |
run: go build | |
docker-build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build Docker image | |
run: make docker-build | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-go@v5 | |
with: | |
go-version-file: 'go.mod' | |
- name: golangci-lint | |
uses: golangci/[email protected] | |
with: | |
version: latest | |
args: -v --config ./.golangci.yml | |
hadolint: | |
name: hadolint | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Dockerfile linter | |
uses: hadolint/[email protected] | |
# For now, ignoring: | |
# DL3008 warning: Pin versions in apt get install (e.g., apt-get install <package>=<version>); and | |
# DL3018 warning: Pin versions in apk add (e.g., apk add <package>=<version>) | |
with: | |
dockerfile: Dockerfile | |
ignore: DL3008,DL3018 | |
license-check: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: reuse lint | |
uses: fsfe/reuse-action@v3 | |
fossa-check: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: FOSSA scan | |
uses: fossa-contrib/fossa-action@v3 | |
with: | |
fossa-api-key: 0c3bbcdf20e157bbd487dae173751b28 | |
unit-tests: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-go@v5 | |
with: | |
go-version-file: 'go.mod' | |
- name: Unit tests | |
run: go test ./... |