Skip to content

Commit 6c7de57

Browse files
author
Moritz Clasmeier
committed
OLM tests
1 parent 2a60f6b commit 6c7de57

4 files changed

Lines changed: 81 additions & 13 deletions

File tree

.github/workflows/create-dev-cluster.yml

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,13 @@ on:
66
cluster-name:
77
required: true
88
type: string
9+
flavor:
10+
required: true
11+
type: string
12+
args:
13+
required: false
14+
type: string
15+
default: ''
916
outputs:
1017
cluster-name:
1118
description: "Name of the created cluster"
@@ -19,9 +26,9 @@ jobs:
1926
steps:
2027
- uses: stackrox/actions/infra/create-cluster@v1
2128
with:
22-
flavor: gke-default
29+
flavor: ${{ inputs.flavor }}
2330
name: ${{ inputs.cluster-name }}
24-
args: machine-type=e2-standard-4,nodes=3,gcp-image-type=ubuntu_containerd
31+
args: ${{ inputs.args }}
2532
lifespan: "2h"
2633
wait: true
2734
token: ${{ secrets.INFRA_CI_TOKEN }}

.github/workflows/e2e-tests.yml

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,14 @@ on:
99
image:
1010
required: true
1111
type: string
12+
cluster-type:
13+
required: false
14+
type: string
15+
default: 'gke'
16+
skip-olm-tests:
17+
required: false
18+
type: string
19+
default: 'true'
1220
env:
1321
REGISTRY: quay.io
1422
IMAGE_NAME: rhacs-eng/roxie
@@ -23,7 +31,6 @@ jobs:
2331
KUBECONFIG: /github/home/artifacts/kubeconfig
2432
INFRA_TOKEN: ${{ secrets.INFRA_CI_TOKEN }}
2533
INFRACTL: bin/infractl -k -e localhost:8443
26-
USE_GKE_GCLOUD_AUTH_PLUGIN: "True"
2734
steps:
2835
- name: Checkout
2936
uses: actions/checkout@v6
@@ -65,15 +72,21 @@ jobs:
6572
roxctl version
6673
6774
- name: Authenticate to GCloud
75+
if: inputs.cluster-type == 'gke'
6876
uses: google-github-actions/auth@v3
6977
with:
7078
credentials_json: ${{ secrets.ROXIE_CI_AUTOMATION_GCP_SA }}
7179

7280
- name: Set up Cloud SDK
81+
if: inputs.cluster-type == 'gke'
7382
uses: "google-github-actions/setup-gcloud@v3"
7483
with:
7584
install_components: "gke-gcloud-auth-plugin"
7685

86+
- name: Configure GKE auth plugin
87+
if: inputs.cluster-type == 'gke'
88+
run: echo "USE_GKE_GCLOUD_AUTH_PLUGIN=True" >> "$GITHUB_ENV"
89+
7790
- name: Download production infractl
7891
uses: stackrox/actions/infra/install-infractl@v1
7992

@@ -89,7 +102,7 @@ jobs:
89102
env:
90103
REGISTRY_USERNAME: ${{ secrets.QUAY_RHACS_ENG_RO_USERNAME }}
91104
REGISTRY_PASSWORD: ${{ secrets.QUAY_RHACS_ENG_RO_PASSWORD }}
92-
SKIP_OLM_TESTS: "true"
105+
SKIP_OLM_TESTS: ${{ inputs.skip-olm-tests == 'true' && 'true' || '' }}
93106
run: |
94107
make run-test-e2e
95108

.github/workflows/main-push.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@ jobs:
1515
create-dev-cluster:
1616
uses: ./.github/workflows/create-dev-cluster.yml
1717
with:
18-
cluster-name: infra-roxie-main-${{ github.run_number }}
18+
cluster-name: infra-roxie-main-${{ github.run_number }}-gke
19+
flavor: gke-default
20+
args: machine-type=e2-standard-4,nodes=3,gcp-image-type=ubuntu_containerd
1921
secrets: inherit
2022

2123
build-roxie-image:

.github/workflows/pr.yml

