Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: baremetal-operator-system
resources:
- https://github.com/metal3-io/baremetal-operator/config/overlays/basic-auth_tls?ref=release-0.9&timeout=120s
- https://github.com/metal3-io/baremetal-operator/config/overlays/basic-auth_tls?ref=release-0.12&timeout=120s
configMapGenerator:
- name: ironic
behavior: create
Expand All @@ -19,7 +19,7 @@ patches:
name: controller-manager
images:
- name: quay.io/metal3-io/baremetal-operator
newTag: release-0.9
newTag: release-0.12
# We cannot use suffix hashes since the kustomizations we build on
# cannot be aware of what suffixes we add.
generatorOptions:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- https://github.com/metal3-io/baremetal-operator/config/namespace?ref=release-0.9
- https://github.com/metal3-io/baremetal-operator/config/default?ref=release-0.9
- https://github.com/metal3-io/baremetal-operator/config/namespace?ref=release-0.12
- https://github.com/metal3-io/baremetal-operator/config/default?ref=release-0.12
patches:
- patch: |
# Enable test mode (fixture provider instead of ironic)
Expand All @@ -18,4 +18,4 @@ patches:
name: controller-manager
images:
- name: quay.io/metal3-io/baremetal-operator
newTag: release-0.9
newTag: release-0.12
2 changes: 1 addition & 1 deletion hack/ci-e2e.sh
Original file line number Diff line number Diff line change
Expand Up @@ -199,9 +199,9 @@ export ISO_IMAGE_URL="http://${IP_ADDRESS}/sysrescue-out.iso"
# Generate credentials
BMO_OVERLAYS=(
"${REPO_ROOT}/config/overlays/e2e"
"${REPO_ROOT}/config/overlays/e2e-release-0.9"
"${REPO_ROOT}/config/overlays/e2e-release-0.10"
"${REPO_ROOT}/config/overlays/e2e-release-0.11"
"${REPO_ROOT}/config/overlays/e2e-release-0.12"
)

IRONIC_USERNAME="$(uuidgen)"
Expand Down
6 changes: 3 additions & 3 deletions test/e2e/config/fixture.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -64,16 +64,16 @@ intervals:
bmoIronicUpgradeSpecs:
- deployIronic: false
deployBMO: true
initBMOKustomization: "../../config/overlays/fixture-release-0.9"
initBMOKustomization: "../../config/overlays/fixture-release-0.10"
upgradeEntityKustomization: "../../config/overlays/fixture"
upgradeEntityName: "bmo"
- deployIronic: false
deployBMO: true
initBMOKustomization: "../../config/overlays/fixture-release-0.10"
initBMOKustomization: "../../config/overlays/fixture-release-0.11"
upgradeEntityKustomization: "../../config/overlays/fixture"
upgradeEntityName: "bmo"
- deployIronic: false
deployBMO: true
initBMOKustomization: "../../config/overlays/fixture-release-0.11"
initBMOKustomization: "../../config/overlays/fixture-release-0.12"
upgradeEntityKustomization: "../../config/overlays/fixture"
upgradeEntityName: "bmo"
35 changes: 21 additions & 14 deletions test/e2e/config/ironic.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ images:
# - name: quay.io/metal3-io/ironic:local
# loadBehavior: tryLoad
# Save some time and network by using cached images if available
- name: quay.io/metal3-io/baremetal-operator:release-0.9
loadBehavior: tryLoad
- name: quay.io/metal3-io/baremetal-operator:release-0.10
loadBehavior: tryLoad
- name: quay.io/metal3-io/baremetal-operator:release-0.11
loadBehavior: tryLoad
- name: quay.io/metal3-io/baremetal-operator:release-0.12
loadBehavior: tryLoad
- name: quay.io/jetstack/cert-manager-cainjector:v1.17.1
loadBehavior: tryLoad
- name: quay.io/jetstack/cert-manager-webhook:v1.17.1
Expand Down Expand Up @@ -92,13 +92,6 @@ kindExtraPortMappings:


