From 50ccb8c835b0d277b7f2498664770322bedb6d9e Mon Sep 17 00:00:00 2001 From: Ricardo Carrillo Cruz Date: Fri, 12 Feb 2016 13:54:15 +0100 Subject: [PATCH] Create and attach other required openstack resources Rather than expecting a user to create keypair prior to run infra-ansible, just make infra-ansible to create the keypair per the variable passed as keypair_contents on infra_config.yml. Role provision_infra_servers not only creates instances, but also volumes and now kepairs, thus also renaming the provision_infra_servers role and playbook to setup_openstack_resources. Change-Id: I810edf1b8956d2f5653aa789ce908428c2904549 --- provision_infra_servers.yml | 6 ------ .../defaults/main.yml | 0 .../tasks/main.yml | 15 ++++++++++++--- run.sh | 2 +- setup_openstack_resources.yml | 6 ++++++ 5 files changed, 19 insertions(+), 10 deletions(-) delete mode 100644 provision_infra_servers.yml rename roles/{provision_infra_servers => setup_openstack_resources}/defaults/main.yml (100%) rename roles/{provision_infra_servers => setup_openstack_resources}/tasks/main.yml (76%) create mode 100644 setup_openstack_resources.yml diff --git a/provision_infra_servers.yml b/provision_infra_servers.yml deleted file mode 100644 index cea731d..0000000 --- a/provision_infra_servers.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -# file: provision_infra_servers.yml -- hosts: localhost - connection: local - roles: - - { role: provision_infra_servers } diff --git a/roles/provision_infra_servers/defaults/main.yml b/roles/setup_openstack_resources/defaults/main.yml similarity index 100% rename from roles/provision_infra_servers/defaults/main.yml rename to roles/setup_openstack_resources/defaults/main.yml diff --git a/roles/provision_infra_servers/tasks/main.yml b/roles/setup_openstack_resources/tasks/main.yml similarity index 76% rename from roles/provision_infra_servers/tasks/main.yml rename to roles/setup_openstack_resources/tasks/main.yml index 8dc38c2..b4a49d9 100644 --- a/roles/provision_infra_servers/tasks/main.yml +++ b/roles/setup_openstack_resources/tasks/main.yml @@ -1,5 +1,14 @@ --- -- name: Create OpenStack instances +- name: Create keypairs + os_keypair: + state: present + cloud: "{{item.os_client_config_cloud | default(os_client_config_cloud) }}" + name: "{{ item.name }}" + public_key: "{{ item.contents }}" + validate_certs: no + with_items: keypairs + +- name: Create instances os_server: state: present cloud: "{{item.os_client_config_cloud | default(os_client_config_cloud) }}" @@ -17,7 +26,7 @@ infra_type: "{{ item.infra_type }}" with_items: infra_servers -- name: Create OpenStack volumes +- name: Create volumes os_volume: state: present cloud: "{{item.os_client_config_cloud | default(os_client_config_cloud) }}" @@ -28,7 +37,7 @@ - volumes - { skip_missing: yes } -- name: Attach OpenStack volumes +- name: Attach volumes os_server_volume: state: present cloud: "{{item.os_client_config_cloud | default(os_client_config_cloud) }}" diff --git a/run.sh b/run.sh index b162996..867972d 100755 --- a/run.sh +++ b/run.sh @@ -1,3 +1,3 @@ #!/bin/bash -ansible-playbook -i hosts provision_infra_servers.yml -e "@infra_config.yml" +ansible-playbook -i hosts setup_openstack_resources.yml -e "@infra_config.yml" ansible-playbook -i inventory/openstack.py site.yml -e "@infra_config.yml" diff --git a/setup_openstack_resources.yml b/setup_openstack_resources.yml new file mode 100644 index 0000000..abfc04a --- /dev/null +++ b/setup_openstack_resources.yml @@ -0,0 +1,6 @@ +--- +# file: setup_openstack_resources.yml +- hosts: localhost + connection: local + roles: + - { role: setup_openstack_resources }