Skip to content

feat(ci): add golangci-lint and govulncheck to CI workflow#743

Merged
aminueza merged 8 commits intomainfrom
feature/github-actions
Jan 28, 2026
Merged

feat(ci): add golangci-lint and govulncheck to CI workflow#743
aminueza merged 8 commits intomainfrom
feature/github-actions

Conversation

@aminueza
Copy link
Copy Markdown
Owner

@aminueza aminueza commented Jan 28, 2026

Modernize GitHub Actions workflows with 2026 best practices

This PR implements the following changes:

  • Replace individual linters (fmt, vet, staticcheck) with unified golangci-lint
  • Add govulncheck for Go dependency vulnerability scanning
  • Add security hardening: permissions, concurrency, and timeout-minutes
  • Add SBOM generation to release workflow for supply chain transparency
  • Add manual release tag workflow with auto-version calculation
  • Update GoReleaser config to use GitHub native release notes
  • Update action versions: setup-go@v5, goreleaser-action@v6

Files Changed

File Change
.github/workflows/go.yml CI workflow with golangci-lint, govulncheck
.github/workflows/release.yml Add SBOM, update action versions
.github/workflows/create-release-tag.yml New manual release workflow
.golangci.yml New linter configuration
.goreleaser.yml GitHub native release notes
.github/release.yml Release notes categories

Reference

Closing issues

@aminueza aminueza requested a review from felladrin January 28, 2026 15:20
…ation

- Upgrade actions/checkout, actions/setup-go, and golangci-lint versions for improved performance and compatibility.
- Update golangci-lint configuration to version 2, consolidating linters and excluding unnecessary ones.
- Adjust exclusion rules for specific files and linters to enhance linting accuracy.
…icy expiration check

- Updated provider initialization in TestProvider_impl to remove unnecessary type assertion.
- Modified expiration date check in minioReadILMPolicy to use IsZero() method directly for clarity.
- Corrected queue configuration comparison in S3 bucket notification tests for consistency.
…and organization

- Set default linters to none and explicitly enable required linters.
- Consolidate linters settings for errcheck and govet, maintaining specific exclusions.
- Refactor exclusion rules for better readability and organization.
…readability

- Added new linters: bodyclose, noctx, and unconvert for better code quality.
- Refactored exclusion rules for errcheck to improve clarity and organization.
- Simplified code in data_source_minio_iam_policy_document.go and data_source_minio_server_info.go for better readability.
- Updated resource_minio_iam_group.go to directly set group_name without unnecessary type conversion.
- Improved test for bucket accessibility in resource_minio_s3_bucket_test.go by using http.NewRequest for better context handling.
@felladrin felladrin changed the title feat(ci): add golangci-lint and govulncheck to CI workflow #742 feat(ci): add golangci-lint and govulncheck to CI workflow Jan 28, 2026
- Replaced the govulncheck GitHub Action with a direct installation and execution command for improved flexibility.
- Ensured the latest version of govulncheck is used for vulnerability scanning.
- Eliminated the direct installation and execution of govulncheck from the CI workflow to streamline the process.
- This change simplifies the workflow configuration while maintaining focus on other testing tasks.
@aminueza aminueza requested a review from felladrin January 28, 2026 16:25
@aminueza aminueza closed this Jan 28, 2026
@aminueza aminueza reopened this Jan 28, 2026
Copy link
Copy Markdown
Collaborator

@felladrin felladrin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've checked the non-workflow files changed, and the changes are all optimizations. No risks. 🟢

@aminueza aminueza merged commit 1415eea into main Jan 28, 2026
9 checks passed
@aminueza aminueza deleted the feature/github-actions branch January 28, 2026 16:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Modernize GitHub Actions workflows with 2026 best practices

2 participants