Merge branch 'master' of ssh://gerrit.opencord.org:29418/maas
diff --git a/README.md b/README.md
index 3c96d86..0813706 100644
--- a/README.md
+++ b/README.md
@@ -72,6 +72,12 @@
_Additionally configuration variables, including network IP addressing information can be found in
the file `vars/main.yml`._
+### Configuration
+
+ - When working with virtual machines, or really any machine that does not have a real 40G interface it is
+ sometimes useful to not attempt to rename / reconfigure the machines interfaces. This can be accomplished
+ by adding the `--skip-tags=interface_config` command line option to your ansible-playbook command line.
+
### Comments
- `iptables` rules will be established to `NAT` traffic out interface `eth3`
@@ -82,4 +88,4 @@
### Dependencies
-This role depends on the `docker` role.
+This role depends on the `compute-node` role.
diff --git a/compute.yml b/compute.yml
new file mode 100644
index 0000000..96f85f3
--- /dev/null
+++ b/compute.yml
@@ -0,0 +1,3 @@
+- hosts: compute
+ roles:
+ - compute-node
diff --git a/head.yml b/head.yml
new file mode 100644
index 0000000..73d8762
--- /dev/null
+++ b/head.yml
@@ -0,0 +1,3 @@
+- hosts: head
+ roles:
+ - maas
diff --git a/hosts b/hosts
index 5b09f77..6e561cd 100644
--- a/hosts
+++ b/hosts
@@ -5,7 +5,7 @@
leaf-2
[head]
-172.42.42.38
+172.42.42.42
[compute]
diff --git a/roles/compute-node/files/rename_ifaces.sh b/roles/compute-node/files/rename_ifaces.sh
index be8cb72..be08ba5 100755
--- a/roles/compute-node/files/rename_ifaces.sh
+++ b/roles/compute-node/files/rename_ifaces.sh
@@ -52,7 +52,7 @@
i40e)
RESULT="I40G"
;;
- igb)
+ igb|e1000)
RESULT="ETH"
;;
*) ;;
diff --git a/roles/compute-node/tasks/main.yml b/roles/compute-node/tasks/main.yml
index 58bea5f..f3ee4aa 100644
--- a/roles/compute-node/tasks/main.yml
+++ b/roles/compute-node/tasks/main.yml
@@ -49,18 +49,26 @@
command: modinfo --field=version i40e
register: i40e_version
changed_when: False
+ tags:
+ - interface_config
- name: Update i40e Driver
include: tasks/i40e_driver.yml
when: i40e_version.stdout != '1.4.25'
+ tags:
+ - interface_config
- name: Consistent Interface Naming
become: yes
script: files/rename_ifaces.sh {{ fabric_ip }}
register: ifaces_changed
changed_when: ifaces_changed.stdout != "false"
+ tags:
+ - interface_config
- name: Reboot Required
become: yes
command: /sbin/reboot
when: ifaces_changed.stdout != "false"
+ tags:
+ - interface_config
diff --git a/roles/maas/meta/main.yml b/roles/maas/meta/main.yml
index bc5468b..74a4db4 100644
--- a/roles/maas/meta/main.yml
+++ b/roles/maas/meta/main.yml
@@ -1,14 +1,15 @@
---
galaxy_info:
- author: David Bainbridge
- description: Ubuntu MAAS from Canonical
- min_ansible_version: 2
+ author: Ciena Blueplanet
+ description: Services required to bare metal boot CORD POD
+ company: Ciena Blueplanet
+ license: Apache 2.0
+ min_ansible_version: 2.0
platforms:
- name: Ubuntu
versions:
- trusty
- categories:
- - development
- - system
-
-dependencies: [docker]
+ galaxy_tags:
+ - cord
+dependencies:
+ - { role : compute-node }
diff --git a/roles/maas/tasks/main.yml b/roles/maas/tasks/main.yml
index 691ff7b..c5be210 100644
--- a/roles/maas/tasks/main.yml
+++ b/roles/maas/tasks/main.yml
@@ -20,14 +20,14 @@
become: yes
docker:
name: automation
- image: cord/maas-automation:0.1-prerelease
+ image: ciena/cord-maas-automation:0.1-prerelease
state: absent
- name: Stop DHCP Harvester Container
become: yes
docker:
name: harvester
- image: cord/maas-dhcp-harvester:0.1-prerelease
+ image: ciena/cord-maas-dhcp-harvester:0.1-prerelease
state: absent
- name: MAAS Repository
@@ -145,7 +145,7 @@
register: mgmt_ip_address
changed_when: false
-# Currently the onie image is being stored in **Dropbox** on a personal account, which is not really what we want to
+# Currently the onie image is being stored in **Dropbox** on a personal account, which is not really what we want to
# have in production, but it works for the time being.
- name: Switch Boot Resources
become: yes
@@ -194,3 +194,21 @@
register: dns_template_changed
changed_when: dns_template_changed.stdout == 'true'
+- name: Custom Automation Compose Configurations
+ become: yes
+ template:
+ src: templates/{{ item }}.j2
+ dest: /etc/maas/{{ item }}
+ owner: maas
+ group: maas
+ mode: 0644
+ with_items:
+ - automation-compose.yml
+ - harvest-compose.yml
+
+- name: Automation
+ become: yes
+ command: docker-compose -f /etc/maas/{{ item }} up -d
+ with_items:
+ - automation-compose.yml
+ - harvest-compose.yml
diff --git a/roles/maas/templates/automation-compose.yml.j2 b/roles/maas/templates/automation-compose.yml.j2
index 1d8d751..0e11776 100644
--- a/roles/maas/templates/automation-compose.yml.j2
+++ b/roles/maas/templates/automation-compose.yml.j2
@@ -10,4 +10,4 @@
- "GODEBUG=netdns=go"
volumes:
- ".:/mappings"
- command: [ "-apiVersion", "1.0", "-apikey", "{{ apikey.stdout }}", "-maas", "http://{{ ip_address.stdout }}/MAAS", "-period", "30s", "-mappings", "@/mappings/mappings.json", "-always-rename" ]
+ command: [ "-apiVersion", "1.0", "-apikey", "{{ apikey.stdout }}", "-maas", "http://{{ mgmt_ip_address.stdout }}/MAAS", "-period", "30s", "-mappings", "@/mappings/mappings.json", "-always-rename" ]
diff --git a/roles/maas/templates/harvest-compose.yml.j2 b/roles/maas/templates/harvest-compose.yml.j2
index b19b0b1..6d9c25f 100644
--- a/roles/maas/templates/harvest-compose.yml.j2
+++ b/roles/maas/templates/harvest-compose.yml.j2
@@ -12,4 +12,4 @@
- "/etc/dhcp:/etc/dhcp"
ports:
- "8954:8954"
- command: [ "--server", "{{ ip_address.stdout }}", "--port", "954", "--key", "/key/rndc.conf.maas", "--zone", "cord.lab", "--update", "--verify", "--timeout", "1s", "--repeat", "5m", "--quiet", "2s", "--workers", "10", "--filter", "^(?!cord)" ]
+ command: [ "--server", "{{ mgmt_ip_address.stdout }}", "--port", "954", "--key", "/key/rndc.conf.maas", "--zone", "cord.lab", "--update", "--verify", "--timeout", "1s", "--repeat", "5m", "--quiet", "2s", "--workers", "10", "--filter", "^(?!cord)" ]