75 lines
2.9 KiB
YAML
75 lines
2.9 KiB
YAML
---
|
|
- name: Get info
|
|
hosts: migrator
|
|
tasks:
|
|
- name: Get project details
|
|
openstack.cloud.project_info:
|
|
cloud: dst_admin
|
|
name: "test-project"
|
|
register: dst_project
|
|
- name: Display dst project
|
|
ansible.builtin.debug:
|
|
msg: "id: {{ dst_project.openstack_projects[0].id }} name: {{ dst_project.openstack_projects[0].name }}"
|
|
|
|
- name: Gather information about all available flavors
|
|
openstack.cloud.compute_flavor_info:
|
|
cloud: dst_admin
|
|
register: dst_flavors_info
|
|
- name: Display dst flavor names
|
|
ansible.builtin.debug:
|
|
msg: "{{ dst_flavors_info | community.general.json_query('openstack_flavors[*].name') }}"
|
|
|
|
# images
|
|
- name: Gather information about all available images
|
|
openstack.cloud.image_info:
|
|
cloud: dst_admin
|
|
register: dst_images
|
|
- name: Display dst image names
|
|
ansible.builtin.debug:
|
|
msg: "{{ dst_images | community.general.json_query(query) }}"
|
|
vars:
|
|
query: >-
|
|
image[].{Name:name, min_ram:minRam, min_disk:minDisk}
|
|
#"openstack_images[*].[name, minRam, minDisk] | join(', ', @)"
|
|
# networks
|
|
- name: Gather information about all available networks
|
|
openstack.cloud.networks_info:
|
|
cloud: dst_admin
|
|
register: dst_networks
|
|
- name: Display dst network names
|
|
ansible.builtin.debug:
|
|
msg: "{{ dst_networks | community.general.json_query(query) }}"
|
|
vars:
|
|
query: >-
|
|
openstack_networks[].{Name:name, provider_phyiscal_network:"provider:physical_network"}
|
|
# msg: "{{ dst_flavors_info | community.general.json_query('openstack_flavors[*].name') }}"
|
|
# "provider:physical_network"
|
|
# subnets
|
|
- name: Gather information about all available subnets
|
|
openstack.cloud.subnets_info:
|
|
cloud: dst_admin
|
|
register: dst_subnets
|
|
- name: Display dst subnet names
|
|
ansible.builtin.debug:
|
|
msg: "{{ dst_subnets | community.general.json_query(query) }}"
|
|
vars:
|
|
query: >-
|
|
openstack_subnets[].{Name:name, CIDR:cidr, pool:allocation_pools}
|
|
# security groups
|
|
- name: Gather information about all security groups
|
|
openstack.cloud.security_group_info:
|
|
cloud: dst_admin
|
|
project_id: "{{ dst_project['openstack_projects'][0]['id'] }}"
|
|
name: "test-sg"
|
|
register: dst_sgs
|
|
- name: Display dst sg names
|
|
ansible.builtin.debug:
|
|
msg: "{{ dst_sgs['security_groups'][0]['name'] }}"
|
|
# msg: "{{ dst_flavors_info | community.general.json_query('openstack_flavors[*].name') }}"
|
|
- name: Disaply dst sg rules
|
|
ansible.builtin.debug:
|
|
msg: "{{ dst_sgs | community.general.json_query(query) }}"
|
|
vars:
|
|
query: >-
|
|
security_groups[0].security_group_rules[?direction== 'ingress'].{Type: ethertype, Protocol: protocol, PortRangeMin: port_range_min, PortRangeMax: port_range_max}
|
|
|