]> Frank Brehm's Git Trees - pixelpark/create-vmware-tpl.git/commitdiff
Extending .gitlab-ci.yml by building a RHEL9 template
authorFrank Brehm <frank.brehm@pixelpark.com>
Thu, 12 Oct 2023 10:34:07 +0000 (12:34 +0200)
committerFrank Brehm <frank.brehm@pixelpark.com>
Thu, 12 Oct 2023 10:34:07 +0000 (12:34 +0200)
.gitlab-ci.yml

index 31ac2546ddf7d2401895a985acbaddefb0866c00..c51420e6036deecaff1947cd3fdd1ba5022842fa 100644 (file)
@@ -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}