Skip to content

Commit 2b1ae14

Browse files
Add upgrade workflow for kueue operator testing
1 parent b4faa6c commit 2b1ae14

13 files changed

Lines changed: 1627 additions & 0 deletions
Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
base_images:
2+
cli:
3+
name: "4.19"
4+
namespace: ocp
5+
tag: cli
6+
ocp_builder_rhel-9-base-openshift-4.19:
7+
name: builder
8+
namespace: ocp
9+
tag: rhel-9-base-openshift-4.19
10+
ocp_builder_rhel-9-golang-1.25-openshift-4.21:
11+
name: builder
12+
namespace: ocp
13+
tag: rhel-9-golang-1.25-openshift-4.21
14+
operator-sdk:
15+
name: "4.17"
16+
namespace: origin
17+
tag: operator-sdk
18+
build_root:
19+
from_repository: true
20+
images:
21+
- dockerfile_path: Dockerfile.ci
22+
inputs:
23+
ocp_builder_rhel-9-base-openshift-4.19:
24+
as:
25+
- registry.ci.openshift.org/ocp/builder:rhel-9-base-openshift-4.19
26+
ocp_builder_rhel-9-golang-1.25-openshift-4.21:
27+
as:
28+
- registry.ci.openshift.org/ocp/builder:rhel-9-golang-1.25-openshift-4.21
29+
to: kueue-operator
30+
- dockerfile_literal: |
31+
FROM src
32+
RUN dnf install -y jq skopeo git && dnf clean all
33+
from: src
34+
to: kueue-operator-src
35+
- dockerfile_literal: |
36+
FROM src
37+
COPY oc /usr/bin/oc
38+
RUN ln -s /usr/bin/oc /usr/bin/kubectl
39+
RUN wget -qO /usr/local/bin/jq https://github.com/jqlang/jq/releases/latest/download/jq-linux64 && chmod +x /usr/local/bin/jq
40+
RUN dnf install -y skopeo git podman && dnf clean all
41+
from: src
42+
inputs:
43+
cli:
44+
paths:
45+
- destination_dir: .
46+
source_path: /usr/bin/oc
47+
to: src-with-oc-and-kubectl
48+
releases:
49+
initial:
50+
candidate:
51+
product: ocp
52+
stream: nightly
53+
version: "4.18"
54+
latest:
55+
candidate:
56+
product: ocp
57+
stream: nightly
58+
version: "4.19"
59+
resources:
60+
'*':
61+
requests:
62+
cpu: "4"
63+
memory: 4Gi
64+
tests:
65+
- as: e2e-upgrade-4-18-to-4-19-kueue-1-1
66+
presubmit: true
67+
steps:
68+
allow_best_effort_post_steps: true
69+
cluster_profile: aws
70+
dependencies:
71+
OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE: release:initial
72+
OPENSHIFT_UPGRADE_RELEASE_IMAGE_OVERRIDE: release:latest
73+
env:
74+
BUNDLE_COMPONENT: kueue-bundle-1-1
75+
OPERAND_COMPONENT: kueue-operand-1-1
76+
OPERATOR_COMPONENT: kueue-operator-1-1
77+
TEST_TYPE: upgrade-conformance
78+
post:
79+
# NOTE: We inline the kueue must-gather step here instead of using
80+
# "chain: kueue-operator-post" because that chain includes
81+
# "ref: gather-must-gather", which conflicts with the same ref
82+
# already present in "chain: ipi-aws-post" (duplicate step name error).
83+
- as: kueue-must-gather
84+
best_effort: true
85+
cli: latest
86+
commands: |
87+
source "${SHARED_DIR}/env"
88+
make run-must
89+
from: kueue-operator-src
90+
resources:
91+
requests:
92+
cpu: 300m
93+
memory: 500Mi
94+
timeout: 20m0s
95+
- chain: ipi-aws-post
96+
pre:
97+
- chain: ipi-aws-pre-stableinitial
98+
test:
99+
- ref: openshift-e2e-test
100+
- chain: kueue-operator-test-upgrade
101+
- as: e2e-upgrade-4-18-to-4-19-kueue-1-2
102+
presubmit: true
103+
steps:
104+
allow_best_effort_post_steps: true
105+
cluster_profile: aws
106+
dependencies:
107+
OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE: release:initial
108+
OPENSHIFT_UPGRADE_RELEASE_IMAGE_OVERRIDE: release:latest
109+
env:
110+
BUNDLE_COMPONENT: kueue-bundle-1-2
111+
OPERAND_COMPONENT: kueue-operand-1-2
112+
OPERATOR_COMPONENT: kueue-operator-1-2
113+
TEST_TYPE: upgrade-conformance
114+
post:
115+
# NOTE: Inlined kueue must-gather; see comment in first test entry above.
116+
- as: kueue-must-gather
117+
best_effort: true
118+
cli: latest
119+
commands: |
120+
source "${SHARED_DIR}/env"
121+
make run-must
122+
from: kueue-operator-src
123+
resources:
124+
requests:
125+
cpu: 300m
126+
memory: 500Mi
127+
timeout: 20m0s
128+
- chain: ipi-aws-post
129+
pre:
130+
- chain: ipi-aws-pre-stableinitial
131+
test:
132+
- ref: openshift-e2e-test
133+
- chain: kueue-operator-test-upgrade
134+
zz_generated_metadata:
135+
branch: main
136+
org: openshift
137+
repo: kueue-operator
138+
variant: upgrade-from-4.18
Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
base_images:
2+
cli:
3+
name: "4.20"
4+
namespace: ocp
5+
tag: cli
6+
ocp_builder_rhel-9-base-openshift-4.19:
7+
name: builder
8+
namespace: ocp
9+
tag: rhel-9-base-openshift-4.19
10+
ocp_builder_rhel-9-golang-1.25-openshift-4.21:
11+
name: builder
12+
namespace: ocp
13+
tag: rhel-9-golang-1.25-openshift-4.21
14+
operator-sdk:
15+
name: "4.17"
16+
namespace: origin
17+
tag: operator-sdk
18+
build_root:
19+
from_repository: true
20+
images:
21+
- dockerfile_path: Dockerfile.ci
22+
inputs:
23+
ocp_builder_rhel-9-base-openshift-4.19:
24+
as:
25+
- registry.ci.openshift.org/ocp/builder:rhel-9-base-openshift-4.19
26+
ocp_builder_rhel-9-golang-1.25-openshift-4.21:
27+
as:
28+
- registry.ci.openshift.org/ocp/builder:rhel-9-golang-1.25-openshift-4.21
29+
to: kueue-operator
30+
- dockerfile_literal: |
31+
FROM src
32+
RUN dnf install -y jq skopeo git && dnf clean all
33+
from: src
34+
to: kueue-operator-src
35+
- dockerfile_literal: |
36+
FROM src
37+
COPY oc /usr/bin/oc
38+
RUN ln -s /usr/bin/oc /usr/bin/kubectl
39+
RUN wget -qO /usr/local/bin/jq https://github.com/jqlang/jq/releases/latest/download/jq-linux64 && chmod +x /usr/local/bin/jq
40+
RUN dnf install -y skopeo git podman && dnf clean all
41+
from: src
42+
inputs:
43+
cli:
44+
paths:
45+
- destination_dir: .
46+
source_path: /usr/bin/oc
47+
to: src-with-oc-and-kubectl
48+
releases:
49+
initial:
50+
candidate:
51+
product: ocp
52+
stream: nightly
53+
version: "4.19"
54+
latest:
55+
candidate:
56+
product: ocp
57+
stream: nightly
58+
version: "4.20"
59+
resources:
60+
'*':
61+
requests:
62+
cpu: "4"
63+
memory: 4Gi
64+
tests:
65+
- as: e2e-upgrade-4-19-to-4-20-kueue-1-1
66+
presubmit: true
67+
steps:
68+
allow_best_effort_post_steps: true
69+
cluster_profile: aws
70+
dependencies:
71+
OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE: release:initial
72+
OPENSHIFT_UPGRADE_RELEASE_IMAGE_OVERRIDE: release:latest
73+
env:
74+
BUNDLE_COMPONENT: kueue-bundle-1-1
75+
OPERAND_COMPONENT: kueue-operand-1-1
76+
OPERATOR_COMPONENT: kueue-operator-1-1
77+
TEST_TYPE: upgrade-conformance
78+
post:
79+
# NOTE: We inline the kueue must-gather step here instead of using
80+
# "chain: kueue-operator-post" because that chain includes
81+
# "ref: gather-must-gather", which conflicts with the same ref
82+
# already present in "chain: ipi-aws-post" (duplicate step name error).
83+
- as: kueue-must-gather
84+
best_effort: true
85+
cli: latest
86+
commands: |
87+
source "${SHARED_DIR}/env"
88+
make run-must
89+
from: kueue-operator-src
90+
resources:
91+
requests:
92+
cpu: 300m
93+
memory: 500Mi
94+
timeout: 20m0s
95+
- chain: ipi-aws-post
96+
pre:
97+
- chain: ipi-aws-pre-stableinitial
98+
test:
99+
- ref: openshift-e2e-test
100+
- chain: kueue-operator-test-upgrade
101+
- as: e2e-upgrade-4-19-to-4-20-kueue-1-2
102+
presubmit: true
103+
steps:
104+
allow_best_effort_post_steps: true
105+
cluster_profile: aws
106+
dependencies:
107+
OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE: release:initial
108+
OPENSHIFT_UPGRADE_RELEASE_IMAGE_OVERRIDE: release:latest
109+
env:
110+
BUNDLE_COMPONENT: kueue-bundle-1-2
111+
OPERAND_COMPONENT: kueue-operand-1-2
112+
OPERATOR_COMPONENT: kueue-operator-1-2
113+
TEST_TYPE: upgrade-conformance
114+
post:
115+
# NOTE: Inlined kueue must-gather; see comment in first test entry above.
116+
- as: kueue-must-gather
117+
best_effort: true
118+
cli: latest
119+
commands: |
120+
source "${SHARED_DIR}/env"
121+
make run-must
122+
from: kueue-operator-src
123+
resources:
124+
requests:
125+
cpu: 300m
126+
memory: 500Mi
127+
timeout: 20m0s
128+
- chain: ipi-aws-post
129+
pre:
130+
- chain: ipi-aws-pre-stableinitial
131+
test:
132+
- ref: openshift-e2e-test
133+
- chain: kueue-operator-test-upgrade
134+
zz_generated_metadata:
135+
branch: main
136+
org: openshift
137+
repo: kueue-operator
138+
variant: upgrade-from-4.19

0 commit comments

Comments
 (0)