diff --git a/docs/releasenotes.rst b/docs/releasenotes.rst index a41cb243943aea6b0f7376a72518e8e17078c75e..e361a82429fa1a9776cda9ab5ccc48b12b4cce52 100644 --- a/docs/releasenotes.rst +++ b/docs/releasenotes.rst @@ -49,6 +49,8 @@ Breaking changes: * ``preseed`` role + * Parameter ``ansible_key`` is now mandatory. + * Parameter ``preseed_directory`` is now mandatory. * ``web_server`` role diff --git a/docs/rolereference.rst b/docs/rolereference.rst index e3ab8e0fdbcb0e79bc50bd237ac76afe27f7afce..d2aae24c30223578e77aff1a43bf06366f7c46b5 100644 --- a/docs/rolereference.rst +++ b/docs/rolereference.rst @@ -41,7 +41,7 @@ preseed file per server. Parameters ~~~~~~~~~~ -**ansible_key** (string, optional, ``{{ lookup('file', '~/.ssh/id_rsa.pub') }}``) +**ansible_key** (string, mandatory) SSH public key that should be deployed to authorized_keys truststore for operating system user ``root``. This is necessary for the bootstrap process to work since Debian does not allow password-based logins for root. diff --git a/roles/preseed/defaults/main.yml b/roles/preseed/defaults/main.yml index 62fa47b01563a8066b15e518c0d829f8a64165e8..2762792a9b90e545ec87b09be46f6a47587d43d4 100644 --- a/roles/preseed/defaults/main.yml +++ b/roles/preseed/defaults/main.yml @@ -1,6 +1,5 @@ --- -ansible_key: "{{ lookup('file', '~/.ssh/id_rsa.pub') }}" preseed_country: SE preseed_keymap: us preseed_language: en diff --git a/roles/preseed/molecule/default/group_vars/parameters-mandatory.yml b/roles/preseed/molecule/default/group_vars/parameters-mandatory.yml index 9cf8309dfb12d2cadfc91b6d2d128b047ef2d6d1..bbe3ede1db39327c5591f802c61d17b122261c46 100644 --- a/roles/preseed/molecule/default/group_vars/parameters-mandatory.yml +++ b/roles/preseed/molecule/default/group_vars/parameters-mandatory.yml @@ -1,3 +1,4 @@ --- +ansible_key: MY_ANSIBLE_KEY preseed_directory: "/tmp/preseed_files/" diff --git a/roles/preseed/molecule/default/group_vars/parameters-optional-with-overrides.yml b/roles/preseed/molecule/default/group_vars/parameters-optional-with-overrides.yml index aff362bddc440a1cfcf813c9296bb29b923a5556..e0b7af44d8dc42809a05be6fa8487ad052c75e7f 100644 --- a/roles/preseed/molecule/default/group_vars/parameters-optional-with-overrides.yml +++ b/roles/preseed/molecule/default/group_vars/parameters-optional-with-overrides.yml @@ -1,6 +1,6 @@ --- -ansible_key: CUSTOMKEY +ansible_key: MY_ANSIBLE_KEY preseed_directory: "/tmp/preseed_files/" preseed_server_overrides: parameters-optional-with-overrides-stretch64: diff --git a/roles/preseed/molecule/default/group_vars/parameters-optional.yml b/roles/preseed/molecule/default/group_vars/parameters-optional.yml index ea2bb6a345f0140be873439971cbfeb07f9f8c41..b1c8bf19252e15a424a696b392bd80356eb3757c 100644 --- a/roles/preseed/molecule/default/group_vars/parameters-optional.yml +++ b/roles/preseed/molecule/default/group_vars/parameters-optional.yml @@ -1,6 +1,6 @@ --- -ansible_key: CUSTOMKEY +ansible_key: MY_ANSIBLE_KEY preseed_country: RS preseed_directory: "/tmp/preseed_files/" preseed_dns: 1.1.1.1 diff --git a/roles/preseed/molecule/default/tests/test_parameters_mandatory.py b/roles/preseed/molecule/default/tests/test_parameters_mandatory.py index e60c34cdb9ae17cbf6eea5087b053f2d94ddaeaf..9764afdd934344a317645c5661831ec858c201e2 100644 --- a/roles/preseed/molecule/default/tests/test_parameters_mandatory.py +++ b/roles/preseed/molecule/default/tests/test_parameters_mandatory.py @@ -50,7 +50,7 @@ def test_preseed_configuration_file_content(host): preseed_directory_path = "/tmp/preseed_files" preseed_file = host.file(os.path.join(preseed_directory_path, "%s.cfg" % hostname)) preseed_file_content = preseed_file.content_string - ssh_public_key = open(os.path.join(os.path.expanduser("~"), ".ssh", "id_rsa.pub")).read().strip() + ssh_public_key = "MY_ANSIBLE_KEY" assert "d-i debian-installer/language string en" in preseed_file_content assert "d-i debian-installer/country string SE" in preseed_file_content diff --git a/roles/preseed/molecule/default/tests/test_parameters_optional.py b/roles/preseed/molecule/default/tests/test_parameters_optional.py index 54d185f6cda324da765bfa76c60ca8c09f2357df..85866a696a45033b7d864d7f6e900d2d19a3eeaf 100644 --- a/roles/preseed/molecule/default/tests/test_parameters_optional.py +++ b/roles/preseed/molecule/default/tests/test_parameters_optional.py @@ -49,7 +49,7 @@ def test_preseed_configuration_file_content(host): with host.sudo(): preseed_file = host.file(os.path.join(PRESEED_DIRECTORY, "%s.cfg" % hostname)) preseed_file_content = preseed_file.content_string - ssh_public_key = "CUSTOMKEY" + ssh_public_key = "MY_ANSIBLE_KEY" assert "d-i debian-installer/language string sr" in preseed_file_content assert "d-i debian-installer/country string RS" in preseed_file_content diff --git a/roles/preseed/molecule/default/tests/test_parameters_optional_with_overrides.py b/roles/preseed/molecule/default/tests/test_parameters_optional_with_overrides.py index a248b5ba18ad9a9dee7ae63409c7e5b052fa0ad3..326ed94cc92efa0b2fe5bc543df2c5284e82104b 100644 --- a/roles/preseed/molecule/default/tests/test_parameters_optional_with_overrides.py +++ b/roles/preseed/molecule/default/tests/test_parameters_optional_with_overrides.py @@ -33,7 +33,7 @@ def test_preseed_configuration_file_content_host_without_overrides(host): with host.sudo(): preseed_file = host.file(os.path.join(PRESEED_DIRECTORY, "%s.cfg" % hostname)) preseed_file_content = preseed_file.content_string - ssh_public_key = "CUSTOMKEY" + ssh_public_key = "MY_ANSIBLE_KEY" assert "d-i debian-installer/language string en" in preseed_file_content assert "d-i debian-installer/country string SE" in preseed_file_content @@ -65,7 +65,7 @@ def test_preseed_configuration_file_content_host_with_overrides(host): with host.sudo(): preseed_file = host.file(os.path.join(PRESEED_DIRECTORY, "%s.cfg" % hostname)) preseed_file_content = preseed_file.content_string - ssh_public_key = "CUSTOMKEY" + ssh_public_key = "MY_ANSIBLE_KEY" assert "d-i debian-installer/language string sr" in preseed_file_content assert "d-i debian-installer/country string RS" in preseed_file_content