Skip to content

Commit 71b17c9

Browse files
committed
Add PROVIDER variable in funcbench and prombench make file, change documentation to make it more general
Signed-off-by: Drumil Patel <[email protected]>
1 parent ec2be28 commit 71b17c9

File tree

4 files changed

+24
-21
lines changed

4 files changed

+24
-21
lines changed

.github/workflows/grafana_dashboard.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
id: apply_configmap
1515
uses: docker://prominfra/prombench:master
1616
env:
17-
AUTH_FILE: ${{ secrets.TEST_INFRA_GKE_AUTH }}
17+
AUTH_FILE: ${{ secrets.TEST_INFRA_PROVIDER_AUTH }}
1818
GKE_PROJECT_ID: macro-mile-203600
1919
CLUSTER_NAME: test-infra
2020
ZONE: europe-west3-a

funcbench/Makefile

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
INFRA_CMD ?= ../infra/infra
22

3+
PROVIDER ?= gke
34
ifeq ($(PACKAGE_PATH),)
45
PACKAGE_PATH = ./...
56
endif
@@ -11,17 +12,17 @@ deploy: cluster_create resource_apply
1112
clean: resource_delete cluster_delete
1213

1314
cluster_create:
14-
$(INFRA_CMD) gke cluster create -a ${AUTH_FILE} \
15+
$(INFRA_CMD) $(PROVIDER) cluster create -a ${AUTH_FILE} \
1516
-v GKE_PROJECT_ID:${GKE_PROJECT_ID} -v ZONE:${ZONE} -v CLUSTER_NAME:funcbench-${PR_NUMBER} -v PR_NUMBER:${PR_NUMBER} \
16-
-f manifests/cluster_gke.yaml
17+
-f manifests/cluster_$(PROVIDER).yaml
1718

1819
cluster_delete:
19-
$(INFRA_CMD) gke cluster delete -a ${AUTH_FILE} \
20+
$(INFRA_CMD) $(PROVIDER) cluster delete -a ${AUTH_FILE} \
2021
-v GKE_PROJECT_ID:${GKE_PROJECT_ID} -v ZONE:${ZONE} -v CLUSTER_NAME:funcbench-${PR_NUMBER} -v PR_NUMBER:${PR_NUMBER} \
21-
-f manifests/cluster_gke.yaml
22+
-f manifests/cluster_$(PROVIDER).yaml
2223

2324
resource_apply:
24-
$(INFRA_CMD) gke resource apply -a ${AUTH_FILE} \
25+
$(INFRA_CMD) $(PROVIDER) resource apply -a ${AUTH_FILE} \
2526
-v ZONE:${ZONE} -v GKE_PROJECT_ID:${GKE_PROJECT_ID} -v CLUSTER_NAME:funcbench-${PR_NUMBER} \
2627
-v PR_NUMBER:${PR_NUMBER} -v GITHUB_TOKEN:${GITHUB_TOKEN} \
2728
-v GITHUB_ORG:${GITHUB_ORG} -v GITHUB_REPO:${GITHUB_REPO} \
@@ -31,7 +32,7 @@ resource_apply:
3132

3233
# Removal of namespace should be at the end, after all other resources get removed.
3334
resource_delete:
34-
$(INFRA_CMD) gke resource delete -a ${AUTH_FILE} \
35+
$(INFRA_CMD) $(PROVIDER) resource delete -a ${AUTH_FILE} \
3536
-v ZONE:${ZONE} -v GKE_PROJECT_ID:${GKE_PROJECT_ID} -v CLUSTER_NAME:funcbench-${PR_NUMBER} \
3637
-v PR_NUMBER:${PR_NUMBER} -v GITHUB_TOKEN:${GITHUB_TOKEN} \
3738
-v GITHUB_ORG:${GITHUB_ORG} -v GITHUB_REPO:${GITHUB_REPO} \

prombench/Makefile

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,45 @@
11
INFRA_CMD ?= ../infra/infra
22

3+
PROVIDER ?= gke
4+
35
.PHONY: deploy clean
46
deploy: nodepool_create resource_apply
57
# GCP sometimes takes longer than 30 tries when trying to delete nodepools
68
# if k8s resources are not already cleared
79
clean: resource_delete nodepool_delete
810

911
nodepool_create:
10-
$(INFRA_CMD) gke nodes create -a ${AUTH_FILE} \
12+
$(INFRA_CMD) $(PROVIDER) nodes create -a ${AUTH_FILE} \
1113
-v ZONE:${ZONE} -v GKE_PROJECT_ID:${GKE_PROJECT_ID} -v CLUSTER_NAME:${CLUSTER_NAME} -v PR_NUMBER:${PR_NUMBER} \
12-
-f manifests/prombench/nodes_gke.yaml
14+
-f manifests/prombench/nodes_$(PROVIDER).yaml
1315

