diff --git a/lib/utils.pm b/lib/utils.pm
index 3777f7cc..be4b376c 100644
--- a/lib/utils.pm
+++ b/lib/utils.pm
@@ -434,7 +434,13 @@ sub repos_mirrorlist {
# have not been updated, and the infra repo is rejected as its
# metadata checksum isn't known to MM
my $files = shift;
- $files ||= "/etc/yum.repos.d/fedora*.repo";
+ my $currentversion = get_var("CURRREL");
+ if ($currentversion eq '8') {
+ $files ||= "/etc/yum.repos.d/Rocky*.repo";
+ }
+ else {
+ $files ||= "/etc/yum.repos.d/rocky*.repo";
+ }
assert_script_run "sed -i -e 's,metalink,mirrorlist,g' ${files}";
}
diff --git a/needles/anaconda/install_destination/rocky-add_iscsi_target-20220217.json b/needles/anaconda/install_destination/rocky-add_iscsi_target-20220217.json
new file mode 100644
index 00000000..c61fea76
--- /dev/null
+++ b/needles/anaconda/install_destination/rocky-add_iscsi_target-20220217.json
@@ -0,0 +1,16 @@
+{
+ "area": [
+ {
+ "type": "match",
+ "height": 16,
+ "ypos": 691,
+ "xpos": 324,
+ "width": 113
+ }
+ ],
+ "properties": [],
+ "tags": [
+ "ENV-DISTRI-rocky",
+ "anaconda_install_destination_add_iscsi_target"
+ ]
+}
\ No newline at end of file
diff --git a/needles/anaconda/install_destination/rocky-add_iscsi_target-20220217.png b/needles/anaconda/install_destination/rocky-add_iscsi_target-20220217.png
new file mode 100644
index 00000000..7c1a7af1
Binary files /dev/null and b/needles/anaconda/install_destination/rocky-add_iscsi_target-20220217.png differ
diff --git a/needles/anaconda/install_destination/rocky-add_network_disk-20220217.json b/needles/anaconda/install_destination/rocky-add_network_disk-20220217.json
new file mode 100644
index 00000000..1aedf4f0
--- /dev/null
+++ b/needles/anaconda/install_destination/rocky-add_network_disk-20220217.json
@@ -0,0 +1,16 @@
+{
+ "area": [
+ {
+ "height": 17,
+ "type": "match",
+ "ypos": 375,
+ "width": 65,
+ "xpos": 44
+ }
+ ],
+ "properties": [],
+ "tags": [
+ "anaconda_install_destination_add_network_disk",
+ "ENV-DISTRI-rocky"
+ ]
+}
\ No newline at end of file
diff --git a/needles/anaconda/install_destination/rocky-add_network_disk-20220217.png b/needles/anaconda/install_destination/rocky-add_network_disk-20220217.png
new file mode 100644
index 00000000..710c0282
Binary files /dev/null and b/needles/anaconda/install_destination/rocky-add_network_disk-20220217.png differ
diff --git a/needles/anaconda/install_destination/rocky-select_target-20220217.json b/needles/anaconda/install_destination/rocky-select_target-20220217.json
new file mode 100644
index 00000000..cca0c4d0
--- /dev/null
+++ b/needles/anaconda/install_destination/rocky-select_target-20220217.json
@@ -0,0 +1,16 @@
+{
+ "area": [
+ {
+ "width": 18,
+ "xpos": 19,
+ "type": "match",
+ "height": 17,
+ "ypos": 227
+ }
+ ],
+ "properties": [],
+ "tags": [
+ "ENV-DISTRI-rocky",
+ "anaconda_install_destination_select_target"
+ ]
+}
\ No newline at end of file
diff --git a/needles/anaconda/install_destination/rocky-select_target-20220217.png b/needles/anaconda/install_destination/rocky-select_target-20220217.png
new file mode 100644
index 00000000..d2c92480
Binary files /dev/null and b/needles/anaconda/install_destination/rocky-select_target-20220217.png differ
diff --git a/needles/anaconda/install_destination/rocky-target_auth_type-20220217.json b/needles/anaconda/install_destination/rocky-target_auth_type-20220217.json
new file mode 100644
index 00000000..437090d6
--- /dev/null
+++ b/needles/anaconda/install_destination/rocky-target_auth_type-20220217.json
@@ -0,0 +1,16 @@
+{
+ "area": [
+ {
+ "xpos": 426,
+ "width": 88,
+ "type": "match",
+ "height": 17,
+ "ypos": 313
+ }
+ ],
+ "properties": [],
+ "tags": [
+ "ENV-DISTRI-rocky",
+ "anaconda_install_destination_target_auth_type"
+ ]
+}
\ No newline at end of file
diff --git a/needles/anaconda/install_destination/rocky-target_auth_type-20220217.png b/needles/anaconda/install_destination/rocky-target_auth_type-20220217.png
new file mode 100644
index 00000000..5e33b443
Binary files /dev/null and b/needles/anaconda/install_destination/rocky-target_auth_type-20220217.png differ
diff --git a/needles/anaconda/install_destination/rocky-target_auth_type_chap-20220217.json b/needles/anaconda/install_destination/rocky-target_auth_type_chap-20220217.json
new file mode 100644
index 00000000..4280ee4b
--- /dev/null
+++ b/needles/anaconda/install_destination/rocky-target_auth_type_chap-20220217.json
@@ -0,0 +1,16 @@
+{
+ "area": [
+ {
+ "xpos": 421,
+ "width": 83,
+ "type": "match",
+ "height": 20,
+ "ypos": 342
+ }
+ ],
+ "properties": [],
+ "tags": [
+ "ENV-DISTRI-rocky",
+ "anaconda_install_destination_target_auth_type_chap"
+ ]
+}
\ No newline at end of file
diff --git a/needles/anaconda/install_destination/rocky-target_auth_type_chap-20220217.png b/needles/anaconda/install_destination/rocky-target_auth_type_chap-20220217.png
new file mode 100644
index 00000000..c27af823
Binary files /dev/null and b/needles/anaconda/install_destination/rocky-target_auth_type_chap-20220217.png differ
diff --git a/needles/anaconda/install_destination/rocky-target_login-20220217.json b/needles/anaconda/install_destination/rocky-target_login-20220217.json
new file mode 100644
index 00000000..ae9539e6
--- /dev/null
+++ b/needles/anaconda/install_destination/rocky-target_login-20220217.json
@@ -0,0 +1,16 @@
+{
+ "area": [
+ {
+ "type": "match",
+ "height": 18,
+ "ypos": 557,
+ "width": 43,
+ "xpos": 748
+ }
+ ],
+ "properties": [],
+ "tags": [
+ "ENV-DISTRI-rocky",
+ "anaconda_install_destination_target_login"
+ ]
+}
\ No newline at end of file
diff --git a/needles/anaconda/install_destination/rocky-target_login-20220217.png b/needles/anaconda/install_destination/rocky-target_login-20220217.png
new file mode 100644
index 00000000..60407c1c
Binary files /dev/null and b/needles/anaconda/install_destination/rocky-target_login-20220217.png differ
diff --git a/needles/anaconda/partitioning/rocky-device_modify-20220217.json b/needles/anaconda/partitioning/rocky-device_modify-20220217.json
new file mode 100644
index 00000000..34b81729
--- /dev/null
+++ b/needles/anaconda/partitioning/rocky-device_modify-20220217.json
@@ -0,0 +1,16 @@
+{
+ "area": [
+ {
+ "ypos": 173,
+ "height": 20,
+ "type": "match",
+ "width": 55,
+ "xpos": 784
+ }
+ ],
+ "properties": [],
+ "tags": [
+ "ENV-DISTRI-rocky",
+ "anaconda_part_device_modify"
+ ]
+}
\ No newline at end of file
diff --git a/needles/anaconda/partitioning/rocky-device_modify-20220217.png b/needles/anaconda/partitioning/rocky-device_modify-20220217.png
new file mode 100644
index 00000000..612ecbe9
Binary files /dev/null and b/needles/anaconda/partitioning/rocky-device_modify-20220217.png differ
diff --git a/needles/anaconda/partitioning/rocky-device_sda_selected-20220217.json b/needles/anaconda/partitioning/rocky-device_sda_selected-20220217.json
new file mode 100644
index 00000000..5ea25b70
--- /dev/null
+++ b/needles/anaconda/partitioning/rocky-device_sda_selected-20220217.json
@@ -0,0 +1,17 @@
+{
+ "area": [
+ {
+ "width": 76,
+ "xpos": 251,
+ "height": 16,
+ "type": "match",
+ "ypos": 363
+ }
+ ],
+ "properties": [],
+ "tags": [
+ "anaconda_part_device_sda",
+ "anaconda_part_device_sda_selected",
+ "ENV-DISTRI-rocky"
+ ]
+}
\ No newline at end of file
diff --git a/needles/anaconda/partitioning/rocky-device_sda_selected-20220217.png b/needles/anaconda/partitioning/rocky-device_sda_selected-20220217.png
new file mode 100644
index 00000000..a88ff3bc
Binary files /dev/null and b/needles/anaconda/partitioning/rocky-device_sda_selected-20220217.png differ
diff --git a/needles/anaconda/partitioning/rocky-device_select-20220217.json b/needles/anaconda/partitioning/rocky-device_select-20220217.json
new file mode 100644
index 00000000..c3d5c483
--- /dev/null
+++ b/needles/anaconda/partitioning/rocky-device_select-20220217.json
@@ -0,0 +1,16 @@
+{
+ "area": [
+ {
+ "xpos": 713,
+ "width": 46,
+ "height": 17,
+ "type": "match",
+ "ypos": 478
+ }
+ ],
+ "properties": [],
+ "tags": [
+ "ENV-DISTRI-rocky",
+ "anaconda_part_device_select"
+ ]
+}
\ No newline at end of file
diff --git a/needles/anaconda/partitioning/rocky-device_select-20220217.png b/needles/anaconda/partitioning/rocky-device_select-20220217.png
new file mode 100644
index 00000000..33ef6058
Binary files /dev/null and b/needles/anaconda/partitioning/rocky-device_select-20220217.png differ
diff --git a/needles/console/rocky-bootloader_bios_pxe-20220212.json b/needles/console/rocky-bootloader_bios_pxe-20220212.json
new file mode 100644
index 00000000..26b14371
--- /dev/null
+++ b/needles/console/rocky-bootloader_bios_pxe-20220212.json
@@ -0,0 +1,16 @@
+{
+ "area": [
+ {
+ "xpos": 203,
+ "ypos": 279,
+ "width": 227,
+ "height": 21,
+ "type": "match"
+ }
+ ],
+ "properties": [],
+ "tags": [
+ "ENV-DISTRI-rocky",
+ "bootloader_bios"
+ ]
+}
\ No newline at end of file
diff --git a/needles/console/rocky-bootloader_bios_pxe-20220212.png b/needles/console/rocky-bootloader_bios_pxe-20220212.png
new file mode 100644
index 00000000..96c5727b
Binary files /dev/null and b/needles/console/rocky-bootloader_bios_pxe-20220212.png differ
diff --git a/needles/console/rocky-bootloader_pxe-20220218.json b/needles/console/rocky-bootloader_pxe-20220218.json
new file mode 100644
index 00000000..f7989993
--- /dev/null
+++ b/needles/console/rocky-bootloader_pxe-20220218.json
@@ -0,0 +1,16 @@
+{
+ "area": [
+ {
+ "xpos": 50,
+ "width": 161,
+ "ypos": 335,
+ "height": 17,
+ "type": "match"
+ }
+ ],
+ "properties": [],
+ "tags": [
+ "ENV-DISTRI-rocky",
+ "bootloader"
+ ]
+}
\ No newline at end of file
diff --git a/needles/console/rocky-bootloader_pxe-20220218.png b/needles/console/rocky-bootloader_pxe-20220218.png
new file mode 100644
index 00000000..b34ea557
Binary files /dev/null and b/needles/console/rocky-bootloader_pxe-20220218.png differ
diff --git a/templates.fif.json b/templates.fif.json
index dee0ae00..b35392fe 100644
--- a/templates.fif.json
+++ b/templates.fif.json
@@ -568,6 +568,37 @@
"USER_LOGIN": "qwerty"
}
},
+ "install_iscsi": {
+ "profiles": {
+ "rocky-universal-aarch64-*-aarch64": 40,
+ "rocky-universal-x86_64-*-64bit": 40
+ },
+ "settings": {
+ "ANACONDA_STATIC": "172.16.2.111",
+ "INSTALL_UNLOCK": "support_ready",
+ "NICTYPE": "tap",
+ "PARALLEL_WITH": "support_server",
+ "PARTITIONING": "custom_iscsi",
+ "ROOT_PASSWORD": "weakpassword",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "install_kickstart_nfs": {
+ "profiles": {
+ "rocky-universal-aarch64-*-aarch64": 30,
+ "rocky-universal-x86_64-*-64bit": 30
+ },
+ "settings": {
+ "GRUB": "inst.ks=nfs:172.16.2.110:/export/root-user-crypted-net.ks",
+ "INSTALL_UNLOCK": "support_ready",
+ "KICKSTART": "1",
+ "NICTYPE": "tap",
+ "PARALLEL_WITH": "support_server",
+ "ROOT_PASSWORD": "111111",
+ "USER_LOGIN": "false",
+ "WORKER_CLASS": "tap"
+ }
+ },
"install_lvmthin": {
"profiles": {
"rocky-universal-aarch64-*-aarch64": 40,
@@ -744,6 +775,45 @@
"DESKTOP": "false"
}
},
+ "install_repository_nfs_graphical": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 30,
+ "rocky-dvd-iso-x86_64-*-64bit": 30
+ },
+ "settings": {
+ "INSTALL_UNLOCK": "support_ready",
+ "NICTYPE": "tap",
+ "PARALLEL_WITH": "support_server",
+ "REPOSITORY_GRAPHICAL": "nfs:nfsvers=4:172.16.2.110:/repo",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "install_repository_nfs_variation": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 30,
+ "rocky-dvd-iso-x86_64-*-64bit": 30
+ },
+ "settings": {
+ "INSTALL_UNLOCK": "support_ready",
+ "NICTYPE": "tap",
+ "PARALLEL_WITH": "support_server",
+ "REPOSITORY_VARIATION": "nfs:nfsvers=4:172.16.2.110:/repo",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "install_repository_nfsiso_variation": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 30,
+ "rocky-dvd-iso-x86_64-*-64bit": 30
+ },
+ "settings": {
+ "INSTALL_UNLOCK": "support_ready",
+ "NICTYPE": "tap",
+ "PARALLEL_WITH": "support_server",
+ "REPOSITORY_VARIATION": "nfs:nfsvers=4:172.16.2.110:/iso/image.iso",
+ "WORKER_CLASS": "tap"
+ }
+ },
"install_rescue_encrypted": {
"profiles": {
"rocky-universal-aarch64-*-aarch64": 31,
@@ -865,6 +935,80 @@
"DESKTOP": "false"
}
},
+ "install_updates_nfs": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 40,
+ "rocky-dvd-iso-x86_64-*-64bit": 40
+ },
+ "settings": {
+ "GRUB": "inst.stage2=nfs:nfsvers=4:172.16.2.110:/repo",
+ "INSTALL_UNLOCK": "support_ready",
+ "NICTYPE": "tap",
+ "PARALLEL_WITH": "support_server",
+ "QEMURAM": "3072",
+ "TEST_UPDATES": "1",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "install_vnc_client": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 40,
+ "rocky-dvd-iso-x86_64-*-64bit": 40
+ },
+ "settings": {
+ "BOOTFROM": "c",
+ "DESKTOP": "gnome",
+ "HDD_1": "disk_rocky%CURRREL%_desktop_%ARCH%.qcow2",
+ "INSTALL": "1",
+ "NICTYPE": "tap",
+ "PARALLEL_WITH": "install_vnc_server",
+ "PREINSTALL": "_vnc_client_connect_pre _graphical_wait_login _vnc_client_connect",
+ "VNC_CLIENT": "1",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "install_vnc_server": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 40,
+ "rocky-dvd-iso-x86_64-*-64bit": 40
+ },
+ "settings": {
+ "GRUB": "inst.vnc net.ifnames=0 biosdevname=0 ip=172.16.2.114::172.16.2.2:255.255.255.0:vnc001.test.openqa.fedoraproject.org:eth0:off",
+ "NICTYPE": "tap",
+ "VNC_SERVER": "1",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "install_vncconnect_client": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 40,
+ "rocky-dvd-iso-x86_64-*-64bit": 40
+ },
+ "settings": {
+ "BOOTFROM": "c",
+ "DESKTOP": "gnome",
+ "HDD_1": "disk_rocky%CURRREL%_desktop_%ARCH%.qcow2",
+ "INSTALL": "1",
+ "NICTYPE": "tap",
+ "PREINSTALL": "_vncconnect_client_setup_pre _graphical_wait_login _vncconnect_client_setup",
+ "VNC_CLIENT": "1",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "install_vncconnect_server": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 40,
+ "rocky-dvd-iso-x86_64-*-64bit": 40
+ },
+ "settings": {
+ "GRUB": "inst.vnc inst.vncconnect=172.16.2.117:5500 net.ifnames=0 biosdevname=0 ip=172.16.2.116::172.16.2.2:255.255.255.0:vnc003.test.openqa.fedoraproject.org:eth0:off",
+ "INSTALL_UNLOCK": "vncconnect_client_ready",
+ "NICTYPE": "tap",
+ "PARALLEL_WITH": "install_vncconnect_client",
+ "VNC_SERVER": "1",
+ "WORKER_CLASS": "tap"
+ }
+ },
"install_xfs": {
"profiles": {
"rocky-universal-aarch64-*-aarch64": 40,
@@ -902,6 +1046,42 @@
"USER_LOGIN": "false"
}
},
+ "realmd_join_cockpit": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 30,
+ "rocky-dvd-iso-x86_64-*-64bit": 30
+ },
+ "settings": {
+ "+HDD_1": "disk_%MACHINE%_cockpit.qcow2",
+ "+START_AFTER_TEST": "server_cockpit_default",
+ "BOOTFROM": "c",
+ "NICTYPE": "tap",
+ "PARALLEL_WITH": "server_role_deploy_domain_controller",
+ "POSTINSTALL": "realmd_join_cockpit freeipa_webui freeipa_password_change freeipa_client",
+ "POST_STATIC": "172.16.2.102 client002.test.openqa.fedoraproject.org",
+ "ROOT_PASSWORD": "weakpassword",
+ "USER_LOGIN": "false",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "realmd_join_sssd": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 20,
+ "rocky-dvd-iso-x86_64-*-64bit": 20
+ },
+ "settings": {
+ "BOOTFROM": "c",
+ "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2",
+ "NICTYPE": "tap",
+ "PARALLEL_WITH": "server_role_deploy_domain_controller",
+ "POSTINSTALL": "realmd_join_sssd freeipa_client",
+ "POST_STATIC": "172.16.2.103 client003.test.openqa.fedoraproject.org",
+ "ROOT_PASSWORD": "weakpassword",
+ "START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%",
+ "USER_LOGIN": "false",
+ "WORKER_CLASS": "tap"
+ }
+ },
"release_identification": {
"profiles": {
"rocky-dvd-iso-aarch64-*-aarch64": 40,
@@ -959,6 +1139,24 @@
"USER_LOGIN": "false"
}
},
+ "server_database_client": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 30,
+ "rocky-dvd-iso-x86_64-*-64bit": 30
+ },
+ "settings": {
+ "BOOTFROM": "c",
+ "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2",
+ "NICTYPE": "tap",
+ "PARALLEL_WITH": "server_role_deploy_database_server",
+ "POSTINSTALL": "database_client",
+ "POST_STATIC": "172.16.2.105 dbclient.test.openqa.fedoraproject.org",
+ "ROOT_PASSWORD": "weakpassword",
+ "START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%",
+ "USER_LOGIN": "false",
+ "WORKER_CLASS": "tap"
+ }
+ },
"server_filesystem_default": {
"profiles": {
"rocky-dvd-iso-aarch64-*-aarch64": 20,
@@ -986,6 +1184,176 @@
"START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%",
"USER_LOGIN": "false"
}
+ },
+ "server_freeipa_replication_client": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 30,
+ "rocky-dvd-iso-x86_64-*-64bit": 20
+ },
+ "settings": {
+ "BOOTFROM": "c",
+ "FREEIPA_REPLICA_CLIENT": "1",
+ "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2",
+ "NICTYPE": "tap",
+ "PARALLEL_WITH": "server_freeipa_replication_replica",
+ "POSTINSTALL": "realmd_join_sssd freeipa_client",
+ "POST_STATIC": "172.16.2.108 client005.test.openqa.fedoraproject.org",
+ "ROOT_PASSWORD": "weakpassword",
+ "START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%",
+ "USER_LOGIN": "false",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "server_freeipa_replication_master": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 30,
+ "rocky-dvd-iso-x86_64-*-64bit": 20
+ },
+ "settings": {
+ "BOOTFROM": "c",
+ "FREEIPA_REPLICA_MASTER": "1",
+ "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2",
+ "NICTYPE": "tap",
+ "PARALLEL_CANCEL_WHOLE_CLUSTER": "0",
+ "POSTINSTALL": "role_deploy_domain_controller role_deploy_domain_controller_check",
+ "POST_STATIC": "172.16.2.106 ipa002.test.openqa.fedoraproject.org",
+ "ROOT_PASSWORD": "weakpassword",
+ "START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%",
+ "USER_LOGIN": "false",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "server_freeipa_replication_replica": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 30,
+ "rocky-dvd-iso-x86_64-*-64bit": 20
+ },
+ "settings": {
+ "BOOTFROM": "c",
+ "FREEIPA_REPLICA": "1",
+ "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2",
+ "NICTYPE": "tap",
+ "PARALLEL_CANCEL_WHOLE_CLUSTER": "0",
+ "PARALLEL_WITH": "server_freeipa_replication_master",
+ "POSTINSTALL": "realmd_join_sssd",
+ "POST_STATIC": "172.16.2.107 ipa003.test.openqa.fedoraproject.org",
+ "ROOT_PASSWORD": "weakpassword",
+ "START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%",
+ "USER_LOGIN": "false",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "server_realmd_join_kickstart": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 20,
+ "rocky-dvd-iso-x86_64-*-64bit": 20
+ },
+ "settings": {
+ "GRUB": "inst.ks=hd:vdb1:/freeipaclient.ks",
+ "HDD_2": "disk_ks-%CURRREL%.img",
+ "INSTALL_UNLOCK": "freeipa_ready",
+ "KICKSTART": "1",
+ "NICTYPE": "tap",
+ "NUMDISKS": "2",
+ "PARALLEL_WITH": "server_role_deploy_domain_controller",
+ "POSTINSTALL": "freeipa_client",
+ "ROOT_PASSWORD": "anaconda",
+ "USER_LOGIN": "false",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "server_remote_logging_client": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 20,
+ "rocky-dvd-iso-x86_64-*-64bit": 20
+ },
+ "settings": {
+ "BOOTFROM": "c",
+ "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2",
+ "NICTYPE": "tap",
+ "PARALLEL_WITH": "server_remote_logging_server",
+ "POSTINSTALL": "server_remote_logging_client",
+ "POST_STATIC": "172.16.2.113 rsyslogclient.test.openqa.fedoraproject.org",
+ "ROOT_PASSWORD": "weakpassword",
+ "START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%",
+ "USER_LOGIN": "false",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "server_remote_logging_server": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 20,
+ "rocky-dvd-iso-x86_64-*-64bit": 20
+ },
+ "settings": {
+ "BOOTFROM": "c",
+ "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2",
+ "NICTYPE": "tap",
+ "PARALLEL_CANCEL_WHOLE_CLUSTER": "0",
+ "POSTINSTALL": "server_remote_logging_server",
+ "POST_STATIC": "172.16.2.112 rsyslogserver.test.openqa.fedoraproject.org",
+ "ROOT_PASSWORD": "weakpassword",
+ "START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%",
+ "USER_LOGIN": "false",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "server_role_deploy_database_server": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 20,
+ "rocky-dvd-iso-x86_64-*-64bit": 20
+ },
+ "settings": {
+ "BOOTFROM": "c",
+ "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2",
+ "NICTYPE": "tap",
+ "PARALLEL_CANCEL_WHOLE_CLUSTER": "0",
+ "POSTINSTALL": "role_deploy_database_server",
+ "POST_STATIC": "172.16.2.104 db.test.openqa.fedoraproject.org",
+ "ROOT_PASSWORD": "weakpassword",
+ "START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%",
+ "USER_LOGIN": "false",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "server_role_deploy_domain_controller": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 20,
+ "rocky-dvd-iso-x86_64-*-64bit": 20
+ },
+ "settings": {
+ "BOOTFROM": "c",
+ "HDD_1": "disk_%FLAVOR%_%MACHINE%.qcow2",
+ "NICTYPE": "tap",
+ "PARALLEL_CANCEL_WHOLE_CLUSTER": "0",
+ "POSTINSTALL": "role_deploy_domain_controller role_deploy_domain_controller_check",
+ "POST_STATIC": "172.16.2.100 ipa001.test.openqa.fedoraproject.org",
+ "ROOT_PASSWORD": "weakpassword",
+ "START_AFTER_TEST": "%DEPLOY_UPLOAD_TEST%",
+ "USER_LOGIN": "false",
+ "WORKER_CLASS": "tap"
+ }
+ },
+ "support_server": {
+ "profiles": {
+ "rocky-dvd-iso-aarch64-*-aarch64": 10,
+ "rocky-dvd-iso-x86_64-*-64bit": 10,
+ "rocky-universal-aarch64-*-aarch64": 10,
+ "rocky-universal-x86_64-*-64bit": 10
+ },
+ "settings": {
+ "BOOTFROM": "c",
+ "HDD_1": "disk_rocky%CURRREL%_support_%ARCH%.qcow2",
+ "NICTYPE": "tap",
+ "NUMDISKS": "2",
+ "PARALLEL_CANCEL_WHOLE_CLUSTER": "0",
+ "POSTINSTALL": "_support_server",
+ "POST_STATIC": "172.16.2.110 support.test.openqa.rockylinux.org",
+ "ROOT_PASSWORD": "weakpassword",
+ "TEST_TARGET": "NONE",
+ "USER_LOGIN": "false",
+ "WORKER_CLASS": "tap"
+ }
}
}
}
diff --git a/tests/_boot_to_anaconda.pm b/tests/_boot_to_anaconda.pm
index 9aa372d2..d48bc9ab 100644
--- a/tests/_boot_to_anaconda.pm
+++ b/tests/_boot_to_anaconda.pm
@@ -90,7 +90,7 @@ sub run {
# match for the installer bootloader if it hangs around for a
# while after do_bootloader finishes (in PXE case it does)
sleep 20;
- assert_screen "bootloader", 1800;
+ assert_screen "bootloader", 3600;
}
else {
if (get_var("ANACONDA_TEXT")) {
diff --git a/tests/_support_server.pm b/tests/_support_server.pm
index e752b6ed..9c2b0e14 100644
--- a/tests/_support_server.pm
+++ b/tests/_support_server.pm
@@ -8,11 +8,14 @@ use tapnet;
use utils;
sub _pxe_setup {
+ # This happens before local DNS server is running and dnf will fail. Temporarily add 8.8.8.8 to resolve.conf
+ assert_script_run "echo 'nameserver 8.8.8.8' >> /etc/resolv.conf";
+
# set up PXE server (via dnsmasq). Not used for update tests.
# don't get hung up on slow mirrors when DNFing...
repos_mirrorlist;
# create necessary dirs
- assert_script_run "mkdir -p /var/lib/tftpboot/fedora";
+ assert_script_run "mkdir -p /var/lib/tftpboot/rocky";
# basic tftp config
assert_script_run "printf 'enable-tftp\ntftp-root=/var/lib/tftpboot\ntftp-secure\n' >> /etc/dnsmasq.conf";
# pxe boot config
@@ -23,7 +26,7 @@ sub _pxe_setup {
# install and configure bootloaders
my $ourversion = get_var("CURRREL");
my $testversion = get_var("RELEASE");
- assert_script_run "mkdir -p /var/tmp/fedora";
+ assert_script_run "mkdir -p /var/tmp/rocky";
my $arch = get_var("ARCH");
if ($arch eq 'x86_64') {
@@ -31,15 +34,23 @@ sub _pxe_setup {
assert_script_run "mkdir -p /var/lib/tftpboot/pxelinux.cfg";
# install bootloader packages
assert_script_run "dnf -y install syslinux", 120;
- assert_script_run "dnf -y --releasever=$ourversion --installroot=/var/tmp/fedora install shim-x64 grub2-efi-x64", 300;
+ assert_script_run "rpm --root=/var/tmp/rocky --rebuilddb", 60;
+ assert_script_run "cd /var/tmp; dnf download rocky-release rocky-repos rocky-gpg-keys", 60;
+ assert_script_run "rpm --root=/var/tmp/rocky --nodeps -i /var/tmp/*.rpm", 60;
+ #assert_script_run "sed -i /var/tmp/rocky/etc/yum.repos.d/Rocky-*.repo -e 's/repo=/repo=rocky-/g'", 60;
+ assert_script_run "dnf -y --releasever=$ourversion --refresh --installroot=/var/tmp/rocky install shim-x64 grub2-efi-x64", 1800;
+
# copy bootloader files to tftp root
assert_script_run "cp /usr/share/syslinux/{pxelinux.0,vesamenu.c32,ldlinux.c32,libcom32.c32,libutil.c32} /var/lib/tftpboot";
- assert_script_run "cp /var/tmp/fedora/boot/efi/EFI/fedora/{shim.efi,grubx64.efi} /var/lib/tftpboot";
+ assert_script_run "cp /var/tmp/rocky/boot/efi/EFI/rocky/{shimx64.efi,shimx64-rocky.efi,grubx64.efi} /var/lib/tftpboot";
# bootloader configs
# BIOS
- assert_script_run "printf 'default vesamenu.c32\nprompt 1\ntimeout 600\n\nlabel linux\n menu label ^Install Fedora 64-bit\n menu default\n kernel fedora/vmlinuz\n append initrd=fedora/initrd.img inst.ks=file:///ks.cfg ip=dhcp\nlabel local\n menu label Boot from ^local drive\n localboot 0xffff\n' >> /var/lib/tftpboot/pxelinux.cfg/default";
+ assert_script_run "printf 'default vesamenu.c32\nprompt 1\ntimeout 600\n\nlabel linux\n menu label ^Install Rocky Linux 64-bit\n menu default\n kernel rocky/vmlinuz\n append initr
+d=rocky/initrd.img inst.ks=file:///ks.cfg ip=dhcp\nlabel local\n menu label Boot from ^local drive\n localboot 0xffff\n' >> /var/lib/tftpboot/pxelinux.cfg/default";
# UEFI
- assert_script_run "printf 'function load_video {\n insmod efi_gop\n insmod efi_uga\n insmod ieee1275_fb\n insmod vbe\n insmod vga\n insmod video_bochs\n insmod video_cirrus\n}\n\nload_video\nset gfxpayload=keep\ninsmod gzio\n\nmenuentry \"Install Fedora 64-bit\" --class fedora --class gnu-linux --class gnu --class os {\n linuxefi fedora/vmlinuz ip=dhcp inst.ks=file:///ks.cfg\n initrdefi fedora/initrd.img\n}' >> /var/lib/tftpboot/grub.cfg";
+ assert_script_run "printf 'function load_video {\n insmod efi_gop\n insmod efi_uga\n insmod ieee1275_fb\n insmod vbe\n insmod vga\n insmod video_bochs\n insmod video_cirrus\n}\
+n\nload_video\nset gfxpayload=keep\ninsmod gzio\n\nmenuentry \"Install Rocky Linux 64-bit\" --class rocky --class gnu-linux --class gnu --class os {\n linuxefi rocky/vmlinuz ip=dhcp inst.ks=
+file:///ks.cfg\n initrdefi rocky/initrd.img\n}' >> /var/lib/tftpboot/grub.cfg";
# DEBUG DEBUG
upload_logs "/etc/dnsmasq.conf";
upload_logs "/var/lib/tftpboot/grub.cfg";
@@ -49,11 +60,11 @@ sub _pxe_setup {
elsif ($arch eq 'ppc64le') {
# ppc64le: use grub2 for OFW
# install bootloader tools package
- assert_script_run "dnf -y install grub2-tools-extra", 180;
+ assert_script_run "dnf -y install grub2-tools-extra", 360;
# install a network bootloader to tftp root
assert_script_run "grub2-mknetdir --net-directory=/var/lib/tftpboot";
# bootloader config
- assert_script_run "printf 'set default=0\nset timeout=5\n\nmenuentry \"Install Fedora 64-bit\" --class fedora --class gnu-linux --class gnu --class os {\n linux fedora/vmlinuz ip=dhcp inst.ks=file:///ks.cfg\n initrd fedora/initrd.img\n}' >> /var/lib/tftpboot/boot/grub2/grub.cfg";
+ assert_script_run "printf 'set default=0\nset timeout=5\n\nmenuentry \"Install Rocky Linux\" --class rocky --class gnu-linux --class gnu --class os {\n linux rocky/vmlinuz ip=dhcp inst.ks=file:///ks.cfg\n initrd rocky/initrd.img\n}' >> /var/lib/tftpboot/boot/grub2/grub.cfg";
# DEBUG DEBUG
upload_logs "/etc/dnsmasq.conf";
upload_logs "/var/lib/tftpboot/boot/grub2/grub.cfg";
@@ -63,9 +74,9 @@ sub _pxe_setup {
# aarch64: use grub2 with 'linux' for UEFI
# copy bootloader files to tftp root (we just use the system
# bootloader, no need to install packages)
- assert_script_run "cp /boot/efi/EFI/fedora/{shim.efi,grubaa64.efi} /var/lib/tftpboot";
+ assert_script_run "cp /boot/efi/EFI/rocky/{shim.efi,grubaa64.efi} /var/lib/tftpboot";
# bootloader config
- assert_script_run "printf 'function load_video {\n insmod efi_gop\n insmod efi_uga\n insmod ieee1275_fb\n insmod vbe\n insmod vga\n insmod video_bochs\n insmod video_cirrus\n}\n\nload_video\nset gfxpayload=keep\ninsmod gzio\n\nmenuentry \"Install Fedora 64-bit\" --class fedora --class gnu-linux --class gnu --class os {\n linux fedora/vmlinuz ip=dhcp inst.ks=file:///ks.cfg\n initrd fedora/initrd.img\n}' >> /var/lib/tftpboot/grub.cfg";
+ assert_script_run "printf 'function load_video {\n insmod efi_gop\n insmod efi_uga\n insmod ieee1275_fb\n insmod vbe\n insmod vga\n insmod video_bochs\n insmod video_cirrus\n}\n\nload_video\nset gfxpayload=keep\ninsmod gzio\n\nmenuentry \"Install Rocky Linux\" --class rocky --class gnu-linux --class gnu --class os {\n linux rocky/vmlinuz ip=dhcp inst.ks=file:///ks.cfg\n initrd rocky/initrd.img\n}' >> /var/lib/tftpboot/grub.cfg";
# DEBUG DEBUG
upload_logs "/etc/dnsmasq.conf";
upload_logs "/var/lib/tftpboot/grub.cfg";
@@ -76,15 +87,15 @@ sub _pxe_setup {
my $kernpath = "images/pxeboot";
# for some crazy reason these are in a different place for ppc64
$kernpath = "ppc/ppc64" if ($arch eq 'ppc64le');
- assert_script_run "curl -o /var/lib/tftpboot/fedora/vmlinuz $location/Everything/${arch}/os/${kernpath}/vmlinuz";
- assert_script_run "curl -o /var/lib/tftpboot/fedora/initrd.img $location/Everything/${arch}/os/${kernpath}/initrd.img";
+ assert_script_run "curl -o /var/lib/tftpboot/rocky/vmlinuz $location/BaseOS/${arch}/os/${kernpath}/vmlinuz";
+ assert_script_run "curl -o /var/lib/tftpboot/rocky/initrd.img $location/BaseOS/${arch}/os/${kernpath}/initrd.img";
# get a kickstart to embed in the initramfs, for testing:
# https://fedoraproject.org/wiki/QA:Testcase_Kickstart_File_Path_Ks_Cfg
- assert_script_run "curl -o ks.cfg https://fedorapeople.org/groups/qa/kickstarts/root-user-crypted-net.ks";
+ assert_script_run "curl -o ks.cfg https://git.rockylinux.org/tcooper/kickstarts/-/raw/main/root-user-crypted-net.ks";
# tweak the repo config in it
- assert_script_run "sed -i -e 's,^url.*,nfs --server 172.16.2.110 --dir /repo --opts nfsvers=4,g' ks.cfg";
+ assert_script_run "sed -i -e 's,^url.*,nfs --server=nfs://172.16.2.110 --dir=/repo --opts=nfsver=4,g' ks.cfg";
# embed it
- assert_script_run "echo ks.cfg | cpio -c -o >> /var/lib/tftpboot/fedora/initrd.img";
+ assert_script_run "echo ks.cfg | cpio -c -o >> /var/lib/tftpboot/rocky/initrd.img";
# chown root
assert_script_run "chown -R dnsmasq /var/lib/tftpboot";
assert_script_run "restorecon -vr /var/lib/tftpboot";
@@ -103,7 +114,7 @@ sub run {
}
## DNS / DHCP (dnsmasq)
# create config
- assert_script_run "printf 'domain=test.openqa.fedoraproject.org\ndhcp-range=172.16.2.150,172.16.2.199\ndhcp-option=option:router,172.16.2.2\n' > /etc/dnsmasq.conf";
+ assert_script_run "printf 'domain=test.openqa.rockylinux.org\ndhcp-range=172.16.2.150,172.16.2.199\ndhcp-option=option:router,172.16.2.2\n' > /etc/dnsmasq.conf";
# do PXE setup if this is not an update test
_pxe_setup() unless (get_var("ADVISORY_OR_TASK"));
# open firewall ports
@@ -116,18 +127,25 @@ sub run {
## ISCSI
# start up iscsi target
- assert_script_run "printf '\n backing-store /dev/vdb\n incominguser test weakpassword\n' > /etc/tgt/conf.d/openqa.conf";
+ #assert_script_run "printf '\n backing-store /dev/vdb\n incominguser test weakpassword\n' > /etc/tgt/conf.d/openqa.conf";
+ assert_script_run "targetcli /backstores/block create dev=/dev/vdb name=vdb";
+ assert_script_run "targetcli /iscsi create wwn=iqn.2016-06.local.domain:support.target1";
+ assert_script_run "targetcli /iscsi/iqn.2016-06.local.domain:support.target1/tpg1/acls create iqn.2016-06.local.domain:support.target1";
+ assert_script_run "targetcli /iscsi/iqn.2016-06.local.domain:support.target1/tpg1 set attribute authentication=1";
+ assert_script_run "targetcli /iscsi/iqn.2016-06.local.domain:support.target1/tpg1/acls/iqn.2016-06.local.domain:support.target1 set auth userid=test password=weakpassword";
+ assert_script_run "targetcli /iscsi/iqn.2016-06.local.domain:support.target1/tpg1/luns create /backstores/block/vdb";
+ assert_script_run "targetcli / saveconfig";
# open firewall port
- assert_script_run "firewall-cmd --add-service=iscsi-target";
- assert_script_run "systemctl restart tgtd.service";
- assert_script_run "systemctl is-active tgtd.service";
+ assert_script_run "firewall-cmd --add-port=3260/tcp";
+ assert_script_run "systemctl restart target.service";
+ assert_script_run "systemctl is-active target.service";
## NFS
# create the file share
assert_script_run "mkdir -p /export";
# get the kickstart
- assert_script_run "curl -o /export/root-user-crypted-net.ks https://fedorapeople.org/groups/qa/kickstarts/root-user-crypted-net.ks";
+ assert_script_run "curl -o /export/root-user-crypted-net.ks https://git.rockylinux.org/tcooper/kickstarts/-/raw/main/root-user-crypted-net.ks";
# for update tests, set up the update repository and export it
if (get_var("ADVISORY_OR_TASK")) {
assert_script_run "echo '/opt/update_repo 172.16.2.0/24(ro)' >> /etc/exports";
@@ -142,7 +160,7 @@ sub run {
assert_script_run "mount /dev/cdrom /mnt/iso";
# copy the contents of the ISO to the repo share
assert_script_run "dnf -y install rsync", 180;
- assert_script_run "rsync -av /mnt/iso/ /repo", 180;
+ assert_script_run "rsync -av /mnt/iso/ /repo", 360;
# put the updates image in the NFS repo (for testing this update
# image delivery method)
assert_script_run "curl -o /repo/images/updates.img https://fedorapeople.org/groups/qa/updates/updates-openqa.img";