From 0d2842fb58c4cbe361d4c1856c9191ab917807a3 Mon Sep 17 00:00:00 2001 From: Frank Brehm Date: Thu, 12 Oct 2023 12:34:07 +0200 Subject: [PATCH] Extending .gitlab-ci.yml by building a RHEL9 template --- .gitlab-ci.yml | 49 ++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 46 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 31ac254..c51420e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -7,6 +7,7 @@ stages: - test - linter + - build-el9 - build-el8 - build-el7 @@ -38,7 +39,9 @@ variables: VMWARE_CONFIG_VERSION: '' VMWARE_CONFIG_VERSION_TEST: 'vmx-15' VMWARE_CONFIG_VERSION_PROD: 'vmx-19' - VM_OS_VERSION: 'centos8_64Guest' + VM_OS_VERSION: '' + VM_OS_VERSION_PROD: 'rhel9_64Guest' + VM_OS_VERSION_TEST: 'rhel8_64Guest' VM_DISK_SIZE_GB: 20 VM_NUM_CPUS: 2 VM_RAM_MB: 4096 @@ -47,6 +50,8 @@ variables: # VM_NETWORK_TEST: '192.168.145.0_24' VM_NETWORK_TEST: '192.168.88.0_23' VM_MAC_ADDRESS: '00:16:3e:54:ab:2b' + VM_IS_RHEL: 'True' + VM_KS_TEMPLATE: 'el9-standard.ks' MAX_WAIT_GENERAL: 60 MAX_WAIT_SHUTDOWN: 120 MAX_WAIT_FOR_FINISH_INSTALL: 1800 @@ -58,7 +63,7 @@ variables: CONFIG_FILE: 'etc/create-vmware-template.ini' ROOT_PASSWORD: 'blablub' SWAP_SPACE_MB: 512 - COBBLER_DISTRO: 'CentOS-Stream-8-x86_64' + COBBLER_DISTRO: 'RHEL-9.2-x86_64' COBBLER_HOST: '' COBBLER_HOST_PROD: 'prd-cobbler01.pixelpark.com' COBBLER_HOST_TEST: 'prd-cobbler01.pixelpark.com' @@ -121,6 +126,7 @@ variables: if [ -z "${COBBLER_TEMPLATES_DIR}" ] ; then COBBLER_TEMPLATES_DIR="${COBBLER_TEMPLATES_DIR_PROD}"; fi if [ -z "${VM_NETWORK}" ] ; then VM_NETWORK="${VM_NETWORK_PROD}"; fi if [ -z "${VMWARE_CONFIG_VERSION}" ] ; then VMWARE_CONFIG_VERSION="${VMWARE_CONFIG_VERSION_PROD}"; fi + if [ -z "${VM_OS_VERSION}" ] ; then VM_OS_VERSION="${VM_OS_VERSION_PROD}"; fi else if [ -z "${MAX_NR_TEMPLATES_STAY}" ] ; then MAX_NR_TEMPLATES_STAY="${MAX_NR_TEMPLATES_STAY_TEST}"; fi; if [ -z "${VSPHERE_HOST}" ] ; then VSPHERE_HOST="${VSPHERE_HOST_TEST}"; fi; @@ -132,6 +138,7 @@ variables: if [ -z "${COBBLER_TEMPLATES_DIR}" ] ; then COBBLER_TEMPLATES_DIR="${COBBLER_TEMPLATES_DIR_TEST}"; fi; if [ -z "${VM_NETWORK}" ] ; then VM_NETWORK="${VM_NETWORK_TEST}"; fi; if [ -z "${VMWARE_CONFIG_VERSION}" ] ; then VMWARE_CONFIG_VERSION="${VMWARE_CONFIG_VERSION_TEST}"; fi + if [ -z "${VM_OS_VERSION}" ] ; then VM_OS_VERSION="${VM_OS_VERSION_TEST}"; fi fi - 'echo "Configuration file: \"${CONFIG_FILE}\""' - 'touch "${CONFIG_FILE}"' @@ -222,6 +229,8 @@ Linter: echo "ram_mb = ${VM_RAM_MB}" >> "${CONFIG_FILE}" echo "network = ${VM_NETWORK}" >> "${CONFIG_FILE}" echo "root_password = ${ROOT_PASSWORD}" >> "${CONFIG_FILE}" + echo "is_rhel = ${VM_IS_RHEL}" >> "${CONFIG_FILE}" + echo "ks_template = ${VM_KS_TEMPLATE}" >> "${CONFIG_FILE}" echo "" >> "${CONFIG_FILE}" echo "[Cobbler]" >> "${CONFIG_FILE}" echo "host = ${COBBLER_HOST}" >> "${CONFIG_FILE}" @@ -276,16 +285,42 @@ Linter: bin/create-vmware-template --verbose --color yes; fi +Create RHEL9 template: + extends: + - .template_job + - .build-job + stage: build-el9 + needs: + - 'Linter' + variables: + OS_ID: rhel-9 + VM_OS_VERSION_PROD: 'rhel9_64Guest' + VM_OS_VERSION_TEST: 'rhel8_64Guest' + VM_IS_RHEL: 'True' + VM_KS_TEMPLATE: 'el9-standard.ks' + COBBLER_DISTRO: 'RHEL-9.2-x86_64' + environment: + name: ${SYSTEM_STATUS} + except: + - /^dev-.*$/ + - /^dev\/.*$/ + - /^hf.*$/ + - tags + only: + - schedules + Create Centos8 template: extends: - .template_job - .build-job stage: build-el8 needs: - - 'Linter' + - 'Create RHEL9 template' variables: OS_ID: centos-stream-8 VM_OS_VERSION: 'centos8_64Guest' + VM_IS_RHEL: 'False' + VM_KS_TEMPLATE: 'el8-standard.ks' COBBLER_DISTRO: 'CentOS-8-Stream-x86_64' environment: name: ${SYSTEM_STATUS} @@ -307,6 +342,8 @@ Create Centos8 template: # variables: # OS_ID: almalinux-8 # VM_OS_VERSION: 'centos8_64Guest' +# VM_IS_RHEL: 'False' +# VM_KS_TEMPLATE: 'el8-standard.ks' # COBBLER_DISTRO: 'CentOS-8-Stream-x86_64' # environment: # name: ${SYSTEM_STATUS} @@ -328,6 +365,8 @@ Create Centos8 template: # variables: # OS_ID: rocky-8 # VM_OS_VERSION: 'centos8_64Guest' +# VM_IS_RHEL: 'False' +# VM_KS_TEMPLATE: 'el8-standard.ks' # COBBLER_DISTRO: 'CentOS-8-Stream-x86_64' # environment: # name: ${SYSTEM_STATUS} @@ -350,6 +389,8 @@ Create Centos7 template: variables: OS_ID: centos-7 VM_OS_VERSION: 'centos7_64Guest' + VM_IS_RHEL: 'False' + VM_KS_TEMPLATE: 'el7-standard.ks' COBBLER_DISTRO: 'CentOS-7.9-x86_64' environment: name: ${SYSTEM_STATUS} @@ -371,6 +412,8 @@ Create OracleLinux7 template: variables: OS_ID: oel-7 VM_OS_VERSION: 'oracleLinux7_64Guest' + VM_IS_RHEL: 'False' + VM_KS_TEMPLATE: 'el7-standard.ks' COBBLER_DISTRO: 'Oracle-Linux-7.8-x86_64' environment: name: ${SYSTEM_STATUS} -- 2.39.5