Package Structure | Development | Requirements | Documentation
This repo hosts common NVCF components that shared by both egx/cloud and
egx/edge, including:
- API definitions
- Authentication components (OAuth, JWT, token fetching)
- Core HTTP services and event streaming
- Kubernetes client utilities
- OpenTelemetry integration
- Secret management
The repository is organized into modular packages under pkg/:
pkg/auth/- Authentication token fetchingpkg/core/- HTTP services, event streaming, Kubernetes clients, and context managementpkg/http/- HTTP utilities (logger, retry client, request headers)pkg/ngc/- NGC token fetchingpkg/oauth/- OAuth/JWT handling with JWKS cachingpkg/otel/- OpenTelemetry integrationpkg/secret/- Secret management and file fetchingpkg/types/- Type definitions and configurationpkg/version/- Version utilities
Common commands:
# Update vendored dependencies
make vendor-update
# After vendor update, regenerate NOTICE third-party list
make license-update
# Verify NOTICE is in sync
make check-license
# Run linting
make lint
# Run all unit tests
make test
# Run individual unit test
go test ./pkg/core -run TestHTTPServiceRoutes
# Update generated K8s client code
make codegen-updateTo view coverage results locally:
cd _output/cover && python3 -m http.server 8000- Open browser:
http://<machine_ip>:8000/coverage.html
- Go: 1.24.0+
- Kubernetes API: v0.34.2 compatibility
- AGENTS.md - Comprehensive development guide including architecture, testing, security, and commit conventions
- CONTRIBUTING.md - Contribution guidelines and code contribution process
- SECURITY.md - Security policies and vulnerability reporting
- CODE_OF_CONDUCT.md - Community guidelines