---
|
- name: Install packages for OpenStack CLI
|
package:
|
name:
|
- gcc
|
- python3
|
- python3-devel
|
|
- name: Copy requirements.txt
|
copy:
|
src: "./files/openstack_requirements.txt"
|
dest: "/root/requirements.txt"
|
|
- name: Install python requirements for OpenStack CLI
|
command: "pip3 install -r /root/requirements.txt"
|
|
- name: Remove requirements.txt
|
file:
|
path: "/root/requirements.txt"
|
state: absent
|
|
- name: Add /usr/local/bin to PATH
|
copy:
|
dest: /etc/profile.d/custom-path.sh
|
content: 'PATH=$PATH:/usr/local/bin'
|
|
- name: Create .config directory
|
file:
|
path: /home/{{ ansible_user }}/.config/openstack
|
state: directory
|
owner: "{{ ansible_user }}"
|
group: users
|
mode: 0744
|
|
- name: Create clouds.yaml file
|
template:
|
src: "clouds.yaml.j2"
|
dest: "/home/{{ ansible_user }}/.config/openstack/clouds.yaml"
|
owner: "{{ ansible_user }}"
|
mode: 0700
|
|
- name: Add environment variables for API and Ingress FIPs
|
lineinfile:
|
path: "/home/{{ ansible_user }}/.bashrc"
|
regexp: "^export {{ item.env_var }}"
|
line: "export {{ item.env_var }}={{ item.ip }}"
|
loop:
|
- ip: "{{ hostvars['localhost']['ocp_api_fip'] }}"
|
env_var: "API_FIP"
|
- ip: "{{ hostvars['localhost']['ocp_ingress_fip'] }}"
|
env_var: "INGRESS_FIP"
|
loop_control:
|
label: item.ip
|
when: openshift_fip_provision
|
|
- name: Add environment variable for DNS domain
|
lineinfile:
|
path: "/home/{{ ansible_user }}/.bashrc"
|
regexp: "^export OPENSHIFT_DNS_ZONE"
|
line: "export OPENSHIFT_DNS_ZONE={{ osp_cluster_dns_zone }}"
|
when: openshift_fip_provision
|
|
- name: Add environment variable for OpenStack credentials
|
lineinfile:
|
path: "/home/{{ ansible_user }}/.bashrc"
|
regexp: "^export OS_CLOUD"
|
line: "export OS_CLOUD={{ osp_cloud_name }}"
|
|
- name: Create resources directory
|
file:
|
path: "/home/{{ ansible_user }}/resources"
|
state: directory
|
owner: "{{ ansible_user }}"
|
group: users
|
mode: 0744
|
|
- name: Set OpenStack Object Store Account
|
when: ocp4_installer_version is version_compare('4.4.0', '<')
|
command: >-
|
openstack --os-cloud={{ osp_cloud_name }} object store account set
|
--property Temp-URL-Key=somename
|
become: no
|