1416
resource_apply:
15-
$(INFRA_CMD) gke resource apply -a ${AUTH_FILE} \
17+
$(INFRA_CMD) $(PROVIDER) resource apply -a ${AUTH_FILE} \
1618
-v ZONE:${ZONE} -v GKE_PROJECT_ID:${GKE_PROJECT_ID} -v CLUSTER_NAME:${CLUSTER_NAME} \
1719
-v PR_NUMBER:${PR_NUMBER} -v RELEASE:${RELEASE} -v DOMAIN_NAME:${DOMAIN_NAME} \
1820
-v GITHUB_ORG:${GITHUB_ORG} -v GITHUB_REPO:${GITHUB_REPO} \
1921
-f manifests/prombench/benchmark
2022

2123
# Required because namespace and cluster-role are not part of the created nodepools
2224
resource_delete:
23-
$(INFRA_CMD) gke resource delete -a ${AUTH_FILE} \
25+
$(INFRA_CMD) $(PROVIDER) resource delete -a ${AUTH_FILE} \
2426
-v ZONE:${ZONE} -v GKE_PROJECT_ID:${GKE_PROJECT_ID} -v CLUSTER_NAME:${CLUSTER_NAME} -v PR_NUMBER:${PR_NUMBER} \
2527
-f manifests/prombench/benchmark/1c_cluster-role-binding.yaml \
2628
-f manifests/prombench/benchmark/1a_namespace.yaml
2729

2830
nodepool_delete:
29-
$(INFRA_CMD) gke nodes delete -a ${AUTH_FILE} \
31+
$(INFRA_CMD) $(PROVIDER) nodes delete -a ${AUTH_FILE} \
3032
-v ZONE:${ZONE} -v GKE_PROJECT_ID:${GKE_PROJECT_ID} -v CLUSTER_NAME:${CLUSTER_NAME} -v PR_NUMBER:${PR_NUMBER} \
31-
-f manifests/prombench/nodes_gke.yaml
33+
-f manifests/prombench/nodes_$(PROVIDER).yaml
3234

3335
all_nodepools_running:
34-
$(INFRA_CMD) gke nodes check-running -a ${AUTH_FILE} \
36+
$(INFRA_CMD) $(PROVIDER) nodes check-running -a ${AUTH_FILE} \
3537
-v ZONE:${ZONE} -v GKE_PROJECT_ID:${GKE_PROJECT_ID} \
3638
-v CLUSTER_NAME:${CLUSTER_NAME} -v PR_NUMBER:${PR_NUMBER} \
37-
-f manifests/prombench/nodes_gke.yaml
39+
-f manifests/prombench/nodes_$(PROVIDER).yaml
3840

3941
all_nodepools_deleted:
40-
$(INFRA_CMD) gke nodes check-deleted -a ${AUTH_FILE} \
42+
$(INFRA_CMD) $(PROVIDER) nodes check-deleted -a ${AUTH_FILE} \
4143
-v ZONE:${ZONE} -v GKE_PROJECT_ID:${GKE_PROJECT_ID} \
4244
-v CLUSTER_NAME:${CLUSTER_NAME} -v PR_NUMBER:${PR_NUMBER} \
43-
-f manifests/prombench/nodes_gke.yaml
45+
-f manifests/prombench/nodes_$(PROVIDER).yaml

prombench/README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,18 +13,18 @@ The `/manifest` directory contains all the kubernetes manifest files.
1313
- `cluster-infra/` : These are the persistent components of the Main Node.
1414
- `prombench/` : These resources are created and destroyed for each prombench test.
1515

16-
## Providers
16+
## Setup and run prombench
1717

18-
Presently prombench supports following providers:
18+
Following sections consist of detail documentation to run prombench in their respective providers.
1919

20-
- [Google Kubernetes Engine](docs/gke.md)
20+
- Instructions for [Google Kubernetes Engine](docs/gke.md)
2121

2222
## Setup GitHub Actions
2323

2424
Place a workflow file in the `.github` directory of the repository.
2525
See the [prometheus/prometheus](https://github.com/prometheus/prometheus) repository for an example.
2626

27-
Create a github action `TEST_INFRA_GKE_AUTH` secret with the base64 encoded content of the `service-account.json` file.
27+
Create a github action `TEST_INFRA_PROVIDER_AUTH` secret with the base64 encoded content of the `service-account.json` file.
2828

2929
```
3030
cat $AUTH_FILE | base64 -w 0

0 commit comments

Comments
 (0)