Security/quality

This commit is contained in:
HugeFrog24
2026-03-05 01:51:59 +01:00
parent 6e2d2fce2f
commit e1a9261699
30 changed files with 2823 additions and 295 deletions
Executable → Regular
+32 -28
View File
@@ -7,23 +7,15 @@ on:
branches: [ main ]
jobs:
build:
# Common setup job that other jobs can depend on
setup:
runs-on: ubuntu-latest
steps:
# Checkout the repository
- name: Checkout code
uses: actions/checkout@v4
# Set up Go environment
- name: Set up Go
uses: actions/setup-go@v5
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: '1.23' # Specify the Go version you are using
# Cache Go modules
- name: Cache Go modules
uses: actions/cache@v4
go-version: '1.26.0'
- uses: actions/cache@v4
with:
path: |
~/.cache/go-build
@@ -31,24 +23,36 @@ jobs:
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- run: go mod tidy
# Install Dependencies
- name: Install Dependencies
run: go mod tidy
# Run Linters using golangci-lint
- name: Lint Code
uses: golangci/golangci-lint-action@v6
# Lint job
lint:
needs: setup
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: golangci/golangci-lint-action@v9
with:
version: v1.60 # Specify the version of golangci-lint
version: v2.10
args: --timeout 5m
# Run Tests
- name: Run Tests
run: go test ./... -v
# Test job
test:
needs: setup
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-go@v6
with:
go-version: '1.26.0'
- run: go test ./... -v
# Security Analysis using gosec
- name: Security Scan
uses: securego/gosec@master
# Security scan job
security:
needs: setup
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: securego/gosec@master
with:
args: ./...