Skip to content

Latest commit

 

History

49 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

clowder-e2e

A minimal Go service used for end-to-end testing of Clowder, the Red Hat Insights operator that manages cloud.redhat.com application deployments on OpenShift/Kubernetes.

What it does

clowder-e2e is a lightweight HTTP server that validates Clowder's runtime configuration injection. It reads its configuration from app-common-go (the standard Clowder client library) and starts two servers:

  • Application server on the Clowder-configured public port — serves a simple handler at /, /healthz, and /api/puptoo/
  • Metrics server on the Clowder-configured metrics port — exposes Prometheus metrics

If a command-line argument is passed, it prints a message and exits instead of starting the servers. This allows testing both the service startup path and the CLI argument path in e2e scenarios.

Prerequisites

  • Go 1.19+
  • A Clowder-managed environment (provides the cdappconfig.json configuration file)

Building

go build -o clowder-e2e

Container image

The project includes a multi-stage Dockerfile based on UBI9:

docker build -t clowder-e2e .

Running

The binary expects Clowder to inject its configuration via the ACG_CONFIG environment variable pointing to a cdappconfig.json file:

ACG_CONFIG=/path/to/cdappconfig.json ./clowder-e2e

Project structure

.
├── clowder-e2e.go   # Application entrypoint
├── Dockerfile       # Multi-stage container build (UBI9)
├── go.mod           # Go module definition
└── go.sum           # Dependency checksums

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

5 watching

Forks

Releases

Packages

Used by

Contributors

Languages