ci/cd(deps): bump actions/upload-artifact from 4.0.0 to 4.5.0 #241
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 integration | |
on: | |
pull_request: | |
branches: [ main ] | |
paths: | |
- '.github/workflows/ci.yml' | |
- '.golangci.yml' | |
- '**.go' | |
- 'go.{mod,sum}' | |
- 'Makefile' | |
- 'Taskfile' | |
push: | |
branches: [ main ] | |
paths: | |
- '.github/workflows/ci.yml' | |
- '.golangci.yml' | |
- '**.go' | |
- 'go.{mod,sum}' | |
- 'Makefile' | |
- 'Taskfile' | |
tags: [ '!*' ] | |
schedule: | |
- cron: 0 7 1 * * # at 07:00 on day-of-month 1, UTC | |
workflow_dispatch: | |
inputs: | |
reason: | |
description: The reason for dispatching it manually. | |
type: string | |
default: manual healthcheck | |
required: true | |
jobs: | |
lint: | |
name: Linting | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the repository | |
uses: actions/[email protected] | |
with: { fetch-depth: 0 } | |
- name: Set up Go environment | |
uses: actions/[email protected] | |
with: | |
go-version: 1.21.x | |
cache-dependency-path: tools/go.sum | |
check-latest: true | |
- name: Set up environment | |
run: make tools | |
- name: Run linter | |
run: make lint | |
- name: Run fast check the state | |
run: make fast-check | |
test: | |
name: Testing | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
go: | |
- 1.x | |
- 1.11.x | |
- 1.12.x | |
- 1.13.x | |
- 1.14.x | |
- 1.15.x | |
- 1.16.x | |
- 1.17.x | |
- 1.18.x | |
- 1.19.x | |
- 1.20.x | |
- 1.21.x | |
steps: | |
- name: Checkout the repository | |
uses: actions/[email protected] | |
with: { fetch-depth: 0 } | |
- name: Set up Go environment | |
uses: actions/[email protected] | |
with: { go-version: '${{ matrix.go }}', check-latest: true } | |
- name: Set up environment | |
run: make env deps | |
- name: Run fast check source code | |
run: make go-check | |
- name: Run tests | |
run: make test | |
if: matrix.go != '1.21.x' | |
- name: Run tests with coverage report | |
run: make test-with-coverage | |
if: matrix.go == '1.21.x' | |
- name: Store code coverage report | |
uses: actions/[email protected] | |
if: matrix.go == '1.21.x' | |
with: { name: code-coverage-report, path: c.out } | |
report: | |
name: Reporting | |
needs: [ test ] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the repository | |
uses: actions/[email protected] | |
with: { fetch-depth: 0 } | |
- name: Fetch code coverage report | |
uses: actions/[email protected] | |
with: { name: code-coverage-report } | |
- name: Send code coverage report to Codecov (codecov.io) | |
uses: codecov/[email protected] | |
with: { files: c.out } | |
notify: | |
name: Notifying | |
needs: [ lint, test ] | |
runs-on: ubuntu-latest | |
if: github.event_name != 'pull_request' && (failure() || success()) | |
steps: | |
- name: Checkout the repository | |
uses: actions/[email protected] | |
with: { fetch-depth: 0 } | |
- name: Send notification | |
uses: ./.github/actions/notify | |
with: | |
emoji: ⚙️ | |
channel: ${{ secrets.SLACK_WEBHOOK }} | |
success: ${{ ! contains(needs.*.result, 'failure') }} |