From 8a1f3d0890c71e223166b12c042f086e4e0c0caf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Le=C3=AFla=20Marabese?= Date: Thu, 17 Jul 2025 13:54:14 +0200 Subject: [PATCH 1/5] changelog fragment --- changelogs/fragments/10424-scaleway-update-zones.yml | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 changelogs/fragments/10424-scaleway-update-zones.yml diff --git a/changelogs/fragments/10424-scaleway-update-zones.yml b/changelogs/fragments/10424-scaleway-update-zones.yml new file mode 100644 index 0000000000..8a63780a42 --- /dev/null +++ b/changelogs/fragments/10424-scaleway-update-zones.yml @@ -0,0 +1,2 @@ +bugfixes: + - update Scaleway available zones and API URLs \ No newline at end of file From a2d65f5202c9c252c43d066f87109e33ae47a243 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Le=C3=AFla=20Marabese?= Date: Fri, 18 Jul 2025 17:11:03 +0200 Subject: [PATCH 2/5] add new zones --- plugins/module_utils/scaleway.py | 42 +++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/plugins/module_utils/scaleway.py b/plugins/module_utils/scaleway.py index 4768aafc9c..d4cb4eb662 100644 --- a/plugins/module_utils/scaleway.py +++ b/plugins/module_utils/scaleway.py @@ -353,11 +353,18 @@ SCALEWAY_LOCATION = { 'api_endpoint_vpc': 'https://api.scaleway.com/vpc/v1/zones/fr-par-2' }, + 'par3': { + 'name': 'Paris 3', + 'country': 'FR', + 'api_endpoint': 'https://api.scaleway.com/instance/v1/zones/fr-par-3', + 'api_endpoint_vpc': 'https://api.scaleway.com/vpc/v1/zones/fr-par-3' + }, + 'ams1': { 'name': 'Amsterdam 1', 'country': 'NL', 'api_endpoint': 'https://api.scaleway.com/instance/v1/zones/nl-ams-1', - 'api_endpoint_vpc': 'https://api.scaleway.com/vpc/v1/zones/nl-ams-10' + 'api_endpoint_vpc': 'https://api.scaleway.com/vpc/v1/zones/nl-ams-1' }, 'EMEA-NL-EVS': { @@ -367,6 +374,20 @@ SCALEWAY_LOCATION = { 'api_endpoint_vpc': 'https://api.scaleway.com/vpc/v1/zones/nl-ams-1' }, + 'ams2': { + 'name': 'Amsterdam 2', + 'country': 'NL', + 'api_endpoint': 'https://api.scaleway.com/instance/v1/zones/nl-ams-2', + 'api_endpoint_vpc': 'https://api.scaleway.com/vpc/v1/zones/nl-ams-2' + }, + + 'ams3': { + 'name': 'Amsterdam 3', + 'country': 'NL', + 'api_endpoint': 'https://api.scaleway.com/instance/v1/zones/nl-ams-3', + 'api_endpoint_vpc': 'https://api.scaleway.com/vpc/v1/zones/nl-ams-3' + }, + 'waw1': { 'name': 'Warsaw 1', 'country': 'PL', @@ -380,6 +401,20 @@ SCALEWAY_LOCATION = { 'api_endpoint': 'https://api.scaleway.com/instance/v1/zones/pl-waw-1', 'api_endpoint_vpc': 'https://api.scaleway.com/vpc/v1/zones/pl-waw-1' }, + + 'waw2': { + 'name': 'Warsaw 2', + 'country': 'PL', + 'api_endpoint': 'https://api.scaleway.com/instance/v1/zones/pl-waw-2', + 'api_endpoint_vpc': 'https://api.scaleway.com/vpc/v1/zones/pl-waw-2' + }, + + 'waw3': { + 'name': 'Warsaw 3', + 'country': 'PL', + 'api_endpoint': 'https://api.scaleway.com/instance/v1/zones/pl-waw-3', + 'api_endpoint_vpc': 'https://api.scaleway.com/vpc/v1/zones/pl-waw-3' + }, } SCALEWAY_ENDPOINT = "https://api.scaleway.com" @@ -393,6 +428,11 @@ SCALEWAY_REGIONS = [ SCALEWAY_ZONES = [ "fr-par-1", "fr-par-2", + "fr-par-3", "nl-ams-1", + "nl-ams-2", + "nl-ams-3", "pl-waw-1", + "pl-waw-2", + "pl-waw-3", ] From 919e111616bdad2fe246013e72911065dd9d42a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Le=C3=AFla=20Marabese?= Date: Fri, 18 Jul 2025 17:37:55 +0200 Subject: [PATCH 3/5] add new zones to choices for instance resources --- plugins/modules/scaleway_compute.py | 5 +++++ plugins/modules/scaleway_compute_private_network.py | 5 +++++ plugins/modules/scaleway_image_info.py | 5 +++++ plugins/modules/scaleway_ip.py | 5 +++++ plugins/modules/scaleway_ip_info.py | 5 +++++ plugins/modules/scaleway_private_network.py | 5 +++++ plugins/modules/scaleway_security_group.py | 5 +++++ plugins/modules/scaleway_security_group_info.py | 5 +++++ plugins/modules/scaleway_security_group_rule.py | 5 +++++ plugins/modules/scaleway_server_info.py | 5 +++++ plugins/modules/scaleway_snapshot_info.py | 5 +++++ plugins/modules/scaleway_user_data.py | 5 +++++ plugins/modules/scaleway_volume.py | 5 +++++ plugins/modules/scaleway_volume_info.py | 5 +++++ 14 files changed, 70 insertions(+) diff --git a/plugins/modules/scaleway_compute.py b/plugins/modules/scaleway_compute.py index f3653cd3b6..77aaf72956 100644 --- a/plugins/modules/scaleway_compute.py +++ b/plugins/modules/scaleway_compute.py @@ -96,12 +96,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 commercial_type: type: str diff --git a/plugins/modules/scaleway_compute_private_network.py b/plugins/modules/scaleway_compute_private_network.py index a3b6c031f7..0781c872fc 100644 --- a/plugins/modules/scaleway_compute_private_network.py +++ b/plugins/modules/scaleway_compute_private_network.py @@ -52,12 +52,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 compute_id: type: str diff --git a/plugins/modules/scaleway_image_info.py b/plugins/modules/scaleway_image_info.py index 0b2fe0476d..58bad2f2fc 100644 --- a/plugins/modules/scaleway_image_info.py +++ b/plugins/modules/scaleway_image_info.py @@ -30,12 +30,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 """ EXAMPLES = r""" diff --git a/plugins/modules/scaleway_ip.py b/plugins/modules/scaleway_ip.py index ce9977bbf0..021bb955cc 100644 --- a/plugins/modules/scaleway_ip.py +++ b/plugins/modules/scaleway_ip.py @@ -51,12 +51,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 id: type: str diff --git a/plugins/modules/scaleway_ip_info.py b/plugins/modules/scaleway_ip_info.py index 0812746619..cd367c52bb 100644 --- a/plugins/modules/scaleway_ip_info.py +++ b/plugins/modules/scaleway_ip_info.py @@ -30,12 +30,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 """ EXAMPLES = r""" diff --git a/plugins/modules/scaleway_private_network.py b/plugins/modules/scaleway_private_network.py index edd5d435cb..10ba9f2f81 100644 --- a/plugins/modules/scaleway_private_network.py +++ b/plugins/modules/scaleway_private_network.py @@ -52,12 +52,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 name: type: str diff --git a/plugins/modules/scaleway_security_group.py b/plugins/modules/scaleway_security_group.py index cb4e44c844..39ee5a1068 100644 --- a/plugins/modules/scaleway_security_group.py +++ b/plugins/modules/scaleway_security_group.py @@ -50,12 +50,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 name: description: diff --git a/plugins/modules/scaleway_security_group_info.py b/plugins/modules/scaleway_security_group_info.py index 4cdb295282..b729bcf052 100644 --- a/plugins/modules/scaleway_security_group_info.py +++ b/plugins/modules/scaleway_security_group_info.py @@ -25,12 +25,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 extends_documentation_fragment: - community.general.scaleway - community.general.attributes diff --git a/plugins/modules/scaleway_security_group_rule.py b/plugins/modules/scaleway_security_group_rule.py index f7f6304a26..ed314e1e19 100644 --- a/plugins/modules/scaleway_security_group_rule.py +++ b/plugins/modules/scaleway_security_group_rule.py @@ -46,12 +46,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 protocol: type: str diff --git a/plugins/modules/scaleway_server_info.py b/plugins/modules/scaleway_server_info.py index 327715d2db..bb258af7e5 100644 --- a/plugins/modules/scaleway_server_info.py +++ b/plugins/modules/scaleway_server_info.py @@ -30,12 +30,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 """ EXAMPLES = r""" diff --git a/plugins/modules/scaleway_snapshot_info.py b/plugins/modules/scaleway_snapshot_info.py index ead1826aa4..c7946f1f7c 100644 --- a/plugins/modules/scaleway_snapshot_info.py +++ b/plugins/modules/scaleway_snapshot_info.py @@ -30,12 +30,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 """ EXAMPLES = r""" diff --git a/plugins/modules/scaleway_user_data.py b/plugins/modules/scaleway_user_data.py index f4f2c18624..b21ab6b332 100644 --- a/plugins/modules/scaleway_user_data.py +++ b/plugins/modules/scaleway_user_data.py @@ -53,12 +53,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 """ EXAMPLES = r""" diff --git a/plugins/modules/scaleway_volume.py b/plugins/modules/scaleway_volume.py index c7c6346075..405d257230 100644 --- a/plugins/modules/scaleway_volume.py +++ b/plugins/modules/scaleway_volume.py @@ -45,12 +45,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 name: type: str description: diff --git a/plugins/modules/scaleway_volume_info.py b/plugins/modules/scaleway_volume_info.py index 8a4986a724..09b0ef56ef 100644 --- a/plugins/modules/scaleway_volume_info.py +++ b/plugins/modules/scaleway_volume_info.py @@ -30,12 +30,17 @@ options: choices: - ams1 - EMEA-NL-EVS + - ams2 + - ams3 - par1 - EMEA-FR-PAR1 - par2 - EMEA-FR-PAR2 + - par3 - waw1 - EMEA-PL-WAW1 + - waw2 + - waw3 """ EXAMPLES = r""" From cfce8a3080da37f41c5939feaa01931344d602aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Le=C3=AFla=20Marabese?= Date: Mon, 28 Jul 2025 17:04:20 +0200 Subject: [PATCH 4/5] add new zones to doc in inventory plugin --- plugins/inventory/scaleway.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/plugins/inventory/scaleway.py b/plugins/inventory/scaleway.py index c730049833..d9ccd08b77 100644 --- a/plugins/inventory/scaleway.py +++ b/plugins/inventory/scaleway.py @@ -27,9 +27,14 @@ options: elements: string default: - ams1 + - ams2 + - ams3 - par1 - par2 + - par3 - waw1 + - waw2 + - waw3 tags: description: Filter results on a specific tag. type: list From f6c20c374ac0ca01c902988659135a079b541fb2 Mon Sep 17 00:00:00 2001 From: Mia-Cross Date: Wed, 30 Jul 2025 11:38:49 +0200 Subject: [PATCH 5/5] Apply suggestions from code review Co-authored-by: Felix Fontein --- changelogs/fragments/10424-scaleway-update-zones.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/changelogs/fragments/10424-scaleway-update-zones.yml b/changelogs/fragments/10424-scaleway-update-zones.yml index 8a63780a42..61689195b5 100644 --- a/changelogs/fragments/10424-scaleway-update-zones.yml +++ b/changelogs/fragments/10424-scaleway-update-zones.yml @@ -1,2 +1,2 @@ -bugfixes: - - update Scaleway available zones and API URLs \ No newline at end of file +minor_changes: + - scaleway_* modules - update available zones and API URLs (https://github.com/ansible-collections/community.general/issues/10383, https://github.com/ansible-collections/community.general/pull/10424). \ No newline at end of file