aboutsummaryrefslogtreecommitdiffstats
path: root/resources/tools/testbed-setup/ansible/roles/cobbler/tasks
diff options
context:
space:
mode:
authorPeter Mikus <pmikus@cisco.com>2019-02-23 16:27:07 +0000
committerPeter Mikus <pmikus@cisco.com>2019-05-22 09:30:11 +0000
commit04ea580e111ddf5be6101be1fbfe9fde56f1a214 (patch)
tree09247ed50f1da5e09b79dcf41a05b38afeaa4ee2 /resources/tools/testbed-setup/ansible/roles/cobbler/tasks
parentc6cd03e08d9429168b0e183b8dcbce991112f279 (diff)
Ansible: Add CIMC/IPMI/COBBLER
- added tasks and handlers for CIMC, IPMI, COBBLER - allows provisioning of servers via COBBLER Change-Id: I64080069260dabb8a6e3b648aeff12f109d3f7c2 Signed-off-by: Peter Mikus <pmikus@cisco.com>
Diffstat (limited to 'resources/tools/testbed-setup/ansible/roles/cobbler/tasks')
-rw-r--r--resources/tools/testbed-setup/ansible/roles/cobbler/tasks/main.yaml45
-rw-r--r--resources/tools/testbed-setup/ansible/roles/cobbler/tasks/ubuntu-18.04.2-server-x86_64.yaml35
2 files changed, 80 insertions, 0 deletions
diff --git a/resources/tools/testbed-setup/ansible/roles/cobbler/tasks/main.yaml b/resources/tools/testbed-setup/ansible/roles/cobbler/tasks/main.yaml
new file mode 100644
index 0000000000..f48a976ea1
--- /dev/null
+++ b/resources/tools/testbed-setup/ansible/roles/cobbler/tasks/main.yaml
@@ -0,0 +1,45 @@
+---
+# file: roles/cobbler/tasks/main.yaml
+
+- name: Sync the cobbler docker directory
+ synchronize:
+ src: 'files'
+ dest: '/home/{{ ansible_user }}/cobbler_docker'
+ register: __cobbler_image_built
+ tags: cobbler-build-image
+
+- name: Build the cobbler docker image
+ docker_image:
+ path: '/home/{{ ansible_user }}/cobbler_docker/files'
+ name: 'csit/cobbler'
+ buildargs:
+ cobbler_pass: '{{ cobbler_pass }}'
+ cobbler_web_pass: '{{ cobbler_password }}'
+ cobbler_ip_addr: '{{ inventory_hostname }}'
+ when: __cobbler_image_built
+ tags: cobbler-build-image
+
+- name: Run Cobbler image
+ docker_container:
+ name: 'cobbler'
+ image: 'csit/cobbler'
+ network_mode: 'host'
+ volumes:
+ - '/mnt:/mnt:ro'
+ register: __cobbler_image_running
+ tags: cobbler-run-image
+
+- name: Run cobbler setup get-loaders
+ command: 'docker exec -i cobbler cobbler get-loaders'
+ when: __cobbler_image_running
+ tags: cobbler-run-image
+
+- name: Run cobbler setup sync
+ command: 'docker exec -i cobbler cobbler sync'
+ when: __cobbler_image_running
+ tags: cobbler-run-image
+
+- name: Add Ubuntu 18.04.2 Server x86_64 to cobbler
+ include_tasks: 'ubuntu-18.04.2-server-x86_64.yaml'
+ when: __cobbler_image_running
+ tags: cobbler-run-image
diff --git a/resources/tools/testbed-setup/ansible/roles/cobbler/tasks/ubuntu-18.04.2-server-x86_64.yaml b/resources/tools/testbed-setup/ansible/roles/cobbler/tasks/ubuntu-18.04.2-server-x86_64.yaml
new file mode 100644
index 0000000000..2c89234de2
--- /dev/null
+++ b/resources/tools/testbed-setup/ansible/roles/cobbler/tasks/ubuntu-18.04.2-server-x86_64.yaml
@@ -0,0 +1,35 @@
+---
+# file: roles/cobbler/tasks/ubuntu-18.04.2-server-x86_64.yaml
+
+- name: Download Ubuntu 18.04.2 Server x86_64 with check (sha256)
+ get_url:
+ url: 'http://cdimage.ubuntu.com/ubuntu/releases/18.04/release/ubuntu-18.04.2-server-amd64.iso'
+ dest: '/mnt/ubuntu-18.04.2-server-amd64.iso'
+ checksum: 'sha256:a2cb36dc010d98ad9253ea5ad5a07fd6b409e3412c48f1860536970b073c98f5'
+ register: __iso_downloaded
+ tags: cobbler-import-image
+
+- name: Create directory for Ubuntu 18.04.2 Server x86_64 mount
+ file:
+ path: '/mnt/ubuntu-18.04.2-server-x86_64'
+ state: 'directory'
+ register: __mount_directory_created
+ tags: cobbler-import-image
+
+- name: Mount Ubuntu 18.04.2 Server x86_64 iso
+ mount:
+ src: '/mnt/ubuntu-18.04.2-server-amd64.iso'
+ path: '/mnt/ubuntu-18.04.2-server-x86_64'
+ fstype: 'iso9660'
+ opts: 'ro,loop'
+ state: mounted
+ when: __iso_downloaded and __mount_directory_created
+ tags: cobbler-import-image
+
+- name: Run cobbler distro import for Ubuntu 18.04.2 Server x86_64
+ command: |
+ docker exec -i cobbler cobbler import
+ --path=/mnt/ubuntu-18.04.2-server-x86_64
+ --name=ubuntu-18.04.2-server-x86_64
+ --kickstart=/var/lib/cobbler/kickstarts/ubuntu-18.04.2-server-x86_64.seed
+ tags: cobbler-import-image