Skip to content

Commit ca464ed

Browse files
committed
openshift/installer: add IaaS-agnostic E2E test
1 parent f5ed31a commit ca464ed

File tree

2 files changed

+106
-0
lines changed

2 files changed

+106
-0
lines changed

ci-operator/config/openshift/installer/openshift-installer-master.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,3 +164,6 @@ tests:
164164
commands: TEST_SUITE=openshift/conformance/parallel run-tests
165165
openshift_installer_upi:
166166
cluster_profile: vsphere
167+
- as: e2e
168+
commands: TEST_SUITE=openshift/conformance/parallel run-tests
169+
openshift_installer_random: {}

ci-operator/jobs/openshift/installer/openshift-installer-master-presubmits.yaml

Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,108 @@
11
presubmits:
22
openshift/installer:
3+
- agent: kubernetes
4+
always_run: false
5+
branches:
6+
- master
7+
context: ci/prow/e2e
8+
decorate: true
9+
decoration_config:
10+
skip_cloning: true
11+
labels:
12+
ci-operator.openshift.io/prowgen-controlled: "true"
13+
name: pull-ci-openshift-installer-master-e2e
14+
optional: true
15+
rerun_command: /test e2e
16+
spec:
17+
containers:
18+
- args:
19+
- -c
20+
- |
21+
set -eux
22+
target=$(awk < /usr/local/e2e-targets \
23+
--assign "r=$RANDOM" \
24+
'BEGIN { r /= 32767 } (r -= $1) <= 0 { print $2; exit }')
25+
case "$target" in
26+
aws) template=e2e; CLUSTER_TYPE=aws;;
27+
azure) template=e2e; CLUSTER_TYPE=azure4;;
28+
aws-upi) template=upi-e2e; CLUSTER_TYPE=aws;;
29+
vsphere) template=upi-e2e; CLUSTER_TYPE=vsphere;;
30+
*) echo >&2 "invalid target $target"; exit 1 ;;
31+
esac
32+
ln -s "/usr/local/job-definition/cluster-launch-installer-$template.yaml" /tmp/e2e
33+
ln -s "/usr/local/cluster-profiles/$CLUSTER_TYPE" /tmp/e2e-cluster-profile
34+
export CLUSTER_TYPE
35+
exec ci-operator \
36+
--artifact-dir=$(ARTIFACTS) \
37+
--give-pr-author-access-to-namespace=true \
38+
--secret-dir=/tmp/e2e-cluster-profile \
39+
--sentry-dsn-path=/etc/sentry-dsn/ci-operator \
40+
--target=e2e \
41+
--template=/tmp/e2e
42+
command:
43+
- bash
44+
env:
45+
- name: CONFIG_SPEC
46+
valueFrom:
47+
configMapKeyRef:
48+
key: openshift-installer-master.yaml
49+
name: ci-operator-master-configs
50+
- name: JOB_NAME_SAFE
51+
value: e2e
52+
- name: TEST_COMMAND
53+
value: TEST_SUITE=openshift/conformance/parallel run-tests
54+
image: ci-operator:latest
55+
imagePullPolicy: Always
56+
name: ""
57+
resources:
58+
requests:
59+
cpu: 10m
60+
volumeMounts:
61+
- mountPath: /usr/local/cluster-profiles/aws
62+
name: cluster-profile-aws
63+
- mountPath: /usr/local/cluster-profiles/azure4
64+
name: cluster-profile-azure4
65+
- mountPath: /usr/local/cluster-profiles/vsphere
66+
name: cluster-profile-vsphere
67+
- mountPath: /usr/local/e2e-targets
68+
name: e2e-targets
69+
subPath: e2e-targets
70+
- mountPath: /usr/local/job-definition
71+
name: job-definition
72+
- mountPath: /etc/sentry-dsn
73+
name: sentry-dsn
74+
readOnly: true
75+
serviceAccountName: ci-operator
76+
volumes:
77+
- name: cluster-profile-aws
78+
projected:
79+
sources:
80+
- secret:
81+
name: cluster-secrets-aws
82+
- name: cluster-profile-azure4
83+
projected:
84+
sources:
85+
- secret:
86+
name: cluster-secrets-azure4
87+
- name: cluster-profile-vsphere
88+
projected:
89+
sources:
90+
- secret:
91+
name: cluster-secrets-vsphere
92+
- configMap:
93+
name: e2e-targets
94+
name: e2e-targets
95+
- name: job-definition
96+
projected:
97+
sources:
98+
- configMap:
99+
name: prow-job-cluster-launch-installer-e2e
100+
- configMap:
101+
name: prow-job-cluster-launch-installer-upi-e2e
102+
- name: sentry-dsn
103+
secret:
104+
secretName: sentry-dsn
105+
trigger: (?m)^/test( | .* )e2e,?($|\s.*)
3106
- agent: kubernetes
4107
always_run: false
5108
branches:

0 commit comments

Comments
 (0)