54 lines
1.4 KiB
YAML
54 lines
1.4 KiB
YAML
---
|
|
- name: Bootstrap | Check if bootstrap is needed
|
|
raw: stat /opt/bin/.bootstrapped
|
|
register: need_bootstrap
|
|
failed_when: false
|
|
tags: facts
|
|
|
|
- name: Bootstrap | Run bootstrap.sh
|
|
script: bootstrap.sh
|
|
when: (need_bootstrap | failed)
|
|
|
|
- set_fact:
|
|
ansible_python_interpreter: "/opt/bin/python"
|
|
tags: facts
|
|
|
|
- name: Bootstrap | Check if we need to install pip
|
|
shell: "{{ansible_python_interpreter}} -m pip --version"
|
|
register: need_pip
|
|
failed_when: false
|
|
changed_when: false
|
|
check_mode: no
|
|
when: (need_bootstrap | failed)
|
|
tags: facts
|
|
|
|
- name: Bootstrap | Copy get-pip.py
|
|
copy: src=get-pip.py dest=~/get-pip.py
|
|
when: (need_pip | failed)
|
|
|
|
- name: Bootstrap | Install pip
|
|
shell: "{{ansible_python_interpreter}} ~/get-pip.py"
|
|
when: (need_pip | failed)
|
|
|
|
- name: Bootstrap | Remove get-pip.py
|
|
file: path=~/get-pip.py state=absent
|
|
when: (need_pip | failed)
|
|
|
|
- name: Bootstrap | Install pip launcher
|
|
copy: src=runner dest=/opt/bin/pip mode=0755
|
|
when: (need_pip | failed)
|
|
|
|
- name: Install required python modules
|
|
pip:
|
|
name: "{{ item }}"
|
|
with_items: "{{pip_python_modules}}"
|
|
|
|
- name: Check configured hostname
|
|
shell: hostname
|
|
register: configured_hostname
|
|
check_mode: no
|
|
|
|
- name: Assign inventory name to unconfigured hostnames
|
|
shell: sh -c "echo \"{{inventory_hostname}}\" > /etc/hostname; hostname \"{{inventory_hostname}}\""
|
|
when: (configured_hostname.stdout == 'localhost')
|