This repository has example applications that are used to demonstrate Cofide's open source tools, including cofidectl.
The examples include ping-pong that can be deployed in a single Cofide trust zone, or federated across trust zones with multiple clusters.
There are several flavours of ping-pong:
workloads/ping-pong: SPIFFE mTLS-enabled HTTPS ping pongworkloads/ping-pong-cofide: SPIFFE mTLS-enabled HTTPS ping pong with the Cofide Go SDKworkloads/ping-pong-jwt: SPIFFE JWT-authenticated HTTP ping pongworkloads/ping-pong-mesh: HTTP ping pong (eg for use with a service mesh)workloads/ping-pong-exchange: JWT + OAuth 2.0 token exchange (RFC 8693) ping pongworkloads/aws-oidc: SPIFFE JWT-SVID to AWS credential exchange via STS OIDC
The Cofide Connect documentation contains additional information about the zero-trust communication patterns demonstrated by the examples in this repository.
See the cofidectl docs
See the cofidectl docs
Local development uses ko and tags built images under ko.local/ namespace.
In all the examples, use the following values instead of ghcr.io ones:
export COFIDE_DEMOS_IMAGE_PREFIX=ko.local/
export COFIDE_DEMOS_IMAGE_PULL_POLICY=Never
Set COFIDE_DEMOS_PLATFORMS to one of the supported platforms, e.g.:
export COFIDE_DEMOS_PLATFORMS=linux/amd64