Skip to content

Feature: Improving CI/CD for Kubeslice-clirepo #94

@Arpit529Srivastava

Description

@Arpit529Srivastava

🔖 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?

  • I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions