simple role to create / delete container on scaleway cloud

This commit is contained in:
2023-10-14 13:11:51 +00:00
parent 206b9f7659
commit dfef258dd5
2 changed files with 19 additions and 10 deletions

View File

@@ -4,14 +4,13 @@
community.general.scaleway_compute:
commercial_type: "{{ item.host_type|default( scw_type )}}"
region: par1
name: "{{ container_prefix+'%d' | format(item) }}.{{container_domain }}"
name: "{{ container_name }}.{{container_domain }}"
state: "{{ (container_action == 'delete' ) | ternary( 'absent', 'running' ) }}"
api_token: "{{ scw_api_secret_key }}"
image: "{{ container_image}}"
project: "{{ scw_api_default_project_id }}"
public_ip: dynamic
wait: true
loop: "{{ range( container_number_start, container_number +1, 1)|list }}"
register: "container_info"
- name: "generate host list"
@@ -25,8 +24,20 @@
- ansible.builtin.lineinfile:
create: yes
path: "hostlist.yml"
line: " - { record_name: {{ item.msg.name}}, record_type: A, record_value: {{ item.msg.public_ip.address }} }"
line: " - { record_name: {{ item.msg.name}}, record_type: A, record_value: {{ item.msg.public_ip.address }}, public_ip_id: {{ item.msg.public_ip.id }} }"
state: present
loop: "{{ container_info.results }}"
when: scw_gen_hostlist is true and container_action !='delete'
when: scw_gen_hostlist == 'true' and container_action !='delete'
- name: debug
debug:
msg: "ip id: {{ container_info.msg.public_ip.id }}"
- name: "delete ip "
community.general.scaleway_ip:
id: container_info.msg.public_ip.id
state: absent
api_token: "{{ scw_api_secret_key }}"
region: par1
organization: 6357800e-8b77-47a3-af7a-84ee93f019c2
when: container_action=='delete'