From 29b35022cfd3ef8bf3367aea149fe742c9b68326 Mon Sep 17 00:00:00 2001 From: mscherer Date: Sat, 23 Aug 2025 18:34:52 +0200 Subject: [PATCH] Add a scaleway group to be able to use module_defaults (#10647) --- antsibull-nox.toml | 5 ++++ .../10647-scaleway-module-defaults.yml | 2 ++ meta/runtime.yml | 30 +++++++++++++++++++ plugins/doc_fragments/scaleway.py | 10 +++++++ plugins/modules/scaleway_compute.py | 3 ++ .../scaleway_compute_private_network.py | 3 ++ plugins/modules/scaleway_container.py | 3 ++ plugins/modules/scaleway_container_info.py | 5 ++++ .../modules/scaleway_container_namespace.py | 3 ++ .../scaleway_container_namespace_info.py | 5 ++++ .../modules/scaleway_container_registry.py | 3 ++ .../scaleway_container_registry_info.py | 5 ++++ plugins/modules/scaleway_database_backup.py | 4 +++ plugins/modules/scaleway_function.py | 3 ++ plugins/modules/scaleway_function_info.py | 5 ++++ .../modules/scaleway_function_namespace.py | 3 ++ .../scaleway_function_namespace_info.py | 5 ++++ plugins/modules/scaleway_image_info.py | 5 ++++ plugins/modules/scaleway_ip.py | 3 ++ plugins/modules/scaleway_ip_info.py | 5 ++++ plugins/modules/scaleway_lb.py | 3 ++ plugins/modules/scaleway_organization_info.py | 6 ++++ plugins/modules/scaleway_private_network.py | 3 ++ plugins/modules/scaleway_security_group.py | 3 ++ .../modules/scaleway_security_group_info.py | 6 ++++ .../modules/scaleway_security_group_rule.py | 3 ++ plugins/modules/scaleway_server_info.py | 5 ++++ plugins/modules/scaleway_snapshot_info.py | 5 ++++ plugins/modules/scaleway_sshkey.py | 3 ++ plugins/modules/scaleway_user_data.py | 3 ++ plugins/modules/scaleway_volume.py | 3 ++ plugins/modules/scaleway_volume_info.py | 5 ++++ 32 files changed, 158 insertions(+) create mode 100644 changelogs/fragments/10647-scaleway-module-defaults.yml diff --git a/antsibull-nox.toml b/antsibull-nox.toml index c631d3a3af..79d3e487d6 100644 --- a/antsibull-nox.toml +++ b/antsibull-nox.toml @@ -79,6 +79,11 @@ exclusions = [ ] doc_fragment = "community.general.keycloak.actiongroup_keycloak" +[[sessions.extra_checks.action_groups_config]] +name = "scaleway" +pattern = "^scaleway_.*$" +doc_fragment = "community.general.scaleway.actiongroup_scaleway" + [sessions.build_import_check] run_galaxy_importer = true diff --git a/changelogs/fragments/10647-scaleway-module-defaults.yml b/changelogs/fragments/10647-scaleway-module-defaults.yml new file mode 100644 index 0000000000..7fca7a171a --- /dev/null +++ b/changelogs/fragments/10647-scaleway-module-defaults.yml @@ -0,0 +1,2 @@ +minor_changes: + - scaleway modules - add a ``scaleway`` group to use ``module_defaults`` (https://github.com/ansible-collections/community.general/pull/10647). diff --git a/meta/runtime.yml b/meta/runtime.yml index eac1072b5c..acb7397cae 100644 --- a/meta/runtime.yml +++ b/meta/runtime.yml @@ -46,6 +46,36 @@ action_groups: - keycloak_user_federation - keycloak_user_rolemapping - keycloak_userprofile + scaleway: + - scaleway_compute + - scaleway_compute_private_network + - scaleway_container + - scaleway_container_info + - scaleway_container_namespace + - scaleway_container_namespace_info + - scaleway_container_registry + - scaleway_container_registry_info + - scaleway_database_backup + - scaleway_function + - scaleway_function_info + - scaleway_function_namespace + - scaleway_function_namespace_info + - scaleway_image_info + - scaleway_ip + - scaleway_ip_info + - scaleway_lb + - scaleway_organization_info + - scaleway_private_network + - scaleway_security_group + - scaleway_security_group_info + - scaleway_security_group_rule + - scaleway_server_info + - scaleway_snapshot_info + - scaleway_sshkey + - scaleway_user_data + - scaleway_volume + - scaleway_volume_info + plugin_routing: callback: actionable: diff --git a/plugins/doc_fragments/scaleway.py b/plugins/doc_fragments/scaleway.py index 2988865eea..10012198cb 100644 --- a/plugins/doc_fragments/scaleway.py +++ b/plugins/doc_fragments/scaleway.py @@ -47,3 +47,13 @@ notes: E(SCW_TOKEN), E(SCW_API_KEY), E(SCW_OAUTH_TOKEN) or E(SCW_API_TOKEN). - If one wants to use a different O(api_url) one can also set the E(SCW_API_URL) environment variable. """ + + ACTIONGROUP_SCALEWAY = r""" +options: {} +attributes: + action_group: + description: Use C(group/community.general.scaleway) in C(module_defaults) to set defaults for this module. + support: full + membership: + - community.general.scaleway +""" diff --git a/plugins/modules/scaleway_compute.py b/plugins/modules/scaleway_compute.py index 77aaf72956..235f18310c 100644 --- a/plugins/modules/scaleway_compute.py +++ b/plugins/modules/scaleway_compute.py @@ -22,12 +22,15 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway attributes: check_mode: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: diff --git a/plugins/modules/scaleway_compute_private_network.py b/plugins/modules/scaleway_compute_private_network.py index 0781c872fc..9a499bd22a 100644 --- a/plugins/modules/scaleway_compute_private_network.py +++ b/plugins/modules/scaleway_compute_private_network.py @@ -21,12 +21,15 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway attributes: check_mode: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: state: diff --git a/plugins/modules/scaleway_container.py b/plugins/modules/scaleway_container.py index 8351660fd6..53cf32bb8b 100644 --- a/plugins/modules/scaleway_container.py +++ b/plugins/modules/scaleway_container.py @@ -22,6 +22,7 @@ extends_documentation_fragment: - community.general.scaleway - community.general.scaleway_waitable_resource - community.general.attributes + - community.general.scaleway.actiongroup_scaleway requirements: - passlib[argon2] >= 1.7.4 @@ -30,6 +31,8 @@ attributes: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: state: diff --git a/plugins/modules/scaleway_container_info.py b/plugins/modules/scaleway_container_info.py index e17547735a..d3cd7b3a00 100644 --- a/plugins/modules/scaleway_container_info.py +++ b/plugins/modules/scaleway_container_info.py @@ -21,8 +21,13 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway - community.general.attributes.info_module +attributes: + action_group: + version_added: 11.3.0 + options: namespace_id: type: str diff --git a/plugins/modules/scaleway_container_namespace.py b/plugins/modules/scaleway_container_namespace.py index 781c9ffc25..cd3491e325 100644 --- a/plugins/modules/scaleway_container_namespace.py +++ b/plugins/modules/scaleway_container_namespace.py @@ -22,6 +22,7 @@ extends_documentation_fragment: - community.general.scaleway - community.general.scaleway_waitable_resource - community.general.attributes + - community.general.scaleway.actiongroup_scaleway requirements: - passlib[argon2] >= 1.7.4 @@ -30,6 +31,8 @@ attributes: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: state: diff --git a/plugins/modules/scaleway_container_namespace_info.py b/plugins/modules/scaleway_container_namespace_info.py index d1e7196871..62ffac612f 100644 --- a/plugins/modules/scaleway_container_namespace_info.py +++ b/plugins/modules/scaleway_container_namespace_info.py @@ -21,8 +21,13 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway - community.general.attributes.info_module +attributes: + action_group: + version_added: 11.3.0 + options: project_id: type: str diff --git a/plugins/modules/scaleway_container_registry.py b/plugins/modules/scaleway_container_registry.py index 4e352c5b9e..1c59403b0c 100644 --- a/plugins/modules/scaleway_container_registry.py +++ b/plugins/modules/scaleway_container_registry.py @@ -22,12 +22,15 @@ extends_documentation_fragment: - community.general.scaleway - community.general.scaleway_waitable_resource - community.general.attributes + - community.general.scaleway.actiongroup_scaleway attributes: check_mode: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: state: diff --git a/plugins/modules/scaleway_container_registry_info.py b/plugins/modules/scaleway_container_registry_info.py index e0fc1db5f3..4916207bf2 100644 --- a/plugins/modules/scaleway_container_registry_info.py +++ b/plugins/modules/scaleway_container_registry_info.py @@ -21,8 +21,13 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway - community.general.attributes.info_module +attributes: + action_group: + version_added: 11.3.0 + options: project_id: type: str diff --git a/plugins/modules/scaleway_database_backup.py b/plugins/modules/scaleway_database_backup.py index 48add5dfc6..c36c298ef0 100644 --- a/plugins/modules/scaleway_database_backup.py +++ b/plugins/modules/scaleway_database_backup.py @@ -22,11 +22,15 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway attributes: check_mode: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 + options: state: description: diff --git a/plugins/modules/scaleway_function.py b/plugins/modules/scaleway_function.py index 4bc7c42688..5bd8331161 100644 --- a/plugins/modules/scaleway_function.py +++ b/plugins/modules/scaleway_function.py @@ -22,6 +22,7 @@ extends_documentation_fragment: - community.general.scaleway - community.general.scaleway_waitable_resource - community.general.attributes + - community.general.scaleway.actiongroup_scaleway requirements: - passlib[argon2] >= 1.7.4 @@ -30,6 +31,8 @@ attributes: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: state: diff --git a/plugins/modules/scaleway_function_info.py b/plugins/modules/scaleway_function_info.py index 7a3acef11e..0286a8318a 100644 --- a/plugins/modules/scaleway_function_info.py +++ b/plugins/modules/scaleway_function_info.py @@ -21,8 +21,13 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway - community.general.attributes.info_module +attributes: + action_group: + version_added: 11.3.0 + options: namespace_id: type: str diff --git a/plugins/modules/scaleway_function_namespace.py b/plugins/modules/scaleway_function_namespace.py index e5e00bf681..1c7b19288d 100644 --- a/plugins/modules/scaleway_function_namespace.py +++ b/plugins/modules/scaleway_function_namespace.py @@ -22,6 +22,7 @@ extends_documentation_fragment: - community.general.scaleway - community.general.scaleway_waitable_resource - community.general.attributes + - community.general.scaleway.actiongroup_scaleway requirements: - passlib[argon2] >= 1.7.4 @@ -30,6 +31,8 @@ attributes: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: state: diff --git a/plugins/modules/scaleway_function_namespace_info.py b/plugins/modules/scaleway_function_namespace_info.py index f2bed200dc..a0b225c405 100644 --- a/plugins/modules/scaleway_function_namespace_info.py +++ b/plugins/modules/scaleway_function_namespace_info.py @@ -21,8 +21,13 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway - community.general.attributes.info_module +attributes: + action_group: + version_added: 11.3.0 + options: project_id: type: str diff --git a/plugins/modules/scaleway_image_info.py b/plugins/modules/scaleway_image_info.py index 58bad2f2fc..9580942d57 100644 --- a/plugins/modules/scaleway_image_info.py +++ b/plugins/modules/scaleway_image_info.py @@ -19,8 +19,13 @@ author: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway - community.general.attributes.info_module +attributes: + action_group: + version_added: 11.3.0 + options: region: type: str diff --git a/plugins/modules/scaleway_ip.py b/plugins/modules/scaleway_ip.py index 021bb955cc..2b70e81380 100644 --- a/plugins/modules/scaleway_ip.py +++ b/plugins/modules/scaleway_ip.py @@ -20,12 +20,15 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway attributes: check_mode: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: state: diff --git a/plugins/modules/scaleway_ip_info.py b/plugins/modules/scaleway_ip_info.py index cd367c52bb..bc45c44f6a 100644 --- a/plugins/modules/scaleway_ip_info.py +++ b/plugins/modules/scaleway_ip_info.py @@ -19,8 +19,13 @@ author: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway - community.general.attributes.info_module +attributes: + action_group: + version_added: 11.3.0 + options: region: type: str diff --git a/plugins/modules/scaleway_lb.py b/plugins/modules/scaleway_lb.py index 36097a3eb1..7b17d7aa66 100644 --- a/plugins/modules/scaleway_lb.py +++ b/plugins/modules/scaleway_lb.py @@ -22,12 +22,15 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway attributes: check_mode: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: diff --git a/plugins/modules/scaleway_organization_info.py b/plugins/modules/scaleway_organization_info.py index a28b290bbc..893fc1b517 100644 --- a/plugins/modules/scaleway_organization_info.py +++ b/plugins/modules/scaleway_organization_info.py @@ -16,6 +16,11 @@ description: author: - "Yanis Guenane (@Spredzy)" - "Remy Leone (@remyleone)" + +attributes: + action_group: + version_added: 11.3.0 + options: api_url: description: @@ -25,6 +30,7 @@ options: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway - community.general.attributes.info_module """ diff --git a/plugins/modules/scaleway_private_network.py b/plugins/modules/scaleway_private_network.py index 10ba9f2f81..d139d88d70 100644 --- a/plugins/modules/scaleway_private_network.py +++ b/plugins/modules/scaleway_private_network.py @@ -21,12 +21,15 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway attributes: check_mode: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: state: diff --git a/plugins/modules/scaleway_security_group.py b/plugins/modules/scaleway_security_group.py index 39ee5a1068..fbac7ecfc8 100644 --- a/plugins/modules/scaleway_security_group.py +++ b/plugins/modules/scaleway_security_group.py @@ -21,12 +21,15 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway attributes: check_mode: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: state: diff --git a/plugins/modules/scaleway_security_group_info.py b/plugins/modules/scaleway_security_group_info.py index b729bcf052..b3079127f6 100644 --- a/plugins/modules/scaleway_security_group_info.py +++ b/plugins/modules/scaleway_security_group_info.py @@ -16,6 +16,11 @@ description: author: - "Yanis Guenane (@Spredzy)" - "Remy Leone (@remyleone)" + +attributes: + action_group: + version_added: 11.3.0 + options: region: type: str @@ -39,6 +44,7 @@ options: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway - community.general.attributes.info_module """ diff --git a/plugins/modules/scaleway_security_group_rule.py b/plugins/modules/scaleway_security_group_rule.py index ed314e1e19..1d004cfc47 100644 --- a/plugins/modules/scaleway_security_group_rule.py +++ b/plugins/modules/scaleway_security_group_rule.py @@ -21,12 +21,15 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway attributes: check_mode: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: state: diff --git a/plugins/modules/scaleway_server_info.py b/plugins/modules/scaleway_server_info.py index bb258af7e5..1bbc929b1d 100644 --- a/plugins/modules/scaleway_server_info.py +++ b/plugins/modules/scaleway_server_info.py @@ -19,8 +19,13 @@ author: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway - community.general.attributes.info_module +attributes: + action_group: + version_added: 11.3.0 + options: region: type: str diff --git a/plugins/modules/scaleway_snapshot_info.py b/plugins/modules/scaleway_snapshot_info.py index c7946f1f7c..e56c59b0d1 100644 --- a/plugins/modules/scaleway_snapshot_info.py +++ b/plugins/modules/scaleway_snapshot_info.py @@ -19,8 +19,13 @@ author: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway - community.general.attributes.info_module +attributes: + action_group: + version_added: 11.3.0 + options: region: type: str diff --git a/plugins/modules/scaleway_sshkey.py b/plugins/modules/scaleway_sshkey.py index a8ccc155e1..c0725d346a 100644 --- a/plugins/modules/scaleway_sshkey.py +++ b/plugins/modules/scaleway_sshkey.py @@ -22,12 +22,15 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway attributes: check_mode: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: state: diff --git a/plugins/modules/scaleway_user_data.py b/plugins/modules/scaleway_user_data.py index b21ab6b332..6cdcb62810 100644 --- a/plugins/modules/scaleway_user_data.py +++ b/plugins/modules/scaleway_user_data.py @@ -23,12 +23,15 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway attributes: check_mode: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: diff --git a/plugins/modules/scaleway_volume.py b/plugins/modules/scaleway_volume.py index 405d257230..8d2a696d4a 100644 --- a/plugins/modules/scaleway_volume.py +++ b/plugins/modules/scaleway_volume.py @@ -21,12 +21,15 @@ description: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway attributes: check_mode: support: full diff_mode: support: none + action_group: + version_added: 11.3.0 options: state: diff --git a/plugins/modules/scaleway_volume_info.py b/plugins/modules/scaleway_volume_info.py index 09b0ef56ef..d6b5dce7b6 100644 --- a/plugins/modules/scaleway_volume_info.py +++ b/plugins/modules/scaleway_volume_info.py @@ -19,8 +19,13 @@ author: extends_documentation_fragment: - community.general.scaleway - community.general.attributes + - community.general.scaleway.actiongroup_scaleway - community.general.attributes.info_module +attributes: + action_group: + version_added: 11.3.0 + options: region: type: str