Help us shape the future of Go! Take the 2026 Go Developer Survey

sdk

module
v0.1.53 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 20, 2026 License: Apache-2.0

README

SDK

This repository contains the public gRPC protos supporting our services and packages to ease integration with the Chainguard platform.

Updating *.proto files

After updating a *.proto you'll need to update the corresponding generated go code.

Run codegen in an ephemeral container with all dependencies pre-installed:

./hack/update-codegen-docker.sh

This requires Docker but no local installation of protoc or its plugins.

Running locally
./hack/update-codegen.sh
Prerequisites

Install protoc v34.1: https://grpc.io/docs/protoc-installation/

We currently require protoc v34.1.

Install protoc codegen dependencies:

go install google.golang.org/protobuf/cmd/protoc-gen-go@v1.36.11
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v1.6.1
go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway@v2.22.0
go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2@v2.22.0

Breaking Changes

While we make every effort to maintain backward compatibility and avoid breaking changes, we cannot guarantee that future updates to this SDK will be entirely non-breaking. As our platform evolves and new features are added, some modifications to the API surface may be necessary. We recommend pinning to specific versions in production environments and thoroughly testing updates before deployment.

Directories

Path Synopsis
aws
ggcr
Package ggcr provides authentication integration between Chainguard identity tokens and the go-containerregistry library for accessing the cgr.dev container registry.
Package ggcr provides authentication integration between Chainguard identity tokens and the go-containerregistry library for accessing the cgr.dev container registry.
login
Package login implements client login functionality shared between various clients
Package login implements client login functionality shared between various clients
Package civil implements types for civil time, a time-zone-independent representation of time that follows the rules of the proleptic Gregorian calendar with exactly 24-hour days, 60-minute hours, and 60-second minutes.
Package civil implements types for civil time, a time-zone-independent representation of time that follows the rules of the proleptic Gregorian calendar with exactly 24-hour days, 60-minute hours, and 60-second minutes.
apk
Package apk provides CloudEvents types for APK package registry operations.
Package apk provides CloudEvents types for APK package registry operations.
receiver
Package receiver provides secure CloudEvent webhook receivers for Chainguard events.
Package receiver provides secure CloudEvent webhook receivers for Chainguard events.
examples
helm
chart
Package chart provides utilities for reading and modifying Chainguard Helm charts stored as OCI artifacts or on the filesystem.
Package chart provides utilities for reading and modifying Chainguard Helm charts stored as OCI artifacts or on the filesystem.
images
Package images provides utilities for parsing and resolving image value mappings embedded in Chainguard Helm chart packages.
Package images provides utilities for parsing and resolving image value mappings embedded in Chainguard Helm chart packages.
v1
Package v1 provides types for chart-lock attestation data attached to Chainguard Helm charts.
Package v1 provides types for chart-lock attestation data attached to Chainguard Helm charts.
proto
annotations
Package annotations contains the GRPC client and server definitions for implementing Auth interactions for the Console.
Package annotations contains the GRPC client and server definitions for implementing Auth interactions for the Console.
capabilities
Package capabilities contains the proto enum with our IAM capabilities.
Package capabilities contains the proto enum with our IAM capabilities.
chainguard/platform/clients/v2beta1
Package v2beta1 provides clients for Chainguard platform v2beta1 APIs.
Package v2beta1 provides clients for Chainguard platform v2beta1 APIs.
chainguard/platform/iam/v2beta1
Package v2beta1 provides clients for IAM v2beta1 services.
Package v2beta1 provides clients for IAM v2beta1 services.
chainguard/platform/iam/v2beta1/test
Package test provides mock implementations of the IAM v2beta1 service clients for use in unit tests.
Package test provides mock implementations of the IAM v2beta1 service clients for use in unit tests.
chainguard/platform/iter
Package iter provides generic pagination iterators for v2 APIs.
Package iter provides generic pagination iterators for v2 APIs.
chainguard/platform/registry/v2beta1
Package v2beta1 provides clients for registry v2beta1 services.
Package v2beta1 provides clients for registry v2beta1 services.
chainguard/platform/registry/v2beta1/test
Package test provides mock implementations of the registry v2beta1 service clients for use in unit tests.
Package test provides mock implementations of the registry v2beta1 service clients for use in unit tests.
chainguard/platform/test
Package test contains test-only proto definitions for SDK unit tests.
Package test contains test-only proto definitions for SDK unit tests.
chainguard/platform/vulnerabilities/v2beta1
Package v2beta1 provides clients for vulnerabilities v2beta1 services.
Package v2beta1 provides clients for vulnerabilities v2beta1 services.
chainguard/platform/vulnerabilities/v2beta1/test
Package test provides mock implementations of the vulnerabilities v2beta1 service clients for use in unit tests.
Package test provides mock implementations of the vulnerabilities v2beta1 service clients for use in unit tests.
platform/advisory/v1
Package v1 contains the v1 GRPC client and server definitions for implementing Advisory interactions.
Package v1 contains the v1 GRPC client and server definitions for implementing Advisory interactions.
platform/apk/v1
Package v1 contains the v1 GRPC client and server definitions for implementing APK interactions.
Package v1 contains the v1 GRPC client and server definitions for implementing APK interactions.
platform/auth/v1
Package v1 contains the v1 GRPC client and server definitions for implementing Auth interactions for the Console.
Package v1 contains the v1 GRPC client and server definitions for implementing Auth interactions for the Console.
platform/auth/v1/test
Package test provides mock implementations of the auth service for testing.
Package test provides mock implementations of the auth service for testing.
platform/common/v1
Package common contains Chainguard shared types exposed to the console.
Package common contains Chainguard shared types exposed to the console.
platform/ecosystems/v1
Package v1 contains the v1 GRPC client and server definitions for implementing Ecosystem interactions for the Console.
Package v1 contains the v1 GRPC client and server definitions for implementing Ecosystem interactions for the Console.
platform/events/v1
Package events contains the GRPC client and server definitions for implementing eventing interactions for the Console.
Package events contains the GRPC client and server definitions for implementing eventing interactions for the Console.
platform/iam/v1
Package v1 provides gRPC client and server definitions for IAM interactions with the Chainguard Console.
Package v1 provides gRPC client and server definitions for IAM interactions with the Chainguard Console.
platform/iam/v1/test
Package test provides mock implementations of IAM gRPC clients for testing.
Package test provides mock implementations of IAM gRPC clients for testing.
platform/libraries/v1
Package v1 contains the v1 GRPC client and server definitions for implementing Libraries interactions for the Console.
Package v1 contains the v1 GRPC client and server definitions for implementing Libraries interactions for the Console.
platform/libraries/v1/test
Package test provides mock implementations of the Libraries API clients for testing purposes.
Package test provides mock implementations of the Libraries API clients for testing purposes.
platform/matcher/v1
Package v1 contains the v1 GRPC client and server definitions for implementing Crystal Ball interactions.
Package v1 contains the v1 GRPC client and server definitions for implementing Crystal Ball interactions.
platform/notifications/v1
Package v1 contains the v1 GRPC client and server definitions for implementing notifications interactions for the Platform.
Package v1 contains the v1 GRPC client and server definitions for implementing notifications interactions for the Platform.
platform/oidc/v1
Package v1 contains the v1 GRPC client and server definitions for implementing OIDC interactions for the Platform.
Package v1 contains the v1 GRPC client and server definitions for implementing OIDC interactions for the Platform.
platform/packages/v1
Package v1 contains the v1 GRPC client and server definitions for implementing Packages interactions for the Console.
Package v1 contains the v1 GRPC client and server definitions for implementing Packages interactions for the Console.
platform/packages/v1/test
Package test provides mock implementations of the Packages API clients for testing purposes.
Package test provides mock implementations of the Packages API clients for testing purposes.
platform/ping/v1
Package v1 contains the v1 GRPC client and server definitions for implementing ping interactions for the Platform.
Package v1 contains the v1 GRPC client and server definitions for implementing ping interactions for the Platform.
platform/policygates/v1
Package v1 contains the v1 GRPC client and server definitions for implementing Policy Gates interactions.
Package v1 contains the v1 GRPC client and server definitions for implementing Policy Gates interactions.
platform/policygates/v1/test
Package test provides mock implementations of PolicyGates gRPC clients for testing.
Package test provides mock implementations of PolicyGates gRPC clients for testing.
platform/registry/v1
Package v1 contains the v1 GRPC client and server definitions for implementing Registry interactions.
Package v1 contains the v1 GRPC client and server definitions for implementing Registry interactions.
platform/registry/v1/test
Package test provides mock implementations of Registry gRPC clients for testing.
Package test provides mock implementations of Registry gRPC clients for testing.
platform/tenant/v1
Package v1 contains the v1 GRPC client and server definitions for implementing Tenant interactions for the Console.
Package v1 contains the v1 GRPC client and server definitions for implementing Tenant interactions for the Console.
platform/vulnerabilities/v1
Package v1 contains the platform API for the advisory service.
Package v1 contains the platform API for the advisory service.
Package sts provides OIDC token exchange functionality for Chainguard services.
Package sts provides OIDC token exchange functionality for Chainguard services.
Package uidp contains utilities for reasoning about and manipulating the Chainguard IAM "UIDP" (UID Path) concept.
Package uidp contains utilities for reasoning about and manipulating the Chainguard IAM "UIDP" (UID Path) concept.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL