Add OpenStack iSCSI Multipath Playbooks and Jobs
Change-Id: Id29b17c9ef799bd5ae0560eaedfada6dd55a3b3d
diff --git a/playbooks/setup-openstack-client/post.yaml b/playbooks/setup-openstack-client/post.yaml
new file mode 100644
index 0000000..d2525ac
--- /dev/null
+++ b/playbooks/setup-openstack-client/post.yaml
@@ -0,0 +1,8 @@
+- hosts: undercloud-client
+ vars_files:
+ - vars.yaml
+ tasks:
+ - name: Deprovision OpenStack Credentials
+ ansible.builtin.file:
+ path: "{{ os_creds_dir }}"
+ state: absent
diff --git a/playbooks/setup-openstack-client/pre.yaml b/playbooks/setup-openstack-client/pre.yaml
new file mode 100644
index 0000000..2534c6e
--- /dev/null
+++ b/playbooks/setup-openstack-client/pre.yaml
@@ -0,0 +1,48 @@
+- hosts: undercloud-client
+ vars_files:
+ - vars.yaml
+ tasks:
+ # TODO: To be removed once DNS starts working again.
+ - name: Provision systemd-resovled Configuration
+ no_log: true
+ become: true
+ ansible.builtin.copy:
+ content: "{{ RESOLVED_DATA['v'] }}"
+ dest: /etc/systemd/resolved.conf
+
+ - name: Restart systemd-resolved
+ become: true
+ ansible.builtin.service:
+ name: systemd-resolved
+ state: restarted
+
+ - name: Ensure OpenStack Credentials Directory Exists
+ ansible.builtin.file:
+ path: "{{ os_creds_dir }}"
+ state: directory
+ mode: '0700'
+ recurse: true
+
+ - name: Provision OpenStack Credentials
+ no_log: true
+ ansible.builtin.copy:
+ content: "{{ OPENSTACK_DATA['v'] }}"
+ dest: "{{ os_creds_path }}"
+ mode: '0600'
+
+ - name: Install python3-pip
+ become: true
+ ansible.builtin.apt:
+ name: python3-pip
+ update_cache: yes
+
+ - name: Install virtualenv
+ become: true
+ ansible.builtin.pip:
+ name: virtualenv
+ executable: pip3
+
+ - name: Create an OpenStack CLI Venv
+ ansible.builtin.pip:
+ name: python-openstackclient
+ virtualenv: "{{ os_venv }}"
diff --git a/playbooks/setup-openstack-client/vars.yaml b/playbooks/setup-openstack-client/vars.yaml
new file mode 100644
index 0000000..3b859dd
--- /dev/null
+++ b/playbooks/setup-openstack-client/vars.yaml
@@ -0,0 +1,2 @@
+os_creds_dir: "{{ ansible_env.HOME }}/.config/openstack"
+os_creds_path: "{{ os_creds_dir }}/clouds.yaml"