Skip to content

schedule-main

schedule-main #45

Workflow file for this run

name: schedule-main
on:
schedule:
# Runs once a day at 1:00 UTC on main branch to collect statistics
- cron: "0 1 * * *"
workflow_dispatch:
jobs:
ci-lint:
name: Lint
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
actions: read
steps:
- name: Linting Go
uses: smartcontractkit/.github/actions/ci-lint-go@ci-lint-go/v2 # ci-lint-go@2.x.x
with:
only-new-issues: "false"
golangci-lint-version: v2.11.4
ci-lint-misc:
name: Lint GH Actions and scripts
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Linting Misc (yaml + sh files)
uses: smartcontractkit/.github/actions/ci-lint-misc@eeb76b5870e3c17856d5a60fd064a053c023b5f5 # ci-lint-misc@1.0.0
ci-test:
name: Tests
runs-on: ubuntu-latest
timeout-minutes: 10
permissions:
id-token: write
contents: read
actions: read
steps:
- name: Build and test
uses: smartcontractkit/.github/actions/ci-test-go@dfcba48f05933158428bce867d790e3d5a9baa6b # ci-test-go@1.1.0
with:
go-test-cmd: go test -race -coverprofile=coverage.txt ./...
use-go-cache: true
artifact-name: unit-tests
sonarqube:
name: Sonar Scan
runs-on: ubuntu-24.04
needs: [ci-lint, ci-lint-misc, ci-test]
permissions:
contents: read
actions: read
steps:
- name: Scan with Sonarqube
uses: smartcontractkit/.github/actions/ci-sonarqube-go@01d931b0455a754d12e7143cc54a5a3521a8f6f6 # ci-sonarqube-go@0.3.1
with:
sonar-token: ${{ secrets.SONAR_TOKEN }}
sonar-host-url: ${{ secrets.SONAR_HOST_URL }}
include-lint: true