Lines changed: 54 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,38 @@ jobs:
1212
unit-tests:
1313
uses: ./.github/workflows/unit-tests.yml
1414

15-
create-dev-cluster:
15+
check-olm-label:
16+
runs-on: ubuntu-latest
17+
outputs:
18+
has-label: ${{ steps.check.outputs.has-label }}
19+
steps:
20+
- name: Check for olm-tests label
21+
id: check
22+
run: |
23+
has_label="${{ contains(github.event.pull_request.labels.*.name, 'olm-tests') }}"
24+
echo "has-label=${has_label}" >> "$GITHUB_OUTPUT"
25+
if [ "$has_label" = "true" ]; then
26+
echo "::notice::olm-tests label is set — OpenShift cluster will be created"
27+
else
28+
echo "::notice::olm-tests label is not set — skipping OpenShift cluster"
29+
fi
30+
31+
create-gke-cluster:
1632
uses: ./.github/workflows/create-dev-cluster.yml
1733
with:
18-
cluster-name: infra-roxie-pr-${{ github.event.pull_request.number }}
34+
cluster-name: infra-roxie-pr-${{ github.event.pull_request.number }}-gke
35+
flavor: gke-default
36+
args: machine-type=e2-standard-4,nodes=3,gcp-image-type=ubuntu_containerd
37+
secrets: inherit
38+
39+
create-openshift-cluster:
40+
needs: check-olm-label
41+
if: needs.check-olm-label.outputs.has-label == 'true'
42+
uses: ./.github/workflows/create-dev-cluster.yml
43+
with:
44+
cluster-name: infra-roxie-pr-${{ github.event.pull_request.number }}-openshift
45+
flavor: ocp-4
46+
args: master-node-type=e2-standard-4,worker-node-type=e2-standard-4,master-node-count=3,worker-node-count=3
1947
secrets: inherit
2048

2149
build-roxie-image:
@@ -26,17 +54,35 @@ jobs:
2654
secrets: inherit
2755

2856
e2e-tests:
29-
needs: [ create-dev-cluster, build-roxie-image ]
57+
needs: [ create-gke-cluster, build-roxie-image ]
58+
uses: ./.github/workflows/e2e-tests.yml
59+
with:
60+
cluster-name: ${{ needs.create-gke-cluster.outputs.cluster-name }}
61+
image: ${{ needs.build-roxie-image.outputs.image }}
62+
secrets: inherit
63+
64+
e2e-tests-openshift:
65+
needs: [ create-openshift-cluster, build-roxie-image ]
3066
uses: ./.github/workflows/e2e-tests.yml
3167
with:
32-
cluster-name: ${{ needs.create-dev-cluster.outputs.cluster-name }}
68+
cluster-name: ${{ needs.create-openshift-cluster.outputs.cluster-name }}
3369
image: ${{ needs.build-roxie-image.outputs.image }}
70+
cluster-type: openshift
71+
skip-olm-tests: 'false'
72+
secrets: inherit
73+
74+
delete-gke-cluster:
75+
if: ${{ always() && needs.create-gke-cluster.result == 'success' }}
76+
needs: [ create-gke-cluster, e2e-tests ]
77+
uses: ./.github/workflows/delete-dev-cluster.yml
78+
with:
79+
cluster-name: ${{ needs.create-gke-cluster.outputs.cluster-name }}
3480
secrets: inherit
3581

36-
delete-dev-cluster:
37-
if: ${{ always() && needs.create-dev-cluster.result == 'success' }}
38-
needs: [ create-dev-cluster, e2e-tests ]
82+
delete-openshift-cluster:
83+
if: ${{ always() && needs.create-openshift-cluster.result == 'success' }}
84+
needs: [ create-openshift-cluster, e2e-tests-openshift ]
3985
uses: ./.github/workflows/delete-dev-cluster.yml
4086
with:
41-
cluster-name: ${{ needs.create-dev-cluster.outputs.cluster-name }}
87+
cluster-name: ${{ needs.create-openshift-cluster.outputs.cluster-name }}
4288
secrets: inherit

0 commit comments

Comments
 (0)