Browse Source

Merge pull request #473 from kubespray/bootsrap

Bootstrap
pull/477/head
Antoine Legrand 8 years ago
committed by GitHub
parent
commit
eb78ce4c4e
11 changed files with 42 additions and 9 deletions
  1. 11
      cluster.yml
  2. 3
      inventory/group_vars/all.yml
  3. 0
      roles/bootstrap-os/defaults/main.yml
  4. 0
      roles/bootstrap-os/files/bootstrap.sh
  5. 0
      roles/bootstrap-os/files/get-pip.py
  6. 0
      roles/bootstrap-os/files/runner
  7. 15
      roles/bootstrap-os/tasks/bootstrap-coreos.yml
  8. 14
      roles/bootstrap-os/tasks/bootstrap-ubuntu.yml
  9. 6
      roles/bootstrap-os/tasks/main.yml
  10. 0
      roles/bootstrap-os/templates/python_shim.j2
  11. 2
      ubuntu-bootstrap.yml

11
cluster.yml

@ -1,13 +1,19 @@
---
- hosts: all
gather_facts: true
gather_facts: false
roles:
- bootstrap-os
tags:
- bootstrap-os
- hosts: etcd:!k8s-cluster
gather_facts: true
roles:
- { role: kubernetes/preinstall, tags: preinstall }
- { role: etcd, tags: etcd }
- hosts: k8s-cluster
gather_facts: true
roles:
- { role: kubernetes/preinstall, tags: preinstall }
- { role: etcd, tags: etcd }
@ -15,14 +21,17 @@
- { role: network_plugin, tags: network }
- hosts: kube-master
gather_facts: true
roles:
- { role: kubernetes/preinstall, tags: preinstall }
- { role: kubernetes/master, tags: master }
- hosts: k8s-cluster
gather_facts: true
roles:
- { role: dnsmasq, tags: dnsmasq }
- hosts: kube-master[0]
gather_facts: true
roles:
- {role: kubernetes-apps, tags: apps}

3
inventory/group_vars/all.yml

@ -1,3 +1,6 @@
# Valid bootstrap options (required): xenial, coreos, none
bootstrap_os: none
# Directory where the binaries will be installed
bin_dir: /usr/local/bin

roles/coreos-bootstrap/defaults/main.yml → roles/bootstrap-os/defaults/main.yml

roles/coreos-bootstrap/files/bootstrap.sh → roles/bootstrap-os/files/bootstrap.sh

roles/coreos-bootstrap/files/get-pip.py → roles/bootstrap-os/files/get-pip.py

roles/coreos-bootstrap/files/runner → roles/bootstrap-os/files/runner

roles/coreos-bootstrap/tasks/main.yml → roles/bootstrap-os/tasks/bootstrap-coreos.yml

@ -4,9 +4,10 @@
register: need_bootstrap
ignore_errors: True
- name: Bootstrap | Run bootstrap.sh
script: bootstrap.sh
when: need_bootstrap | failed
when: (need_bootstrap | failed)
- set_fact:
ansible_python_interpreter: "/opt/bin/python"
@ -16,23 +17,23 @@
register: need_pip
ignore_errors: True
changed_when: false
when: need_bootstrap | failed
when: (need_bootstrap | failed)
- name: Bootstrap | Copy get-pip.py
copy: src=get-pip.py dest=~/get-pip.py
when: need_pip | failed
when: (need_pip | failed)
- name: Bootstrap | Install pip
shell: "{{ansible_python_interpreter}} ~/get-pip.py"
when: need_pip | failed
when: (need_pip | failed)
- name: Bootstrap | Remove get-pip.py
file: path=~/get-pip.py state=absent
when: need_pip | failed
when: (need_pip | failed)
- name: Bootstrap | Install pip launcher
copy: src=runner dest=/opt/bin/pip mode=0755
when: need_pip | failed
when: (need_pip | failed)
- name: Install required python modules
pip:
@ -45,4 +46,4 @@
- name: Assign inventory name to unconfigured hostnames
shell: sh -c "echo \"{{inventory_hostname}}\" > /etc/hostname; hostname \"{{inventory_hostname}}\""
when: configured_hostname.stdout == 'localhost'
when: (configured_hostname.stdout == 'localhost')

14
roles/bootstrap-os/tasks/bootstrap-ubuntu.yml

@ -0,0 +1,14 @@
---
# raw: cat /etc/issue.net | grep '{{ bootstrap_versions }}'
- name: Bootstrap | Check if bootstrap is needed
raw: which python
register: need_bootstrap
ignore_errors: True
- name: Bootstrap | Install python 2.x
raw: DEBIAN_FRONTEND=noninteractive apt-get install -y python-minimal
when: need_bootstrap | failed
- set_fact:
ansible_python_interpreter: "/usr/bin/python"

6
roles/bootstrap-os/tasks/main.yml

@ -0,0 +1,6 @@
---
- include: bootstrap-ubuntu.yml
when: bootstrap_os == "ubuntu"
- include: bootstrap-coreos.yml
when: bootstrap_os == "coreos"

roles/coreos-bootstrap/templates/python_shim.j2 → roles/bootstrap-os/templates/python_shim.j2

coreos-bootstrap.yml → ubuntu-bootstrap.yml

@ -2,4 +2,4 @@
- hosts: all
gather_facts: False
roles:
- coreos-bootstrap
- ubuntu-bootstrap
Loading…
Cancel
Save