bmoIronicUpgradeSpecs:
# Upgrade BMO 0.9 -> main
- deployIronic: true
deployBMO: true
initBMOKustomization: "../../config/overlays/e2e-release-0.9"
initIronicKustomization: "data/ironic-standalone-operator/ironic/overlays/e2e"
upgradeEntityKustomization: "../../config/overlays/e2e"
upgradeEntityName: "bmo"
# Upgrade BMO 0.10 -> main
- deployIronic: true
deployBMO: true
Expand All @@ -113,13 +106,13 @@ bmoIronicUpgradeSpecs:
initIronicKustomization: "data/ironic-standalone-operator/ironic/overlays/e2e"
upgradeEntityKustomization: "../../config/overlays/e2e"
upgradeEntityName: "bmo"
# Upgrade Ironic 27.0 -> latest | BMO 0.9
# Upgrade BMO 0.12 -> main
- deployIronic: true
deployBMO: true
initBMOKustomization: "../../config/overlays/e2e-release-0.9"
initIronicKustomization: "data/ironic-standalone-operator/ironic/overlays/e2e-release-27.0"
upgradeEntityKustomization: "data/ironic-standalone-operator/ironic/overlays/e2e"
upgradeEntityName: "ironic"
initBMOKustomization: "../../config/overlays/e2e-release-0.12"
initIronicKustomization: "data/ironic-standalone-operator/ironic/overlays/e2e"
upgradeEntityKustomization: "../../config/overlays/e2e"
upgradeEntityName: "bmo"
# Upgrade Ironic 28.0 -> latest | BMO 0.10
- deployIronic: true
deployBMO: true
Expand Down Expand Up @@ -148,3 +141,17 @@ bmoIronicUpgradeSpecs:
initIronicKustomization: "data/ironic-standalone-operator/ironic/overlays/e2e-release-31.0"
upgradeEntityKustomization: "data/ironic-standalone-operator/ironic/overlays/e2e"
upgradeEntityName: "ironic"
# Upgrade Ironic 32.0 -> latest | BMO 0.11
- deployIronic: true
deployBMO: true
initBMOKustomization: "../../config/overlays/e2e-release-0.11"
initIronicKustomization: "data/ironic-standalone-operator/ironic/overlays/e2e-release-32.0"
upgradeEntityKustomization: "data/ironic-standalone-operator/ironic/overlays/e2e"
upgradeEntityName: "ironic"
# Upgrade Ironic 33.0 -> latest | BMO 0.12
- deployIronic: true
deployBMO: true
initBMOKustomization: "../../config/overlays/e2e-release-0.12"
initIronicKustomization: "data/ironic-standalone-operator/ironic/overlays/e2e-release-33.0"
upgradeEntityKustomization: "data/ironic-standalone-operator/ironic/overlays/e2e"
upgradeEntityName: "ironic"
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: baremetal-operator-system

resources:
- ../../base

components:
- ../../../components/tls
- ../../../components/basic-auth

patches:
- target:
kind: Ironic
name: ironic
patch: |-
- op: replace
path: /spec/version
value: "32.0"
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: baremetal-operator-system

resources:
- ../../base

components:
- ../../../components/tls
- ../../../components/basic-auth

patches:
- target:
kind: Ironic
name: ironic
patch: |-
- op: replace
path: /spec/version
value: "33.0"
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ kind: Kustomization
namespace: ironic-standalone-operator-system

resources:
- https://github.com/metal3-io/ironic-standalone-operator/releases/download/v0.5.2/install.yaml
- https://github.com/metal3-io/ironic-standalone-operator/releases/download/v0.7.0/install.yaml
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This will not work for the older versions. IrSO v0.7.0 only supports Ironic v31 - v33. I still see tests with Ironic v28 - v30 in the config. These will break.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we parameterize this?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No we should not parameterize. If we must test more Ironic versions than the latest IrSO supports, we will need multiple IrSO versions. Just make a copy with the newer version, like we have for each version of Ironic. We may need to add the IrSO overlay also to the e2e upgrade config so it can be different per test.

For example we could test this:

  • IrSO v0.5 | Ironic v28 -> v31 ("latest" for IrSO v0.5)
  • IrSO v0.5 | Ironic v29 -> v31
  • IrSO v0.5 | Ironic v30 -> v31
  • IrSO v0.7 | Ironic v31 -> latest (v33 for IrSO v0.7)
  • IrSO v0.7 | Ironic v32 -> latest
  • IrSO v0.7 | Ironic v33 -> latest <-- This we can remove since there is no newer version than v33.

Note that IrSO v0.5 cannot use Ironic > v31. When we upgrade to "latest" we really upgrade to the latest supported version by IrSO.


generatorOptions:
disableNameSuffixHash: true
Expand Down