From 50c4b5575d9f8d93f1d55448dd59b2fce827e4b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anders=20Bj=C3=B6rklund?= Date: Mon, 22 Apr 2024 17:52:44 +0200 Subject: [PATCH 1/3] Deprecate the users ssh-authorized-keys property (#5162) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit RH-Author: Ani Sinha RH-MergeRequest: 94: Deprecate the users ssh-authorized-keys property (#5162) RH-Jira: RHEL-45263 RH-Acked-by: Emanuele Giuseppe Esposito RH-Acked-by: Miroslav Rezanina RH-Commit: [1/3] 79e1b116a8c60ebe7e70a9670ff7626fb204d6a1 (anisinha/cloud-init) Deprecate the users ssh-authorized-keys property Signed-off-by: Anders F Björklund (cherry picked from commit 5205b4dd74eb2168ebbeba56579b6f116a272937) --- .../schemas/schema-cloud-config-v1.json | 16 ++++++++++ .../unittests/config/test_cc_users_groups.py | 30 +++++++++++++++++++ tools/.github-cla-signers | 1 + 3 files changed, 47 insertions(+) diff --git a/cloudinit/config/schemas/schema-cloud-config-v1.json b/cloudinit/config/schemas/schema-cloud-config-v1.json index c47e7c4f..24b6c4bd 100644 --- a/cloudinit/config/schemas/schema-cloud-config-v1.json +++ b/cloudinit/config/schemas/schema-cloud-config-v1.json @@ -361,6 +361,22 @@ }, "minItems": 1 }, + "ssh-authorized-keys": { + "allOf": [ + { + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1 + }, + { + "deprecated": true, + "deprecated_version": "18.3", + "deprecated_description": "Use ``ssh_authorized_keys`` instead." + } + ] + }, "ssh_import_id": { "description": "List of ssh ids to import for user. Can not be combined with ``ssh_redirect_user``. See the man page[1] for more details. [1] https://manpages.ubuntu.com/manpages/noble/en/man1/ssh-import-id.1.html", "type": "array", diff --git a/tests/unittests/config/test_cc_users_groups.py b/tests/unittests/config/test_cc_users_groups.py index 3300b77b..53e231e1 100644 --- a/tests/unittests/config/test_cc_users_groups.py +++ b/tests/unittests/config/test_cc_users_groups.py @@ -503,6 +503,36 @@ class TestUsersGroupsSchema: ), True, ), + ( + { + "users": [ + { + "name": "lima", + "uid": "1000", + "homedir": "/home/lima.linux", + "shell": "/bin/bash", + "sudo": "ALL=(ALL) NOPASSWD:ALL", + "lock_passwd": True, + "ssh-authorized-keys": ["ssh-ed25519 ..."], + } + ] + }, + pytest.raises( + SchemaValidationError, + match=( + "Cloud config schema deprecations: " + "users.0.ssh-authorized-keys: " + " Deprecated in version 18.3." + " Use ``ssh_authorized_keys`` instead." + ", " + "users.0.uid: " + " Changed in version 22.3." + " The use of ``string`` type is deprecated." + " Use an ``integer`` instead." + ), + ), + False, + ), ], ) @skipUnlessJsonSchema() diff --git a/tools/.github-cla-signers b/tools/.github-cla-signers index bd50dc84..8da1e3a3 100644 --- a/tools/.github-cla-signers +++ b/tools/.github-cla-signers @@ -3,6 +3,7 @@ aciba90 acourdavAkamai ader1990 adobley +afbjorklund ajmyyra akutz AlexBaranowski -- 2.39.3