🔖 Feature description
Implement three essential GH Actions workflows for kubeslice-cli:
-
CLI Testing Workflow: Automatically runs and verifies major CLI commands (e.g., --help, invalid input handling).
-
Cross-Platform Build Workflow: Builds CLI binaries for all major platforms and architectures (Linux, macOS, Windows; amd64/arm64), and provides them as downloadable release artifacts.
-
Code Quality and Linting Workflow: Integrates tools like golangci-lint to enforce formatting, dependency checks, and security standards.
🎤 Pitch
Automating CLI tests, cross-platform builds, and linting will quickly catch bugs, ensure users get working binaries for all systems, and keep code quality high with minimal manual effort.
✌️ Solution
-
Add .github/workflows/cli-testing.yml to verify key CLI commands and argument error handling on every PR/push.
-
Add .github/workflows/cross-platform.yml to matrix-build binaries for {linux, darwin, windows} × {amd64, arm64} and upload artifacts.
-
Add .github/workflows/lint.yml to run golangci-lint run --timeout=5m (or similar) on all PRs/pushes.
-
Optionally, update contributor docs to mention automatic checks and artifacts in PR/release process.
🔄️ Alternative
take a look here
https://kubernetes.slack.com/archives/C03Q64HNEJF/p1754187823984139
👀 Have you spent some time to check if this issue has been raised before?
🏢 Have you read the Code of Conduct?
🔖 Feature description
Implement three essential GH Actions workflows for kubeslice-cli:
CLI Testing Workflow: Automatically runs and verifies major CLI commands (e.g., --help, invalid input handling).
Cross-Platform Build Workflow: Builds CLI binaries for all major platforms and architectures (Linux, macOS, Windows; amd64/arm64), and provides them as downloadable release artifacts.
Code Quality and Linting Workflow: Integrates tools like golangci-lint to enforce formatting, dependency checks, and security standards.
🎤 Pitch
Automating CLI tests, cross-platform builds, and linting will quickly catch bugs, ensure users get working binaries for all systems, and keep code quality high with minimal manual effort.
✌️ Solution
Add
.github/workflows/cli-testing.ymlto verify key CLI commands and argument error handling on every PR/push.Add
.github/workflows/cross-platform.ymlto matrix-build binaries for {linux, darwin, windows} × {amd64, arm64} and upload artifacts.Add
.github/workflows/lint.ymlto run golangci-lint run --timeout=5m (or similar) on all PRs/pushes.Optionally, update contributor docs to mention automatic checks and artifacts in PR/release process.
🔄️ Alternative
take a look here
https://kubernetes.slack.com/archives/C03Q64HNEJF/p1754187823984139
👀 Have you spent some time to check if this issue has been raised before?
🏢 Have you read the Code of Conduct?