diff --git a/api/v1beta1/agentserviceconfig_types.go b/api/v1beta1/agentserviceconfig_types.go index 7e8fe0ac98f..f49fdc528dc 100644 --- a/api/v1beta1/agentserviceconfig_types.go +++ b/api/v1beta1/agentserviceconfig_types.go @@ -36,7 +36,7 @@ type OSImage struct { // +optional // Deprecated: this field is ignored (will be removed in a future release). RootFSUrl string `json:"rootFSUrl"` - // The CPU architecture of the image (x86_64/arm64/etc). + // The CPU architecture of the image (x86_64/aarch64/etc). // +optional CPUArchitecture string `json:"cpuArchitecture"` } diff --git a/config/crd/bases/agent-install.openshift.io_agentserviceconfigs.yaml b/config/crd/bases/agent-install.openshift.io_agentserviceconfigs.yaml index 40cdd7ee0b1..5e900c7bc51 100644 --- a/config/crd/bases/agent-install.openshift.io_agentserviceconfigs.yaml +++ b/config/crd/bases/agent-install.openshift.io_agentserviceconfigs.yaml @@ -582,7 +582,7 @@ spec: version it is associated with. properties: cpuArchitecture: - description: The CPU architecture of the image (x86_64/arm64/etc). + description: The CPU architecture of the image (x86_64/aarch64/etc). type: string openshiftVersion: description: OpenshiftVersion is the Major.Minor version of diff --git a/config/crd/bases/agent-install.openshift.io_hypershiftagentserviceconfigs.yaml b/config/crd/bases/agent-install.openshift.io_hypershiftagentserviceconfigs.yaml index 794a0821f74..ccb00bce3b6 100644 --- a/config/crd/bases/agent-install.openshift.io_hypershiftagentserviceconfigs.yaml +++ b/config/crd/bases/agent-install.openshift.io_hypershiftagentserviceconfigs.yaml @@ -594,7 +594,7 @@ spec: version it is associated with. properties: cpuArchitecture: - description: The CPU architecture of the image (x86_64/arm64/etc). + description: The CPU architecture of the image (x86_64/aarch64/etc). type: string openshiftVersion: description: OpenshiftVersion is the Major.Minor version of diff --git a/config/crd/resources.yaml b/config/crd/resources.yaml index f21a09a202d..27499d12c05 100644 --- a/config/crd/resources.yaml +++ b/config/crd/resources.yaml @@ -1600,7 +1600,7 @@ spec: version it is associated with. properties: cpuArchitecture: - description: The CPU architecture of the image (x86_64/arm64/etc). + description: The CPU architecture of the image (x86_64/aarch64/etc). type: string openshiftVersion: description: OpenshiftVersion is the Major.Minor version of @@ -2265,7 +2265,7 @@ spec: version it is associated with. properties: cpuArchitecture: - description: The CPU architecture of the image (x86_64/arm64/etc). + description: The CPU architecture of the image (x86_64/aarch64/etc). type: string openshiftVersion: description: OpenshiftVersion is the Major.Minor version of diff --git a/config/manager/manager.yaml b/config/manager/manager.yaml index 6b4ebdc9be3..86599628524 100644 --- a/config/manager/manager.yaml +++ b/config/manager/manager.yaml @@ -43,7 +43,7 @@ spec: - name: INSTALLER_IMAGE value: quay.io/edge-infrastructure/assisted-installer:latest - name: OS_IMAGES - value: '[{"openshift_version":"4.8","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso","version":"48.84.202109241901-0"},{"openshift_version":"4.9","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso","version":"49.84.202207192205-0"},{"openshift_version":"4.10","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-x86_64-live.x86_64.iso","version":"410.84.202207061638-0"},{"openshift_version":"4.10","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-aarch64-live.aarch64.iso","version":"410.84.202207051516-0"},{"openshift_version":"4.11","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-x86_64-live.x86_64.iso","version":"411.86.202208112011-0"},{"openshift_version":"4.11","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-aarch64-live.aarch64.iso","version":"411.86.202208111758-0"},{"openshift_version":"4.12","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-x86_64-live.x86_64.iso","version":"412.86.202208101039-0"},{"openshift_version":"4.12","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso","version":"412.86.202208101040-0"}]' # os images + value: '[{"openshift_version":"4.8","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso","version":"48.84.202109241901-0"},{"openshift_version":"4.9","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso","version":"49.84.202207192205-0"},{"openshift_version":"4.10","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-x86_64-live.x86_64.iso","version":"410.84.202207061638-0"},{"openshift_version":"4.10","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-aarch64-live.aarch64.iso","version":"410.84.202207051516-0"},{"openshift_version":"4.11","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-x86_64-live.x86_64.iso","version":"411.86.202208112011-0"},{"openshift_version":"4.11","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-aarch64-live.aarch64.iso","version":"411.86.202208111758-0"},{"openshift_version":"4.12","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-x86_64-live.x86_64.iso","version":"412.86.202208101039-0"},{"openshift_version":"4.12","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso","version":"412.86.202208101040-0"}]' # os images - name: SERVICE_ACCOUNT_NAME valueFrom: fieldRef: diff --git a/config/samples/agent-install.openshift.io_v1beta1_agentserviceconfig.yaml b/config/samples/agent-install.openshift.io_v1beta1_agentserviceconfig.yaml index 89c6247791b..2e19bc2bc8e 100644 --- a/config/samples/agent-install.openshift.io_v1beta1_agentserviceconfig.yaml +++ b/config/samples/agent-install.openshift.io_v1beta1_agentserviceconfig.yaml @@ -44,7 +44,7 @@ spec: openshiftVersion: '4.10' url: https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-x86_64-live.x86_64.iso version: 410.84.202207061638-0 - - cpuArchitecture: arm64 + - cpuArchitecture: aarch64 openshiftVersion: '4.10' url: https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-aarch64-live.aarch64.iso version: 410.84.202207051516-0 @@ -52,7 +52,7 @@ spec: openshiftVersion: '4.11' url: https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-x86_64-live.x86_64.iso version: 411.86.202208112011-0 - - cpuArchitecture: arm64 + - cpuArchitecture: aarch64 openshiftVersion: '4.11' url: https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-aarch64-live.aarch64.iso version: 411.86.202208111758-0 @@ -60,7 +60,7 @@ spec: openshiftVersion: '4.12' url: https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-x86_64-live.x86_64.iso version: 412.86.202208101039-0 - - cpuArchitecture: arm64 + - cpuArchitecture: aarch64 openshiftVersion: '4.12' url: https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso version: 412.86.202208101040-0 diff --git a/data/default_os_images.json b/data/default_os_images.json index c82a9b33082..baf74e89622 100644 --- a/data/default_os_images.json +++ b/data/default_os_images.json @@ -19,7 +19,7 @@ }, { "openshift_version": "4.10", - "cpu_architecture": "arm64", + "cpu_architecture": "aarch64", "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-aarch64-live.aarch64.iso", "version": "410.84.202207051516-0" }, @@ -31,7 +31,7 @@ }, { "openshift_version": "4.11", - "cpu_architecture": "arm64", + "cpu_architecture": "aarch64", "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-aarch64-live.aarch64.iso", "version": "411.86.202208111758-0" }, @@ -43,7 +43,7 @@ }, { "openshift_version": "4.12", - "cpu_architecture": "arm64", + "cpu_architecture": "aarch64", "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso", "version": "412.86.202208101040-0" } diff --git a/data/default_release_images.json b/data/default_release_images.json index 04b769aa15f..8859c52babc 100644 --- a/data/default_release_images.json +++ b/data/default_release_images.json @@ -28,9 +28,9 @@ }, { "openshift_version": "4.10", - "cpu_architecture": "arm64", + "cpu_architecture": "aarch64", "cpu_architectures": [ - "arm64" + "aarch64" ], "url": "quay.io/openshift-release-dev/ocp-release:4.10.34-aarch64", "version": "4.10.34" @@ -47,9 +47,9 @@ }, { "openshift_version": "4.11", - "cpu_architecture": "arm64", + "cpu_architecture": "aarch64", "cpu_architectures": [ - "arm64" + "aarch64" ], "url": "quay.io/openshift-release-dev/ocp-release:4.11.6-aarch64", "version": "4.11.6" @@ -59,7 +59,7 @@ "cpu_architecture": "multi", "cpu_architectures": [ "x86_64", - "arm64", + "aarch64", "ppc64le", "s390x" ], @@ -78,9 +78,9 @@ }, { "openshift_version": "4.12", - "cpu_architecture": "arm64", + "cpu_architecture": "aarch64", "cpu_architectures": [ - "arm64" + "aarch64" ], "url": "quay.io/openshift-release-dev/ocp-release:4.12.0-ec.3-aarch64", "support_level": "beta", diff --git a/deploy/olm-catalog/manifests/agent-install.openshift.io_agentserviceconfigs.yaml b/deploy/olm-catalog/manifests/agent-install.openshift.io_agentserviceconfigs.yaml index 2c9a4bee406..c59b4cf1778 100644 --- a/deploy/olm-catalog/manifests/agent-install.openshift.io_agentserviceconfigs.yaml +++ b/deploy/olm-catalog/manifests/agent-install.openshift.io_agentserviceconfigs.yaml @@ -580,7 +580,7 @@ spec: version it is associated with. properties: cpuArchitecture: - description: The CPU architecture of the image (x86_64/arm64/etc). + description: The CPU architecture of the image (x86_64/aarch64/etc). type: string openshiftVersion: description: OpenshiftVersion is the Major.Minor version of diff --git a/deploy/olm-catalog/manifests/agent-install.openshift.io_hypershiftagentserviceconfigs.yaml b/deploy/olm-catalog/manifests/agent-install.openshift.io_hypershiftagentserviceconfigs.yaml index a0567f6f469..82b13ba3d11 100644 --- a/deploy/olm-catalog/manifests/agent-install.openshift.io_hypershiftagentserviceconfigs.yaml +++ b/deploy/olm-catalog/manifests/agent-install.openshift.io_hypershiftagentserviceconfigs.yaml @@ -592,7 +592,7 @@ spec: version it is associated with. properties: cpuArchitecture: - description: The CPU architecture of the image (x86_64/arm64/etc). + description: The CPU architecture of the image (x86_64/aarch64/etc). type: string openshiftVersion: description: OpenshiftVersion is the Major.Minor version of diff --git a/deploy/olm-catalog/manifests/assisted-service-operator.clusterserviceversion.yaml b/deploy/olm-catalog/manifests/assisted-service-operator.clusterserviceversion.yaml index 2f827378f35..bf1736844d0 100644 --- a/deploy/olm-catalog/manifests/assisted-service-operator.clusterserviceversion.yaml +++ b/deploy/olm-catalog/manifests/assisted-service-operator.clusterserviceversion.yaml @@ -78,7 +78,7 @@ metadata: "version": "410.84.202207061638-0" }, { - "cpuArchitecture": "arm64", + "cpuArchitecture": "aarch64", "openshiftVersion": "4.10", "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-aarch64-live.aarch64.iso", "version": "410.84.202207051516-0" @@ -90,7 +90,7 @@ metadata: "version": "411.86.202208112011-0" }, { - "cpuArchitecture": "arm64", + "cpuArchitecture": "aarch64", "openshiftVersion": "4.11", "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-aarch64-live.aarch64.iso", "version": "411.86.202208111758-0" @@ -102,7 +102,7 @@ metadata: "version": "412.86.202208101039-0" }, { - "cpuArchitecture": "arm64", + "cpuArchitecture": "aarch64", "openshiftVersion": "4.12", "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso", "version": "412.86.202208101040-0" @@ -772,7 +772,7 @@ spec: - name: INSTALLER_IMAGE value: quay.io/edge-infrastructure/assisted-installer:latest - name: OS_IMAGES - value: '[{"openshift_version":"4.8","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso","version":"48.84.202109241901-0"},{"openshift_version":"4.9","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso","version":"49.84.202207192205-0"},{"openshift_version":"4.10","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-x86_64-live.x86_64.iso","version":"410.84.202207061638-0"},{"openshift_version":"4.10","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-aarch64-live.aarch64.iso","version":"410.84.202207051516-0"},{"openshift_version":"4.11","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-x86_64-live.x86_64.iso","version":"411.86.202208112011-0"},{"openshift_version":"4.11","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-aarch64-live.aarch64.iso","version":"411.86.202208111758-0"},{"openshift_version":"4.12","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-x86_64-live.x86_64.iso","version":"412.86.202208101039-0"},{"openshift_version":"4.12","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso","version":"412.86.202208101040-0"}]' + value: '[{"openshift_version":"4.8","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso","version":"48.84.202109241901-0"},{"openshift_version":"4.9","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso","version":"49.84.202207192205-0"},{"openshift_version":"4.10","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-x86_64-live.x86_64.iso","version":"410.84.202207061638-0"},{"openshift_version":"4.10","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-aarch64-live.aarch64.iso","version":"410.84.202207051516-0"},{"openshift_version":"4.11","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-x86_64-live.x86_64.iso","version":"411.86.202208112011-0"},{"openshift_version":"4.11","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-aarch64-live.aarch64.iso","version":"411.86.202208111758-0"},{"openshift_version":"4.12","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-x86_64-live.x86_64.iso","version":"412.86.202208101039-0"},{"openshift_version":"4.12","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso","version":"412.86.202208101040-0"}]' - name: SERVICE_ACCOUNT_NAME valueFrom: fieldRef: diff --git a/deploy/podman/configmap.yml b/deploy/podman/configmap.yml index f0cd1c86ba4..cbd2973063a 100644 --- a/deploy/podman/configmap.yml +++ b/deploy/podman/configmap.yml @@ -21,12 +21,12 @@ data: ISO_IMAGE_TYPE: "full-iso" LISTEN_PORT: "8888" NTP_DEFAULT_SERVER: "" - OS_IMAGES: '[{"openshift_version":"4.8","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso","version":"48.84.202109241901-0"},{"openshift_version":"4.9","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso","version":"49.84.202207192205-0"},{"openshift_version":"4.10","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-x86_64-live.x86_64.iso","version":"410.84.202207061638-0"},{"openshift_version":"4.10","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-aarch64-live.aarch64.iso","version":"410.84.202207051516-0"},{"openshift_version":"4.11","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-x86_64-live.x86_64.iso","version":"411.86.202208112011-0"},{"openshift_version":"4.11","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-aarch64-live.aarch64.iso","version":"411.86.202208111758-0"},{"openshift_version":"4.12","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-x86_64-live.x86_64.iso","version":"412.86.202208101039-0"},{"openshift_version":"4.12","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso","version":"412.86.202208101040-0"}]' + OS_IMAGES: '[{"openshift_version":"4.8","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso","version":"48.84.202109241901-0"},{"openshift_version":"4.9","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso","version":"49.84.202207192205-0"},{"openshift_version":"4.10","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-x86_64-live.x86_64.iso","version":"410.84.202207061638-0"},{"openshift_version":"4.10","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-aarch64-live.aarch64.iso","version":"410.84.202207051516-0"},{"openshift_version":"4.11","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-x86_64-live.x86_64.iso","version":"411.86.202208112011-0"},{"openshift_version":"4.11","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-aarch64-live.aarch64.iso","version":"411.86.202208111758-0"},{"openshift_version":"4.12","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-x86_64-live.x86_64.iso","version":"412.86.202208101039-0"},{"openshift_version":"4.12","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso","version":"412.86.202208101040-0"}]' POSTGRESQL_DATABASE: installer POSTGRESQL_PASSWORD: admin POSTGRESQL_USER: admin PUBLIC_CONTAINER_REGISTRIES: 'quay.io' - RELEASE_IMAGES: '[{"openshift_version":"4.8","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.8.50-x86_64","version":"4.8.50"},{"openshift_version":"4.9","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.9.48-x86_64","version":"4.9.48"},{"openshift_version":"4.10","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.10.34-x86_64","version":"4.10.34"},{"openshift_version":"4.10","cpu_architecture":"arm64","cpu_architectures":["arm64"],"url":"quay.io/openshift-release-dev/ocp-release:4.10.34-aarch64","version":"4.10.34"},{"openshift_version":"4.11","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.6-x86_64","version":"4.11.6","default":true},{"openshift_version":"4.11","cpu_architecture":"arm64","cpu_architectures":["arm64"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.6-aarch64","version":"4.11.6"},{"openshift_version":"4.11.0-multi","cpu_architecture":"multi","cpu_architectures":["x86_64","arm64","ppc64le","s390x"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.0-multi","version":"4.11.0-multi"},{"openshift_version":"4.12","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.12.0-ec.3-x86_64","support_level":"beta","version":"4.12.0-ec.3"},{"openshift_version":"4.12","cpu_architecture":"arm64","cpu_architectures":["arm64"],"url":"quay.io/openshift-release-dev/ocp-release:4.12.0-ec.3-aarch64","support_level":"beta","version":"4.12.0-ec.3"}]' + RELEASE_IMAGES: '[{"openshift_version":"4.8","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.8.50-x86_64","version":"4.8.50"},{"openshift_version":"4.9","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.9.48-x86_64","version":"4.9.48"},{"openshift_version":"4.10","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.10.34-x86_64","version":"4.10.34"},{"openshift_version":"4.10","cpu_architecture":"aarch64","cpu_architectures":["aarch64"],"url":"quay.io/openshift-release-dev/ocp-release:4.10.34-aarch64","version":"4.10.34"},{"openshift_version":"4.11","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.6-x86_64","version":"4.11.6","default":true},{"openshift_version":"4.11","cpu_architecture":"aarch64","cpu_architectures":["aarch64"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.6-aarch64","version":"4.11.6"},{"openshift_version":"4.11.0-multi","cpu_architecture":"multi","cpu_architectures":["x86_64","aarch64","ppc64le","s390x"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.0-multi","version":"4.11.0-multi"},{"openshift_version":"4.12","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.12.0-ec.3-x86_64","support_level":"beta","version":"4.12.0-ec.3"},{"openshift_version":"4.12","cpu_architecture":"aarch64","cpu_architectures":["aarch64"],"url":"quay.io/openshift-release-dev/ocp-release:4.12.0-ec.3-aarch64","support_level":"beta","version":"4.12.0-ec.3"}]' SERVICE_BASE_URL: http://127.0.0.1:8090 STORAGE: filesystem ENABLE_UPGRADE_AGENT: "false" diff --git a/deploy/podman/configmap_tls.yml b/deploy/podman/configmap_tls.yml index e07119a2429..85604c66689 100644 --- a/deploy/podman/configmap_tls.yml +++ b/deploy/podman/configmap_tls.yml @@ -25,12 +25,12 @@ data: ISO_IMAGE_TYPE: "full-iso" LISTEN_PORT: "8888" NTP_DEFAULT_SERVER: "" - OS_IMAGES: '[{"openshift_version":"4.10","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.16/rhcos-4.10.16-x86_64-live.x86_64.iso","version":"410.84.202205191234-0"},{"openshift_version":"4.10","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.16/rhcos-4.10.16-aarch64-live.aarch64.iso","version":"410.84.202205191023-0"},{"openshift_version":"4.11","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.0/rhcos-4.11.0-x86_64-live.x86_64.iso","version":"411.86.202207150124-0"},{"openshift_version":"4.11","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.0/rhcos-4.11.0-aarch64-live.aarch64.iso","version":"411.86.202207130959-0"}]' + OS_IMAGES: '[{"openshift_version":"4.10","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.16/rhcos-4.10.16-x86_64-live.x86_64.iso","version":"410.84.202205191234-0"},{"openshift_version":"4.10","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.16/rhcos-4.10.16-aarch64-live.aarch64.iso","version":"410.84.202205191023-0"},{"openshift_version":"4.11","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.0/rhcos-4.11.0-x86_64-live.x86_64.iso","version":"411.86.202207150124-0"},{"openshift_version":"4.11","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.0/rhcos-4.11.0-aarch64-live.aarch64.iso","version":"411.86.202207130959-0"}]' POSTGRESQL_DATABASE: installer POSTGRESQL_PASSWORD: admin POSTGRESQL_USER: admin PUBLIC_CONTAINER_REGISTRIES: 'quay.io' - RELEASE_IMAGES: '[{"openshift_version":"4.10","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.10.28-x86_64","version":"4.10.28"},{"openshift_version":"4.10","cpu_architecture":"arm64","cpu_architectures":["arm64"],"url":"quay.io/openshift-release-dev/ocp-release:4.10.28-aarch64","version":"4.10.28"},{"openshift_version":"4.11","cpu_architecture":"multi","cpu_architectures":["x86_64","arm64","ppc64le","s390x"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.0-multi","version":"4.11.0","default":true}]' + RELEASE_IMAGES: '[{"openshift_version":"4.10","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.10.28-x86_64","version":"4.10.28"},{"openshift_version":"4.10","cpu_architecture":"aarch64","cpu_architectures":["aarch64"],"url":"quay.io/openshift-release-dev/ocp-release:4.10.28-aarch64","version":"4.10.28"},{"openshift_version":"4.11","cpu_architecture":"multi","cpu_architectures":["x86_64","aarch64","ppc64le","s390x"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.0-multi","version":"4.11.0","default":true}]' SERVICE_BASE_URL: https://127.0.0.1:8090 STORAGE: filesystem ENABLE_UPGRADE_AGENT: "false" \ No newline at end of file diff --git a/docs/enhancements/arm64-cpu-architecture.md b/docs/enhancements/arm64-cpu-architecture.md index e184d61fa9f..f1d981a113b 100644 --- a/docs/enhancements/arm64-cpu-architecture.md +++ b/docs/enhancements/arm64-cpu-architecture.md @@ -24,7 +24,7 @@ Although x86_64 is popular in many use cases, other CPU architectures are common ### Non-Goals * The assisted-service and assisted-image-service will not be built for arm64. -* No support for clusters with hosts of multiple architectures (e.g. x86_64 + arm64). +* No support for clusters with hosts of multiple architectures (e.g. x86_64 + aarch64). * Implementation for kube-api as ClusterImageSet and AgentServiceConfig CRDs. Though the feature design should consider implications. * Day2 and Late binding won't be supported in first phase. * On-Prem flows, for now the focus is for SaaS users. @@ -46,7 +46,7 @@ This should be handled in similar to the current flows by modifying relevant Doc [Versions](https://github.com/openshift/assisted-service/blob/master/internal/versions/versions.go) should have CPU architecture granularity for each API. So that OCP release images and RHCOS images of multiple architectures could be supported. -The assisted-service should support the arm64 variant of RHCOS images and OCP release image (for OpenShift >= 4.9). +The assisted-service should support the aarch64 variant of RHCOS images and OCP release image (for OpenShift >= 4.9). As a preparation for supporting multiple CPU architectures in Version, the RHCOS images and release images information from OPENSHIFT_VERSIONS environment variable should be extracted into new variables: OS_IMAGES and RELEASE_IMAGES. We should probably use a simple array structure instead of mapping, to align with the k8s API convention in [AgentServiceConfig](https://github.com/openshift/assisted-service/blob/77cb9d3348dafd2abd61fd7c8066e7e7a7805d95/config/samples/agent-install.openshift.io_v1beta1_agentserviceconfig.yaml#L18-L22) structure. @@ -71,7 +71,7 @@ A list of available release images (one for each minor OCP version and CPU archi }, { "openshift_version": "4.9", - "cpu_architecture": "arm64", + "cpu_architecture": "aarch64", "url": "quay.io/openshift-release-dev/ocp-release:4.9.0-rc.4-aarch64", "version": "4.9.0-rc.4" } @@ -92,7 +92,7 @@ A list of available OS images (one for each minor OCP version and CPU architectu }, { "openshift_version": "4.9", - "cpu_architecture": "arm64", + "cpu_architecture": "aarch64", "url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/latest-4.9/rhcos-live.aarch64.iso", "rootfs_url": "https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/latest-4.9/rhcos-live-rootfs.aarch64.img", "version": "49.84.202106272247-0" @@ -110,7 +110,7 @@ An example for the swagger schema: cpu_architecture: type: string default: 'x86_64' - description: The CPU architecture of the image (x86_64/arm64/etc) + description: The CPU architecture of the image (x86_64/aarch64/etc) ``` When generating a discovery ISO, the proper RHCOS/Release images should be used according to CPU architecture specified in the cluster. The `cpu_architecture` property should be stored in `infraenv` after the ISO is generated. @@ -147,7 +147,7 @@ As an Assisted-Installer user, I need to install a Single-Node OpenShift cluster #### kube-api considerations ##### ClusterImageSet -Since we extract the openshift-baremetal-install binary in the assisted-service (to create the manifests of the cluster), the x86_64 OCP release image has to be used. Which means that both arm64 and x86_64 release images must be provided. The OCP release image probably won't support the manifest list feature, so we couldn't rely on it either. +Since we extract the openshift-baremetal-install binary in the assisted-service (to create the manifests of the cluster), the x86_64 OCP release image has to be used. Which means that both aarch64 and x86_64 release images must be provided. The OCP release image probably won't support the manifest list feature, so we couldn't rely on it either. Alternatives: * We could add another URL for the x86_64 release image in ClusterImageSet. diff --git a/docs/enhancements/ipxe-host-boot.md b/docs/enhancements/ipxe-host-boot.md index e67a0e76c5b..f3f4613635e 100644 --- a/docs/enhancements/ipxe-host-boot.md +++ b/docs/enhancements/ipxe-host-boot.md @@ -75,7 +75,7 @@ endpoint will be specific to an infra-env in order to embed the ignition. - No authentication is required as we’re serving these directly from the uncustomized image - Examples - `/boot-artifacts/rootfs?version=4.9&arch=x86_64` - - `/boot-artifacts/kernel?version=4.10&arch=arm64` + - `/boot-artifacts/kernel?version=4.10&arch=aarch64` - `GET /images/{image-id}/pxe-initrd?{params}` - image-id is the uuid of an infra-env in assisted-service - params must include “version” and “arch” diff --git a/docs/hive-integration/agent-labels.md b/docs/hive-integration/agent-labels.md index 3bb69ce2955..fa7a8f01330 100644 --- a/docs/hive-integration/agent-labels.md +++ b/docs/hive-integration/agent-labels.md @@ -11,7 +11,7 @@ Labels marked as boolean will have either the string "true" or "false". ### v0.1 * inventory.agent-install.openshift.io/storage-hasnonrotationaldisk (boolean): Indicates if the Agent has at least one SSD -* inventory.agent-install.openshift.io/cpu-architecture (string): The CPU architecture (e.g., x86_64, arm64) +* inventory.agent-install.openshift.io/cpu-architecture (string): The CPU architecture (e.g., x86_64, aarch64) * inventory.agent-install.openshift.io/cpu-virtenabled (boolean): Indicates if the CPU has the virtualization flag (VMX or SVM) * inventory.agent-install.openshift.io/host-manufacturer (string): The host's manufacturer * inventory.agent-install.openshift.io/host-productname (string): The host's product name diff --git a/internal/bminventory/inventory.go b/internal/bminventory/inventory.go index 47dabd477d1..e624d6f53a4 100644 --- a/internal/bminventory/inventory.go +++ b/internal/bminventory/inventory.go @@ -3,6 +3,7 @@ package bminventory import ( "bytes" "context" + "runtime" // #nosec "crypto/md5" @@ -702,9 +703,7 @@ func (b *bareMetalInventory) getNewClusterCPUArchitecture(newClusterParams *mode // TODO: remove once release images list is exclusively used. return common.DefaultCPUArchitecture, nil } - if newClusterParams.CPUArchitecture == "arm64" { - return common.ARM64CPUArchitecture, nil - } + if !swag.BoolValue(newClusterParams.UserManagedNetworking) && !featuresupport.IsFeatureSupported(swag.StringValue(newClusterParams.OpenshiftVersion), models.FeatureSupportLevelFeaturesItems0FeatureIDARM64ARCHITECTUREWITHCLUSTERMANAGEDNETWORKING) { @@ -1537,7 +1536,7 @@ func (b *bareMetalInventory) generateClusterInstallConfig(ctx context.Context, c installerReleaseImageOverride := "" if isBaremetalBinaryFromAnotherReleaseImageRequired(cluster.CPUArchitecture, cluster.OpenshiftVersion, cluster.Platform.Type) { - defaultArchImage, err := b.versionsHandler.GetReleaseImage(cluster.OpenshiftVersion, cluster.CPUArchitecture) + defaultArchImage, err := b.versionsHandler.GetReleaseImage(cluster.OpenshiftVersion, common.DefaultCPUArchitecture) if err != nil { msg := fmt.Sprintf("failed to get image for installer image override "+ "for cluster %s with openshift version %s and %s arch", cluster.ID, cluster.OpenshiftVersion, cluster.CPUArchitecture) @@ -2610,8 +2609,8 @@ func (b *bareMetalInventory) updateClusterNetworkVMUsage(cluster *common.Cluster } func (b *bareMetalInventory) updateClusterCPUFeatureUsage(cluster *common.Cluster, usages map[string]models.Usage) { - isARM64CPU := cluster.CPUArchitecture == "arm64" - b.setUsage(isARM64CPU, usage.CPUArchitectureARM64, nil, usages) + isAARCH64CPU := cluster.CPUArchitecture == "aarch64" + b.setUsage(isAARCH64CPU, usage.CPUArchitectureARM64, nil, usages) } func (b *bareMetalInventory) updateOperatorsData(ctx context.Context, cluster *common.Cluster, params installer.V2UpdateClusterParams, usages map[string]models.Usage, db *gorm.DB, log logrus.FieldLogger) error { @@ -3956,9 +3955,7 @@ func validateArchitectureAndVersion(v versions.Handler, c *common.Cluster, cpuAr if ocpVersion == "" { ocpVersion = c.OpenshiftVersion } - if c.CPUArchitecture == "aarch64" && cpuArch == "arm64" { - return nil - } + if c.CPUArchitecture != common.MultiCPUArchitecture { if c.CPUArchitecture != "" && c.CPUArchitecture != cpuArch { return errors.Errorf("Specified CPU architecture (%s) doesn't match the cluster (%s)", cpuArch, c.CPUArchitecture) @@ -5849,7 +5846,7 @@ func (b *bareMetalInventory) GetKnownApprovedHosts(clusterId strfmt.UUID) ([]*co // will automatically use the image matching the Hub's architecture. func isBaremetalBinaryFromAnotherReleaseImageRequired(cpuArchitecture, version string, platform *models.PlatformType) bool { return cpuArchitecture != common.MultiCPUArchitecture && - cpuArchitecture != common.DefaultCPUArchitecture && + cpuArchitecture != common.NormalizeRHCOSArch(runtime.GOARCH) && common.PlatformTypeValue(platform) == models.PlatformTypeBaremetal && featuresupport.IsFeatureSupported(version, models.FeatureSupportLevelFeaturesItems0FeatureIDARM64ARCHITECTUREWITHCLUSTERMANAGEDNETWORKING) diff --git a/internal/bminventory/inventory_test.go b/internal/bminventory/inventory_test.go index 674127e6cc3..4664c7b8d49 100644 --- a/internal/bminventory/inventory_test.go +++ b/internal/bminventory/inventory_test.go @@ -2960,7 +2960,7 @@ var _ = Describe("cluster", func() { clusterID = strfmt.UUID(uuid.New().String()) err := db.Create(&common.Cluster{Cluster: models.Cluster{ ID: &clusterID, - CPUArchitecture: common.ARM64CPUArchitecture, + CPUArchitecture: common.AARCH64CPUArchitecture, UserManagedNetworking: swag.Bool(true), Platform: &models.Platform{Type: common.PlatformTypePtr(models.PlatformTypeNone)}, HighAvailabilityMode: swag.String(models.ClusterHighAvailabilityModeFull), @@ -2985,7 +2985,7 @@ var _ = Describe("cluster", func() { clusterID = strfmt.UUID(uuid.New().String()) err := db.Create(&common.Cluster{Cluster: models.Cluster{ ID: &clusterID, - CPUArchitecture: common.ARM64CPUArchitecture, + CPUArchitecture: common.AARCH64CPUArchitecture, OpenshiftVersion: "4.11", UserManagedNetworking: swag.Bool(true), Platform: &models.Platform{Type: common.PlatformTypePtr(models.PlatformTypeNone)}, @@ -4095,7 +4095,7 @@ var _ = Describe("cluster", func() { IngressVip: "10.11.20.50", OpenshiftVersion: "4.11", Status: swag.String(models.ClusterStatusReady), - CPUArchitecture: common.ARM64CPUArchitecture, + CPUArchitecture: common.AARCH64CPUArchitecture, Platform: &models.Platform{ Type: common.PlatformTypePtr(models.PlatformTypeBaremetal), }, @@ -4117,7 +4117,7 @@ var _ = Describe("cluster", func() { URL: swag.String("quay.io/openshift-release-dev/ocp-release:4.6.16-aarch64"), } mockGetInstallConfigSuccess(mockInstallConfigBuilder) - mockVersions.EXPECT().GetReleaseImage(gomock.Any(), common.ARM64CPUArchitecture).Return(armRelease, nil).Times(1) + mockVersions.EXPECT().GetReleaseImage(gomock.Any(), common.AARCH64CPUArchitecture).Return(armRelease, nil).Times(1) mockVersions.EXPECT().GetReleaseImage(gomock.Any(), common.DefaultCPUArchitecture).Return(common.TestDefaultConfig.ReleaseImage, nil).Times(1) mockGenerator.EXPECT().GenerateInstallConfig(gomock.Any(), gomock.Any(), gomock.Any(), *armRelease.URL, *common.TestDefaultConfig.ReleaseImage.URL).Return(nil).Times(1) @@ -4155,7 +4155,7 @@ var _ = Describe("cluster", func() { IngressVip: "10.11.20.50", OpenshiftVersion: "4.11", Status: swag.String(models.ClusterStatusReady), - CPUArchitecture: common.ARM64CPUArchitecture, + CPUArchitecture: common.AARCH64CPUArchitecture, Platform: &models.Platform{ Type: common.PlatformTypePtr(models.PlatformTypeBaremetal), }, @@ -4177,7 +4177,7 @@ var _ = Describe("cluster", func() { URL: swag.String("quay.io/openshift-release-dev/ocp-release:4.6.16-aarch64"), } mockGetInstallConfigSuccess(mockInstallConfigBuilder) - mockVersions.EXPECT().GetReleaseImage(gomock.Any(), common.ARM64CPUArchitecture).Return(armRelease, nil).Times(1) + mockVersions.EXPECT().GetReleaseImage(gomock.Any(), common.AARCH64CPUArchitecture).Return(armRelease, nil).Times(1) mockVersions.EXPECT().GetReleaseImage(gomock.Any(), common.DefaultCPUArchitecture).Return(nil, errors.Errorf("Dummy")).Times(1) mockClusterPrepareForInstallationSuccess(mockClusterApi) @@ -6065,7 +6065,7 @@ var _ = Describe("infraEnvs", func() { mockEvents.EXPECT().SendInfraEnvEvent(ctx, eventstest.NewEventMatcher( eventstest.WithNameMatcher(eventgen.InfraEnvRegistrationFailedEventName), - eventstest.WithMessageContainsMatcher("Specified CPU architecture (arm64) doesn't match the cluster (x86_64)"))).Times(1) + eventstest.WithMessageContainsMatcher("Specified CPU architecture (aarch64) doesn't match the cluster (x86_64)"))).Times(1) reply := bm.RegisterInfraEnv(ctx, installer.RegisterInfraEnvParams{ InfraenvCreateParams: &models.InfraEnvCreateParams{ @@ -6073,7 +6073,7 @@ var _ = Describe("infraEnvs", func() { OpenshiftVersion: MinimalOpenShiftVersionForNoneHA, PullSecret: swag.String("{\"auths\":{\"cloud.openshift.com\":{\"auth\":\"dG9rZW46dGVzdAo=\",\"email\":\"coyote@acme.com\"}}}"), ClusterID: &clusterID, - CPUArchitecture: common.ARM64CPUArchitecture, + CPUArchitecture: common.AARCH64CPUArchitecture, }, }) Expect(reply).To(BeAssignableToTypeOf(common.NewApiError(http.StatusBadRequest, errors.Errorf("")))) @@ -11305,10 +11305,10 @@ var _ = Describe("TestRegisterCluster", func() { mockClusterRegisterSuccess(true) mockAMSSubscription(ctx) mockVersions.EXPECT().GetCPUArchitectures(gomock.Any()).Return( - []string{common.TestDefaultConfig.OpenShiftVersion, common.ARM64CPUArchitecture}).Times(1) + []string{common.TestDefaultConfig.OpenShiftVersion, common.AARCH64CPUArchitecture}).Times(1) params := getDefaultClusterCreateParams() - params.CPUArchitecture = common.ARM64CPUArchitecture + params.CPUArchitecture = common.AARCH64CPUArchitecture params.Platform = &models.Platform{Type: common.PlatformTypePtr(models.PlatformTypeNone)} params.UserManagedNetworking = swag.Bool(true) params.VipDhcpAllocation = swag.Bool(false) @@ -11318,14 +11318,14 @@ var _ = Describe("TestRegisterCluster", func() { }) Expect(reflect.TypeOf(reply)).Should(Equal(reflect.TypeOf(installer.NewV2RegisterClusterCreated()))) actual := reply.(*installer.V2RegisterClusterCreated) - Expect(actual.Payload.CPUArchitecture).To(Equal(common.ARM64CPUArchitecture)) + Expect(actual.Payload.CPUArchitecture).To(Equal(common.AARCH64CPUArchitecture)) }) It("Register cluster with arm64 CPU architecture as multiarch if multiarch release image used", func() { mockSecretValidator.EXPECT().ValidatePullSecret(gomock.Any(), gomock.Any()).Return(nil).Times(1) mockVersions.EXPECT().GetReleaseImage(gomock.Any(), gomock.Any()).Return(&models.ReleaseImage{ CPUArchitecture: swag.String(common.MultiCPUArchitecture), - CPUArchitectures: []string{common.X86CPUArchitecture, common.ARM64CPUArchitecture, common.PowerCPUArchitecture}, + CPUArchitectures: []string{common.X86CPUArchitecture, common.AARCH64CPUArchitecture, common.PowerCPUArchitecture}, OpenshiftVersion: swag.String("4.11.1"), URL: swag.String("release_4.11.1"), Version: swag.String("4.11.1-multi"), @@ -11337,11 +11337,11 @@ var _ = Describe("TestRegisterCluster", func() { eventstest.WithNameMatcher(eventgen.ClusterRegistrationSucceededEventName))).Times(1) mockAMSSubscription(ctx) mockVersions.EXPECT().GetCPUArchitectures(gomock.Any()).Return( - []string{common.TestDefaultConfig.OpenShiftVersion, common.ARM64CPUArchitecture}).Times(1) + []string{common.TestDefaultConfig.OpenShiftVersion, common.AARCH64CPUArchitecture}).Times(1) mockVersions.EXPECT().ValidateAccessToMultiarch(gomock.Any(), gomock.Any()).Times(1) params := getDefaultClusterCreateParams() - params.CPUArchitecture = common.ARM64CPUArchitecture + params.CPUArchitecture = common.AARCH64CPUArchitecture params.Platform = &models.Platform{Type: common.PlatformTypePtr(models.PlatformTypeNone)} params.UserManagedNetworking = swag.Bool(true) params.VipDhcpAllocation = swag.Bool(false) @@ -11381,7 +11381,7 @@ var _ = Describe("TestRegisterCluster", func() { eventstest.WithSeverityMatcher(models.EventSeverityError))).Times(1) params := getDefaultClusterCreateParams() - params.CPUArchitecture = common.ARM64CPUArchitecture + params.CPUArchitecture = common.AARCH64CPUArchitecture reply := bm.V2RegisterCluster(ctx, installer.V2RegisterClusterParams{ NewClusterParams: params, }) @@ -11531,7 +11531,7 @@ var _ = Describe("TestRegisterCluster", func() { mockSecretValidator.EXPECT().ValidatePullSecret(gomock.Any(), gomock.Any()).Return(nil).Times(1) mockVersions.EXPECT().GetReleaseImage(gomock.Any(), gomock.Any()).Return(&models.ReleaseImage{ CPUArchitecture: swag.String(common.MultiCPUArchitecture), - CPUArchitectures: []string{common.X86CPUArchitecture, common.ARM64CPUArchitecture, common.PowerCPUArchitecture}, + CPUArchitectures: []string{common.X86CPUArchitecture, common.AARCH64CPUArchitecture, common.PowerCPUArchitecture}, OpenshiftVersion: swag.String("its-just-a-mock"), URL: swag.String("url-of-this-release"), Version: swag.String("doesnt-really-matter"), @@ -11561,7 +11561,7 @@ var _ = Describe("TestRegisterCluster", func() { It("Register a cluster with multi CPU architecture - fail with no capability", func() { mockVersions.EXPECT().GetReleaseImage(gomock.Any(), gomock.Any()).Return(&models.ReleaseImage{ CPUArchitecture: swag.String(common.MultiCPUArchitecture), - CPUArchitectures: []string{common.X86CPUArchitecture, common.ARM64CPUArchitecture, common.PowerCPUArchitecture}, + CPUArchitectures: []string{common.X86CPUArchitecture, common.AARCH64CPUArchitecture, common.PowerCPUArchitecture}, OpenshiftVersion: swag.String("its-just-a-mock"), URL: swag.String("url-of-this-release"), Version: swag.String("doesnt-really-matter"), @@ -12586,7 +12586,7 @@ var _ = Describe("BindHost", func() { err = db.Create(&common.InfraEnv{InfraEnv: models.InfraEnv{ ID: &infraEnvID, - CPUArchitecture: common.ARM64CPUArchitecture, + CPUArchitecture: common.AARCH64CPUArchitecture, }}).Error Expect(err).ShouldNot(HaveOccurred()) @@ -12619,7 +12619,7 @@ var _ = Describe("BindHost", func() { infraEnvID = strfmt.UUID(uuid.New().String()) err = db.Create(&common.InfraEnv{InfraEnv: models.InfraEnv{ ID: &infraEnvID, - CPUArchitecture: common.ARM64CPUArchitecture, + CPUArchitecture: common.AARCH64CPUArchitecture, }}).Error Expect(err).ShouldNot(HaveOccurred()) diff --git a/internal/common/common.go b/internal/common/common.go index 5fc140e50ca..dda98e0c31f 100644 --- a/internal/common/common.go +++ b/internal/common/common.go @@ -40,9 +40,11 @@ const ( FamilyIPv4 int32 = 4 FamilyIPv6 int32 = 6 + AMD64CPUArchitecture = "amd64" X86CPUArchitecture = "x86_64" DefaultCPUArchitecture = X86CPUArchitecture - ARM64CPUArchitecture = "aarch64" + AARCH64CPUArchitecture = "aarch64" + ARM64CPUArchitecture = "arm64" PowerCPUArchitecture = "ppc64le" MultiCPUArchitecture = "multi" ) @@ -88,6 +90,17 @@ const NMDebugModeConf = ` domains=ALL:DEBUG ` +func NormalizeRHCOSArch(Arch string) string { + switch Arch { + case AMD64CPUArchitecture: + return X86CPUArchitecture + case ARM64CPUArchitecture: + return AARCH64CPUArchitecture + default: + return Arch + } +} + func AllStrings(vs []string, f func(string) bool) bool { for _, v := range vs { if !f(v) { diff --git a/internal/controller/controllers/clusterdeployments_controller_test.go b/internal/controller/controllers/clusterdeployments_controller_test.go index 6d94da930d6..64962c82ec3 100644 --- a/internal/controller/controllers/clusterdeployments_controller_test.go +++ b/internal/controller/controllers/clusterdeployments_controller_test.go @@ -44,7 +44,7 @@ import ( const ( CpuArchitectureX86 string = "x86_64" - CpuArchitectureArm string = "arm64" + CpuArchitectureArm string = "aarch64" ) func newClusterDeploymentRequest(cluster *hivev1.ClusterDeployment) ctrl.Request { diff --git a/internal/controller/controllers/infraenv_controller.go b/internal/controller/controllers/infraenv_controller.go index 2f94717b198..ae1e43ae0b6 100644 --- a/internal/controller/controllers/infraenv_controller.go +++ b/internal/controller/controllers/infraenv_controller.go @@ -345,6 +345,7 @@ func (r *InfraEnvReconciler) ensureISO(ctx context.Context, log logrus.FieldLogg } func CreateInfraEnvParams(infraEnv *aiv1beta1.InfraEnv, imageType models.ImageType, pullSecret string, clusterID *strfmt.UUID, openshiftVersion string) installer.RegisterInfraEnvParams { + normalizedRHCOSARCH := infraEnv.Spec.CpuArchitecture createParams := installer.RegisterInfraEnvParams{ InfraenvCreateParams: &models.InfraEnvCreateParams{ Name: &infraEnv.Name, @@ -352,7 +353,7 @@ func CreateInfraEnvParams(infraEnv *aiv1beta1.InfraEnv, imageType models.ImageTy IgnitionConfigOverride: infraEnv.Spec.IgnitionConfigOverride, PullSecret: &pullSecret, SSHAuthorizedKey: &infraEnv.Spec.SSHAuthorizedKey, - CPUArchitecture: infraEnv.Spec.CpuArchitecture, + CPUArchitecture: normalizedRHCOSARCH, ClusterID: clusterID, OpenshiftVersion: openshiftVersion, }, diff --git a/internal/ignition/ironic.go b/internal/ignition/ironic.go index b64e3c72b71..e7b9ad48970 100644 --- a/internal/ignition/ironic.go +++ b/internal/ignition/ironic.go @@ -36,7 +36,7 @@ func (r *ironicIgniotionBuilder) GenerateIronicConfig(ironicBaseURL string, infr httpProxy, httpsProxy, noProxy := common.GetProxyConfigs(infraEnv.Proxy) if ironicAgentImage == "" { // if ironicAgentImage wasn't specified use the default image for the CPU arch - if infraEnv.CPUArchitecture == common.ARM64CPUArchitecture { + if infraEnv.CPUArchitecture == common.AARCH64CPUArchitecture { ironicAgentImage = r.config.BaremetalIronicAgentImageForArm } else { ironicAgentImage = r.config.BaremetalIronicAgentImage diff --git a/internal/ignition/ironic_test.go b/internal/ignition/ironic_test.go index 9bc7eac1df6..5945819912c 100644 --- a/internal/ignition/ironic_test.go +++ b/internal/ignition/ironic_test.go @@ -54,7 +54,7 @@ var _ = Describe("Ignition with converged flow", func() { It("GenerateIronicConfig use default ironic agent image for arm", func() { config := IronicIgniotionBuilderConfig{BaremetalIronicAgentImage: "defaultIronicAgentImage:latest", BaremetalIronicAgentImageForArm: "defaultIronicAgentImageForArm:latest"} iib = NewIronicIgniotionBuilder(config) - infraEnv.CPUArchitecture = common.ARM64CPUArchitecture + infraEnv.CPUArchitecture = common.AARCH64CPUArchitecture conf, err := iib.GenerateIronicConfig(ironicBaseURL, infraEnv, "") Expect(err).NotTo(HaveOccurred()) diff --git a/internal/oc/release.go b/internal/oc/release.go index 98e1a759bfe..358924fb3c1 100644 --- a/internal/oc/release.go +++ b/internal/oc/release.go @@ -176,9 +176,8 @@ func (r *release) GetReleaseArchitecture(log logrus.FieldLogger, releaseImage st res, _ := jsonparser.GetString(value, "platform", "architecture") // Convert architecture naming to supported values - if res == "amd64" { - res = common.DefaultCPUArchitecture - } else if res == "" { + res = common.NormalizeRHCOSArch(res) + if res == "" { return } @@ -201,12 +200,7 @@ func (r *release) GetReleaseArchitecture(log logrus.FieldLogger, releaseImage st } // Convert architecture naming to supported values - switch architecture { - case "amd64": - architecture = common.DefaultCPUArchitecture - case "arm64": - architecture = common.ARM64CPUArchitecture - } + architecture = common.NormalizeRHCOSArch(architecture) return []string{architecture}, nil } diff --git a/internal/oc/release_test.go b/internal/oc/release_test.go index e645337d43d..da5d6a7e906 100644 --- a/internal/oc/release_test.go +++ b/internal/oc/release_test.go @@ -297,7 +297,7 @@ var _ = Describe("oc", func() { mockExecuter.EXPECT().Execute(args2[0], args2[1:]...).Return(test_skopeo_multiarch_image_output, "", 0).Times(1) arch, err := oc.GetReleaseArchitecture(log, releaseImage, "", pullSecret) - Expect(arch).Should(ConsistOf([]string{"x86_64", "ppc64le", "s390x", "arm64"})) + Expect(arch).Should(ConsistOf([]string{"x86_64", "ppc64le", "s390x", "aarch64"})) Expect(err).ShouldNot(HaveOccurred()) }) diff --git a/internal/operators/cnv/cnv_operator_test.go b/internal/operators/cnv/cnv_operator_test.go index 94372d4497a..5d39addcb3b 100644 --- a/internal/operators/cnv/cnv_operator_test.go +++ b/internal/operators/cnv/cnv_operator_test.go @@ -333,7 +333,7 @@ var _ = Describe("CNV operator", func() { Expect(err).ToNot(HaveOccurred()) Expect(validation.Status).To(Equal(api.Success)) - cluster.CPUArchitecture = "arm64" + cluster.CPUArchitecture = common.AARCH64CPUArchitecture validation, err = operator.ValidateCluster(context.TODO(), &cluster) Expect(err).ToNot(HaveOccurred()) Expect(validation.Status).To(Equal(api.Failure)) diff --git a/internal/versions/versions.go b/internal/versions/versions.go index 0628b00f7f0..cc2e5227178 100644 --- a/internal/versions/versions.go +++ b/internal/versions/versions.go @@ -137,10 +137,6 @@ func (h *handler) V2ListSupportedOpenshiftVersions(ctx context.Context, params o // Empty implies default architecture arch = common.DefaultCPUArchitecture } - - if arch == "arm64" { - arch = "aarch64" - } // In order to mark a specific version and architecture as supported we do not // only need to have an available release image, but we need RHCOS image as well. if _, err := h.GetOsImage(key, arch); err != nil { @@ -231,10 +227,6 @@ func (h *handler) GetOsImage(openshiftVersion, cpuArchitecture string) (*models. // Empty implies default CPU architecture cpuArchitecture = common.DefaultCPUArchitecture } - // RHCOS uses aarch64 for arm64 - if cpuArchitecture == "arm64" { - cpuArchitecture = "aarch64" - } // Filter OS images by specified CPU architecture osImages := funk.Filter(h.osImages, func(osImage *models.OsImage) bool { if swag.StringValue(osImage.CPUArchitecture) == "" { diff --git a/internal/versions/versions_test.go b/internal/versions/versions_test.go index 7a51dc2c4bb..ded8ef59b8b 100644 --- a/internal/versions/versions_test.go +++ b/internal/versions/versions_test.go @@ -64,7 +64,7 @@ var defaultOsImages = models.OsImages{ Version: swag.String("version-49.123-0"), }, &models.OsImage{ - CPUArchitecture: swag.String(common.ARM64CPUArchitecture), + CPUArchitecture: swag.String(common.AARCH64CPUArchitecture), OpenshiftVersion: swag.String("4.9"), URL: swag.String("rhcos_4.9_arm64"), Version: swag.String("version-49.123-0_arm64"), @@ -95,7 +95,7 @@ var defaultReleaseImages = models.ReleaseImages{ }, &models.ReleaseImage{ CPUArchitecture: swag.String(common.MultiCPUArchitecture), - CPUArchitectures: []string{common.X86CPUArchitecture, common.ARM64CPUArchitecture, common.PowerCPUArchitecture}, + CPUArchitectures: []string{common.X86CPUArchitecture, common.AARCH64CPUArchitecture, common.PowerCPUArchitecture}, OpenshiftVersion: swag.String("4.11.1"), URL: swag.String("release_4.11.1"), Version: swag.String("4.11.1-multi"), @@ -116,8 +116,8 @@ var defaultReleaseImages = models.ReleaseImages{ Default: true, }, &models.ReleaseImage{ - CPUArchitecture: swag.String(common.ARM64CPUArchitecture), - CPUArchitectures: []string{common.ARM64CPUArchitecture}, + CPUArchitecture: swag.String(common.AARCH64CPUArchitecture), + CPUArchitectures: []string{common.AARCH64CPUArchitecture}, OpenshiftVersion: swag.String("4.9"), URL: swag.String("release_4.9_arm64"), Version: swag.String("4.9-candidate_arm64"), @@ -364,8 +364,8 @@ var _ = Describe("list versions", func() { // release images. This is to test if in this scenario we don't return duplicated // entries in the supported architectures list. &models.ReleaseImage{ - CPUArchitecture: swag.String(common.ARM64CPUArchitecture), - CPUArchitectures: []string{common.ARM64CPUArchitecture}, + CPUArchitecture: swag.String(common.AARCH64CPUArchitecture), + CPUArchitectures: []string{common.AARCH64CPUArchitecture}, OpenshiftVersion: swag.String("4.11.1"), URL: swag.String("release_4.11.1"), Version: swag.String("4.11.1-chocobomb-for-test"), @@ -379,7 +379,7 @@ var _ = Describe("list versions", func() { }, &models.ReleaseImage{ CPUArchitecture: swag.String(common.MultiCPUArchitecture), - CPUArchitectures: []string{common.X86CPUArchitecture, common.ARM64CPUArchitecture}, + CPUArchitectures: []string{common.X86CPUArchitecture, common.AARCH64CPUArchitecture}, OpenshiftVersion: swag.String("4.11.1"), URL: swag.String("release_4.11.1"), Default: true, @@ -392,7 +392,7 @@ var _ = Describe("list versions", func() { val, _ := reply.(*operations.V2ListSupportedOpenshiftVersionsOK) version := val.Payload["4.11.1"] - Expect(version.CPUArchitectures).Should(ContainElement(common.ARM64CPUArchitecture)) + Expect(version.CPUArchitectures).Should(ContainElement(common.AARCH64CPUArchitecture)) Expect(version.CPUArchitectures).Should(ContainElement(common.X86CPUArchitecture)) Expect(len(version.CPUArchitectures)).Should(Equal(2)) Expect(version.DisplayName).Should(Equal(swag.String("4.11.1-chocobomb-for-test"))) @@ -752,20 +752,20 @@ var _ = Describe("list versions", func() { mockRelease.EXPECT().GetOpenshiftVersion( gomock.Any(), gomock.Any(), gomock.Any(), gomock.Any()).Return(customOcpVersion, nil).AnyTimes() mockRelease.EXPECT().GetReleaseArchitecture( - gomock.Any(), gomock.Any(), gomock.Any(), gomock.Any()).Return([]string{cpuArchitecture, common.ARM64CPUArchitecture}, nil).AnyTimes() + gomock.Any(), gomock.Any(), gomock.Any(), gomock.Any()).Return([]string{cpuArchitecture, common.AARCH64CPUArchitecture}, nil).AnyTimes() releaseImage, err = h.AddReleaseImage(releaseImageUrl, pullSecret, "", nil) Expect(err).ShouldNot(HaveOccurred()) Expect(*releaseImage.CPUArchitecture).Should(Equal(common.MultiCPUArchitecture)) - Expect(releaseImage.CPUArchitectures).Should(Equal([]string{cpuArchitecture, common.ARM64CPUArchitecture})) + Expect(releaseImage.CPUArchitectures).Should(Equal([]string{cpuArchitecture, common.AARCH64CPUArchitecture})) Expect(*releaseImage.OpenshiftVersion).Should(Equal(customOcpVersion)) Expect(*releaseImage.URL).Should(Equal(releaseImageUrl)) Expect(*releaseImage.Version).Should(Equal(customOcpVersion)) }) It("added successfuly using specified ocpReleaseVersion and cpuArchitecture", func() { - _, err = h.AddReleaseImage(releaseImageUrl, pullSecret, customOcpVersion, []string{cpuArchitecture, common.ARM64CPUArchitecture}) + _, err = h.AddReleaseImage(releaseImageUrl, pullSecret, customOcpVersion, []string{cpuArchitecture, common.AARCH64CPUArchitecture}) Expect(err).ShouldNot(HaveOccurred()) releaseImageFromCache, err = h.GetReleaseImage(customOcpVersion, common.MultiCPUArchitecture) Expect(err).ShouldNot(HaveOccurred()) @@ -773,14 +773,14 @@ var _ = Describe("list versions", func() { Expect(*releaseImageFromCache.URL).Should(Equal(releaseImageUrl)) Expect(*releaseImageFromCache.Version).Should(Equal(customOcpVersion)) Expect(*releaseImageFromCache.CPUArchitecture).Should(Equal(common.MultiCPUArchitecture)) - Expect(releaseImageFromCache.CPUArchitectures).Should(Equal([]string{cpuArchitecture, common.ARM64CPUArchitecture})) + Expect(releaseImageFromCache.CPUArchitectures).Should(Equal([]string{cpuArchitecture, common.AARCH64CPUArchitecture})) }) It("added successfuly and recalculated using specified ocpReleaseVersion and 'multiarch' cpuArchitecture", func() { mockRelease.EXPECT().GetOpenshiftVersion( gomock.Any(), gomock.Any(), gomock.Any(), gomock.Any()).Return(customOcpVersion, nil).AnyTimes() mockRelease.EXPECT().GetReleaseArchitecture( - gomock.Any(), gomock.Any(), gomock.Any(), gomock.Any()).Return([]string{cpuArchitecture, common.ARM64CPUArchitecture}, nil).AnyTimes() + gomock.Any(), gomock.Any(), gomock.Any(), gomock.Any()).Return([]string{cpuArchitecture, common.AARCH64CPUArchitecture}, nil).AnyTimes() _, err = h.AddReleaseImage(releaseImageUrl, pullSecret, customOcpVersion, []string{common.MultiCPUArchitecture}) Expect(err).ShouldNot(HaveOccurred()) @@ -790,14 +790,14 @@ var _ = Describe("list versions", func() { Expect(*releaseImageFromCache.URL).Should(Equal(releaseImageUrl)) Expect(*releaseImageFromCache.Version).Should(Equal(customOcpVersion)) Expect(*releaseImageFromCache.CPUArchitecture).Should(Equal(common.MultiCPUArchitecture)) - Expect(releaseImageFromCache.CPUArchitectures).Should(Equal([]string{cpuArchitecture, common.ARM64CPUArchitecture})) + Expect(releaseImageFromCache.CPUArchitectures).Should(Equal([]string{cpuArchitecture, common.AARCH64CPUArchitecture})) }) It("when release image already exists", func() { mockRelease.EXPECT().GetOpenshiftVersion( gomock.Any(), gomock.Any(), gomock.Any(), gomock.Any()).Return("4.11.1", nil).AnyTimes() mockRelease.EXPECT().GetReleaseArchitecture( - gomock.Any(), gomock.Any(), gomock.Any(), gomock.Any()).Return([]string{cpuArchitecture, common.ARM64CPUArchitecture}, nil).AnyTimes() + gomock.Any(), gomock.Any(), gomock.Any(), gomock.Any()).Return([]string{cpuArchitecture, common.AARCH64CPUArchitecture}, nil).AnyTimes() releaseImageFromCache := funk.Find(h.releaseImages, func(releaseImage *models.ReleaseImage) bool { return *releaseImage.OpenshiftVersion == "4.11.1" && *releaseImage.CPUArchitecture == common.MultiCPUArchitecture @@ -816,7 +816,7 @@ var _ = Describe("list versions", func() { releaseImage, err = h.GetReleaseImage("4.11.1", common.X86CPUArchitecture) Expect(err).ShouldNot(HaveOccurred()) Expect(releaseImage.Version).Should(Equal(releaseImageFromCache.(*models.ReleaseImage).Version)) - releaseImage, err = h.GetReleaseImage("4.11.1", common.ARM64CPUArchitecture) + releaseImage, err = h.GetReleaseImage("4.11.1", common.AARCH64CPUArchitecture) Expect(err).ShouldNot(HaveOccurred()) Expect(releaseImage.Version).Should(Equal(releaseImageFromCache.(*models.ReleaseImage).Version)) @@ -969,7 +969,7 @@ var _ = Describe("list versions", func() { Version: swag.String("version-49.123-0"), }, &models.OsImage{ - CPUArchitecture: swag.String(common.ARM64CPUArchitecture), + CPUArchitecture: swag.String(common.AARCH64CPUArchitecture), OpenshiftVersion: swag.String("4.9"), URL: swag.String("rhcos_4.9_arm64"), Version: swag.String("version-49.123-0_arm64"), @@ -984,7 +984,7 @@ var _ = Describe("list versions", func() { Version: swag.String("4.9-candidate"), }, &models.ReleaseImage{ - CPUArchitecture: swag.String(common.ARM64CPUArchitecture), + CPUArchitecture: swag.String(common.AARCH64CPUArchitecture), OpenshiftVersion: swag.String("4.9"), URL: swag.String("release_4.9_arm64"), Version: swag.String("4.9-candidate_arm64"), @@ -1065,10 +1065,10 @@ var _ = Describe("list versions", func() { Expect(err).ShouldNot(HaveOccurred()) architectures = h.GetCPUArchitectures("4.9") - Expect(architectures).Should(Equal([]string{common.TestDefaultConfig.CPUArchitecture, common.ARM64CPUArchitecture})) + Expect(architectures).Should(Equal([]string{common.TestDefaultConfig.CPUArchitecture, common.AARCH64CPUArchitecture})) architectures = h.GetCPUArchitectures("4.9.1") - Expect(architectures).Should(Equal([]string{common.TestDefaultConfig.CPUArchitecture, common.ARM64CPUArchitecture})) + Expect(architectures).Should(Equal([]string{common.TestDefaultConfig.CPUArchitecture, common.AARCH64CPUArchitecture})) }) It("empty architecture fallback to default", func() { diff --git a/models/cluster.go b/models/cluster.go index 00e4a6d92d3..cf6c565e9ff 100644 --- a/models/cluster.go +++ b/models/cluster.go @@ -63,7 +63,7 @@ type Cluster struct { // Format: date-time ControllerLogsStartedAt strfmt.DateTime `json:"controller_logs_started_at,omitempty" gorm:"type:timestamp with time zone"` - // The CPU architecture of the image (x86_64/arm64/etc). + // The CPU architecture of the image (x86_64/aarch64/etc). CPUArchitecture string `json:"cpu_architecture,omitempty"` // The time that this cluster was created. diff --git a/models/cluster_create_params.go b/models/cluster_create_params.go index 32de99c7f99..adc40eb20cf 100644 --- a/models/cluster_create_params.go +++ b/models/cluster_create_params.go @@ -43,7 +43,7 @@ type ClusterCreateParams struct { // Cluster networks that are associated with this cluster. ClusterNetworks []*ClusterNetwork `json:"cluster_networks"` - // The CPU architecture of the image (x86_64/arm64/etc). + // The CPU architecture of the image (x86_64/aarch64/etc). CPUArchitecture string `json:"cpu_architecture,omitempty"` // Installation disks encryption mode and host roles to be applied. diff --git a/models/infra_env.go b/models/infra_env.go index dacd859c1c9..532828c81ff 100644 --- a/models/infra_env.go +++ b/models/infra_env.go @@ -28,7 +28,7 @@ type InfraEnv struct { // Format: uuid ClusterID strfmt.UUID `json:"cluster_id,omitempty" gorm:"index"` - // The CPU architecture of the image (x86_64/arm64/etc). + // The CPU architecture of the image (x86_64/aarch64/etc). CPUArchitecture string `json:"cpu_architecture,omitempty"` // created at diff --git a/models/infra_env_create_params.go b/models/infra_env_create_params.go index 0d63686746d..b67f9525a6b 100644 --- a/models/infra_env_create_params.go +++ b/models/infra_env_create_params.go @@ -27,7 +27,7 @@ type InfraEnvCreateParams struct { // Format: uuid ClusterID *strfmt.UUID `json:"cluster_id,omitempty"` - // The CPU architecture of the image (x86_64/arm64/etc). + // The CPU architecture of the image (x86_64/aarch64/etc). CPUArchitecture string `json:"cpu_architecture,omitempty"` // discovery kernel arguments diff --git a/models/os_image.go b/models/os_image.go index 5c318a05acb..b9676172929 100644 --- a/models/os_image.go +++ b/models/os_image.go @@ -19,7 +19,7 @@ import ( // swagger:model os-image type OsImage struct { - // The CPU architecture of the image (x86_64/arm64/etc). + // The CPU architecture of the image (x86_64/aarch64/etc). // Required: true CPUArchitecture *string `json:"cpu_architecture" gorm:"default:'x86_64'"` diff --git a/models/release_image.go b/models/release_image.go index 5a036d57fb9..92e2863de04 100644 --- a/models/release_image.go +++ b/models/release_image.go @@ -20,7 +20,7 @@ import ( // swagger:model release-image type ReleaseImage struct { - // (DEPRECATED) The CPU architecture of the image (x86_64/arm64/etc). + // (DEPRECATED) The CPU architecture of the image (x86_64/aarch64/etc). // Required: true CPUArchitecture *string `json:"cpu_architecture" gorm:"default:'x86_64'"` diff --git a/openshift/template.yaml b/openshift/template.yaml index 89f14c3c673..8d16e3e6b20 100644 --- a/openshift/template.yaml +++ b/openshift/template.yaml @@ -14,10 +14,10 @@ parameters: value: '' required: false - name: OS_IMAGES - value: '[{"openshift_version":"4.8","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso","version":"48.84.202109241901-0"},{"openshift_version":"4.9","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso","version":"49.84.202207192205-0"},{"openshift_version":"4.10","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-x86_64-live.x86_64.iso","version":"410.84.202207061638-0"},{"openshift_version":"4.10","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-aarch64-live.aarch64.iso","version":"410.84.202207051516-0"},{"openshift_version":"4.11","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-x86_64-live.x86_64.iso","version":"411.86.202208112011-0"},{"openshift_version":"4.11","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-aarch64-live.aarch64.iso","version":"411.86.202208111758-0"},{"openshift_version":"4.12","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-x86_64-live.x86_64.iso","version":"412.86.202208101039-0"},{"openshift_version":"4.12","cpu_architecture":"arm64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso","version":"412.86.202208101040-0"}]' # os images + value: '[{"openshift_version":"4.8","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.8/4.8.14/rhcos-4.8.14-x86_64-live.x86_64.iso","version":"48.84.202109241901-0"},{"openshift_version":"4.9","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.9/4.9.45/rhcos-4.9.45-x86_64-live.x86_64.iso","version":"49.84.202207192205-0"},{"openshift_version":"4.10","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-x86_64-live.x86_64.iso","version":"410.84.202207061638-0"},{"openshift_version":"4.10","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.10/4.10.25/rhcos-4.10.25-aarch64-live.aarch64.iso","version":"410.84.202207051516-0"},{"openshift_version":"4.11","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-x86_64-live.x86_64.iso","version":"411.86.202208112011-0"},{"openshift_version":"4.11","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/4.11/4.11.2/rhcos-4.11.2-aarch64-live.aarch64.iso","version":"411.86.202208111758-0"},{"openshift_version":"4.12","cpu_architecture":"x86_64","url":"https://mirror.openshift.com/pub/openshift-v4/x86_64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-x86_64-live.x86_64.iso","version":"412.86.202208101039-0"},{"openshift_version":"4.12","cpu_architecture":"aarch64","url":"https://mirror.openshift.com/pub/openshift-v4/aarch64/dependencies/rhcos/pre-release/4.12.0-ec.2/rhcos-4.12.0-ec.2-aarch64-live.aarch64.iso","version":"412.86.202208101040-0"}]' # os images required: false - name: RELEASE_IMAGES - value: '[{"openshift_version":"4.8","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.8.50-x86_64","version":"4.8.50"},{"openshift_version":"4.9","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.9.48-x86_64","version":"4.9.48"},{"openshift_version":"4.10","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.10.34-x86_64","version":"4.10.34"},{"openshift_version":"4.10","cpu_architecture":"arm64","cpu_architectures":["arm64"],"url":"quay.io/openshift-release-dev/ocp-release:4.10.34-aarch64","version":"4.10.34"},{"openshift_version":"4.11","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.6-x86_64","version":"4.11.6","default":true},{"openshift_version":"4.11","cpu_architecture":"arm64","cpu_architectures":["arm64"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.6-aarch64","version":"4.11.6"},{"openshift_version":"4.11.0-multi","cpu_architecture":"multi","cpu_architectures":["x86_64","arm64","ppc64le","s390x"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.0-multi","version":"4.11.0-multi"},{"openshift_version":"4.12","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.12.0-ec.3-x86_64","support_level":"beta","version":"4.12.0-ec.3"},{"openshift_version":"4.12","cpu_architecture":"arm64","cpu_architectures":["arm64"],"url":"quay.io/openshift-release-dev/ocp-release:4.12.0-ec.3-aarch64","support_level":"beta","version":"4.12.0-ec.3"}]' # release images + value: '[{"openshift_version":"4.8","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.8.50-x86_64","version":"4.8.50"},{"openshift_version":"4.9","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.9.48-x86_64","version":"4.9.48"},{"openshift_version":"4.10","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.10.34-x86_64","version":"4.10.34"},{"openshift_version":"4.10","cpu_architecture":"aarch64","cpu_architectures":["aarch64"],"url":"quay.io/openshift-release-dev/ocp-release:4.10.34-aarch64","version":"4.10.34"},{"openshift_version":"4.11","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.6-x86_64","version":"4.11.6","default":true},{"openshift_version":"4.11","cpu_architecture":"aarch64","cpu_architectures":["aarch64"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.6-aarch64","version":"4.11.6"},{"openshift_version":"4.11.0-multi","cpu_architecture":"multi","cpu_architectures":["x86_64","aarch64","ppc64le","s390x"],"url":"quay.io/openshift-release-dev/ocp-release:4.11.0-multi","version":"4.11.0-multi"},{"openshift_version":"4.12","cpu_architecture":"x86_64","cpu_architectures":["x86_64"],"url":"quay.io/openshift-release-dev/ocp-release:4.12.0-ec.3-x86_64","support_level":"beta","version":"4.12.0-ec.3"},{"openshift_version":"4.12","cpu_architecture":"aarch64","cpu_architectures":["aarch64"],"url":"quay.io/openshift-release-dev/ocp-release:4.12.0-ec.3-aarch64","support_level":"beta","version":"4.12.0-ec.3"}]' # release images required: false - name: MUST_GATHER_IMAGES value: '{"4.8":{"cnv":"registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v2.6.5","ocs":"registry.redhat.io/ocs4/ocs-must-gather-rhel8:v4.8","lso":"registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8:v4.8"},"4.9":{"cnv":"registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v4.9.3","ocs":"registry.redhat.io/odf4/ocs-must-gather-rhel8:v4.9","lso":"registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8:v4.9"},"4.10":{"cnv":"registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel8:v4.10.0","ocs":"registry.redhat.io/odf4/ocs-must-gather-rhel8:v4.10","lso":"registry.redhat.io/openshift4/ose-local-storage-mustgather-rhel8:v4.10"}}' # must-gather images diff --git a/restapi/embedded_spec.go b/restapi/embedded_spec.go index 4e13bcffff3..069a1e6f5a4 100644 --- a/restapi/embedded_spec.go +++ b/restapi/embedded_spec.go @@ -5345,7 +5345,7 @@ func init() { "x-go-custom-tag": "gorm:\"type:timestamp with time zone\"" }, "cpu_architecture": { - "description": "The CPU architecture of the image (x86_64/arm64/etc).", + "description": "The CPU architecture of the image (x86_64/aarch64/etc).", "type": "string", "default": "x86_64", "x-nullable": false @@ -5720,7 +5720,7 @@ func init() { "x-nullable": true }, "cpu_architecture": { - "description": "The CPU architecture of the image (x86_64/arm64/etc).", + "description": "The CPU architecture of the image (x86_64/aarch64/etc).", "type": "string", "default": "x86_64", "x-nullable": false @@ -7620,7 +7620,7 @@ func init() { "x-go-custom-tag": "gorm:\"index\"" }, "cpu_architecture": { - "description": "The CPU architecture of the image (x86_64/arm64/etc).", + "description": "The CPU architecture of the image (x86_64/aarch64/etc).", "type": "string", "default": "x86_64", "x-nullable": false @@ -7752,7 +7752,7 @@ func init() { "x-nullable": true }, "cpu_architecture": { - "description": "The CPU architecture of the image (x86_64/arm64/etc).", + "description": "The CPU architecture of the image (x86_64/aarch64/etc).", "type": "string", "default": "x86_64", "x-nullable": false @@ -8647,7 +8647,7 @@ func init() { ], "properties": { "cpu_architecture": { - "description": "The CPU architecture of the image (x86_64/arm64/etc).", + "description": "The CPU architecture of the image (x86_64/aarch64/etc).", "type": "string", "default": "x86_64", "x-go-custom-tag": "gorm:\"default:'x86_64'\"" @@ -8772,7 +8772,7 @@ func init() { ], "properties": { "cpu_architecture": { - "description": "(DEPRECATED) The CPU architecture of the image (x86_64/arm64/etc).", + "description": "(DEPRECATED) The CPU architecture of the image (x86_64/aarch64/etc).", "type": "string", "default": "x86_64", "x-go-custom-tag": "gorm:\"default:'x86_64'\"" @@ -14854,7 +14854,7 @@ func init() { "x-go-custom-tag": "gorm:\"type:timestamp with time zone\"" }, "cpu_architecture": { - "description": "The CPU architecture of the image (x86_64/arm64/etc).", + "description": "The CPU architecture of the image (x86_64/aarch64/etc).", "type": "string", "default": "x86_64", "x-nullable": false @@ -15229,7 +15229,7 @@ func init() { "x-nullable": true }, "cpu_architecture": { - "description": "The CPU architecture of the image (x86_64/arm64/etc).", + "description": "The CPU architecture of the image (x86_64/aarch64/etc).", "type": "string", "default": "x86_64", "x-nullable": false @@ -17054,7 +17054,7 @@ func init() { "x-go-custom-tag": "gorm:\"index\"" }, "cpu_architecture": { - "description": "The CPU architecture of the image (x86_64/arm64/etc).", + "description": "The CPU architecture of the image (x86_64/aarch64/etc).", "type": "string", "default": "x86_64", "x-nullable": false @@ -17187,7 +17187,7 @@ func init() { "x-nullable": true }, "cpu_architecture": { - "description": "The CPU architecture of the image (x86_64/arm64/etc).", + "description": "The CPU architecture of the image (x86_64/aarch64/etc).", "type": "string", "default": "x86_64", "x-nullable": false @@ -18071,7 +18071,7 @@ func init() { ], "properties": { "cpu_architecture": { - "description": "The CPU architecture of the image (x86_64/arm64/etc).", + "description": "The CPU architecture of the image (x86_64/aarch64/etc).", "type": "string", "default": "x86_64", "x-go-custom-tag": "gorm:\"default:'x86_64'\"" @@ -18196,7 +18196,7 @@ func init() { ], "properties": { "cpu_architecture": { - "description": "(DEPRECATED) The CPU architecture of the image (x86_64/arm64/etc).", + "description": "(DEPRECATED) The CPU architecture of the image (x86_64/aarch64/etc).", "type": "string", "default": "x86_64", "x-go-custom-tag": "gorm:\"default:'x86_64'\"" diff --git a/subsystem/cluster_v2_test.go b/subsystem/cluster_v2_test.go index 32a6f1c4049..91dc528c843 100644 --- a/subsystem/cluster_v2_test.go +++ b/subsystem/cluster_v2_test.go @@ -360,7 +360,7 @@ var _ = Describe("[V2ClusterTests] multiarch", func() { X86infraEnvID = *infraEnv.ID // bound arm64 infraEnv - infraEnv = registerInfraEnvSpecificVersionAndArch(&clusterID, models.ImageTypeFullIso, common.ARM64CPUArchitecture, "") + infraEnv = registerInfraEnvSpecificVersionAndArch(&clusterID, models.ImageTypeFullIso, common.AARCH64CPUArchitecture, "") ARMinfraEnvID = *infraEnv.ID By("register h2 h3 to cluster via the bound arm64 infraenv") diff --git a/swagger.yaml b/swagger.yaml index ec61243b12e..6b14c2a9358 100644 --- a/swagger.yaml +++ b/swagger.yaml @@ -4329,7 +4329,7 @@ definitions: type: string x-nullable: false default: 'x86_64' - description: The CPU architecture of the image (x86_64/arm64/etc). + description: The CPU architecture of the image (x86_64/aarch64/etc). disk_encryption: type: object $ref: '#/definitions/disk-encryption' @@ -4840,7 +4840,7 @@ definitions: type: string x-nullable: false default: 'x86_64' - description: The CPU architecture of the image (x86_64/arm64/etc). + description: The CPU architecture of the image (x86_64/aarch64/etc). ignition_endpoint: type: object $ref: '#/definitions/ignition-endpoint' @@ -6224,7 +6224,7 @@ definitions: cpu_architecture: type: string default: "x86_64" - description: The CPU architecture of the image (x86_64/arm64/etc). + description: The CPU architecture of the image (x86_64/aarch64/etc). x-go-custom-tag: gorm:"default:'x86_64'" url: type: string @@ -6252,7 +6252,7 @@ definitions: cpu_architecture: type: string default: "x86_64" - description: (DEPRECATED) The CPU architecture of the image (x86_64/arm64/etc). + description: (DEPRECATED) The CPU architecture of the image (x86_64/aarch64/etc). x-go-custom-tag: gorm:"default:'x86_64'" cpu_architectures: type: array @@ -6434,7 +6434,7 @@ definitions: type: string x-nullable: false default: 'x86_64' - description: The CPU architecture of the image (x86_64/arm64/etc). + description: The CPU architecture of the image (x86_64/aarch64/etc). discovery_kernel_arguments: type: string x-nullable: true @@ -6511,7 +6511,7 @@ definitions: type: string x-nullable: false default: 'x86_64' - description: The CPU architecture of the image (x86_64/arm64/etc). + description: The CPU architecture of the image (x86_64/aarch64/etc). discovery_kernel_arguments: $ref: '#/definitions/kernel_arguments'