RepoScalewayScalewaypublished Dec 28, 2022seen 5d

scaleway/ansible

Python

Open original ↗

Captured source

source ↗
published Dec 28, 2022seen 5dcaptured 8hhttp 200method plain

scaleway/ansible

Description: Ansible Collection for Scaleway

Language: Python

License: GPL-3.0

Stars: 13

Forks: 11

Open issues: 37

Created: 2022-12-28T09:57:26Z

Pushed: 2026-04-30T15:15:27Z

Default branch: main

Fork: no

Archived: no

README:

Scaleway Community Collection

This collection contains modules and plugins for Ansible to automate the management of Scaleway infrastructure and services.

Reach us

You can contact us on our Slack community.

Inventory

  • scaleway.scaleway.scaleway: dynamic inventory plugin for Scaleway's Instances, Elastic Metal and Apple Sillicon

Usage example:

scw.yml

plugin: scaleway.scaleway.scaleway
profile: base-profile # your scaleway credentials profile
hostnames:
- hostname
- id

ansible-inventory -i scw.yml --list will list all the hosts from the dynamic inventory.

Lookup

  • scaleway.scaleway.scaleway_secret: lookup plugin for Scaleway's Secrets

Usage example:

- hosts: localhost

vars:
secret_versions: "{{ lookup('scaleway.scaleway.scaleway_secret', 'secret-epic-lumiere', 'test') }}"

tasks:
- name: Debug secret versions
ansible.builtin.debug:
msg: "{{ secret_versions | split(',') | map('b64decode') }}"

will print the secret's secret data as a list:

ok: [localhost] => {
"msg": [
"test",
"abcd"
]
}

Authentication and Environment variables

Authentication is handled with the SCW_PROFILE or the SCW_ACCESS_KEY and SCW_SECRET_KEY environment variables.

Please check this documentation for detailed instructions on how to configure your Scaleway credentials.

Installing the collection

Locally

You can clone this repository and install the collection locally with ansible-galaxy collection install .

Galaxy

ansible-galaxy collection install scaleway.scaleway

You can also include it in a requirements.yml file and install it via ansible-galaxy collection install -r requirements.yml, using the format:

---
collections:
- name: scaleway.scaleway

Note that the python module dependencies are not installed by ansible-galaxy. They can be manually installed using pip:

pip install -r requirements-scaleway.txt

Note that if you install the collection from Ansible Galaxy, it will not be upgraded automatically if you upgrade the Ansible package. To upgrade the collection to the latest available version, run the following command:

ansible-galaxy collection install scaleway.scaleway --upgrade

You can also install a specific version of the collection, for example, if you need to downgrade when something is broken in the latest version (please report an issue in this repository). Use the following syntax:

ansible-galaxy collection install scaleway.scaleway:==1.0.0

Useful links

Licensing

GNU General Public License v3.0 or later.

See LICENSE to see the full text.