Skip to content

Conversation

@hdwhdw
Copy link
Contributor

@hdwhdw hdwhdw commented Oct 17, 2025

Proposes establishing pure.mk and full.mk build systems to improve development velocity for sonic-gnmi repository.

Key improvements:

  • Enable local testing without SONiC dependencies (pure.mk)
  • Standardize full builds using pre-built dev containers (full.mk)
  • Replace manual test instructions with automated go test
  • Reduce PR review cycles from months to days

Addresses critical pain points:

  • PRs stuck 100+ days due to lack of local testability
  • Manual test instructions that cannot be verified
  • Long iteration cycles (10+ minutes per change)
  • Heavy reliance on Azure CI for basic validation

Implementation uses Go build tags to quarantine CGO/SONiC dependencies, enabling progressive migration of packages to pure Go testing.

Proposes establishing pure.mk and full.mk build systems to improve
development velocity for sonic-gnmi repository.

Key improvements:
- Enable local testing without SONiC dependencies (pure.mk)
- Standardize full builds using pre-built dev containers (full.mk)
- Replace manual test instructions with automated go test
- Reduce PR review cycles from months to days

Addresses critical pain points:
- PRs stuck 100+ days due to lack of local testability
- Manual test instructions that cannot be verified
- Long iteration cycles (10+ minutes per change)
- Heavy reliance on Azure CI for basic validation

Implementation uses Go build tags to quarantine CGO/SONiC dependencies,
enabling progressive migration of packages to pure Go testing.
@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

No pipelines are associated with this pull request.

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.

2 participants