This setup leverages GitHub Actions and Google Kubernetes Engine (GKE), but is designed to be extendable to other Kubernetes providers.
The /manifest
directory contains Kubernetes manifest files:
cluster_gke.yaml
: Creates the Main Node in GKE.cluster_eks.yaml
: Creates the Main Node in EKS.cluster-infra/
: Contains persistent components of the Main Node.prombench/
: Resources created and destroyed for each Prombench test.
Prombench can be run on different providers. Follow these instructions based on your provider:
-
Place a workflow file in the
.github
directory of your repository. Refer to the Prometheus GitHub repository for an example. -
Create a GitHub Action secret
TEST_INFRA_PROVIDER_AUTH
with the base64 encoded content of theAUTH_FILE
:cat $AUTH_FILE | base64 -w 0
Starting Tests:
/prombench main
or/prombench master
- Compare PR with the main/master branch./prombench v2.4.0
- Compare PR with a specific release version (e.g., from quay.io/prometheus/prometheus:releaseVersion).
Restarting Tests:
/prombench restart <release_version>
Stopping Tests:
/prombench cancel
Build the Docker image with:
docker build -t prominfra/prombench:master .