summaryrefslogtreecommitdiffstats
path: root/ci/config_tpl/juju2/maas_tpl
diff options
context:
space:
mode:
authorNarinder Gupta <narinder.gupta@canonical.com>2016-10-16 07:54:56 -0500
committerNarinder Gupta <narinder.gupta@canonical.com>2016-10-16 23:43:55 -0500
commitf1dfc0776d32dea2a2fe7e2cb2b15b1836a6b666 (patch)
treeb75bd8543a4ba5cc7919c43588b2522201c88c90 /ci/config_tpl/juju2/maas_tpl
parent498d228be6d2bb1f68b5d63813e01ecd68b315cd (diff)
cmodfiied to add juju 2.0 support.
Change-Id: I3981f796cfb9ceb9f32522f4fed831d66e389c48 Signed-off-by: Narinder Gupta <narinder.gupta@canonical.com>
Diffstat (limited to 'ci/config_tpl/juju2/maas_tpl')
-rw-r--r--ci/config_tpl/juju2/maas_tpl/deployment.yaml45
-rw-r--r--ci/config_tpl/juju2/maas_tpl/juju-bootstrap.yaml13
-rw-r--r--ci/config_tpl/juju2/maas_tpl/maas-network_config.yaml20
-rw-r--r--ci/config_tpl/juju2/maas_tpl/maas-node_group_ifaces.yaml23
-rw-r--r--ci/config_tpl/juju2/maas_tpl/maas-nodes.yaml28
5 files changed, 129 insertions, 0 deletions
diff --git a/ci/config_tpl/juju2/maas_tpl/deployment.yaml b/ci/config_tpl/juju2/maas_tpl/deployment.yaml
new file mode 100644
index 00000000..b57ec01c
--- /dev/null
+++ b/ci/config_tpl/juju2/maas_tpl/deployment.yaml
@@ -0,0 +1,45 @@
+opnfv-{{ lab.location }}{{ lab.racks[0].rack }}-maas:
+ juju-bootstrap:
+{% include 'juju-bootstrap.yaml' %}
+ maas:
+ apt_sources:
+ - ppa:maas/stable
+ - ppa:juju/stable
+ arch: amd64
+ boot_source:
+ keyring_filename: /usr/share/keyrings/ubuntu-cloudimage-keyring.gpg
+ selections:
+ '1':
+ arches: amd64
+ labels: release
+ os: ubuntu
+ release: xenial
+ subarches: '*'
+ url: http://maas.ubuntu.com/images/ephemeral-v2/releases/
+ disk_size: 160G
+ interfaces:
+{% for net in opnfv.spaces %}
+ - bridge={{ net.bridge }},model=virtio
+{% endfor %}
+ ip_address: {{ opnfv.spaces_dict.admin.cidr[:-4] }}5
+ memory: 4096
+ name: opnfv-{{ lab.location }}{{ lab.racks[0].rack }}
+ network_config: |
+{% include 'maas-network_config.yaml' %}
+ node_group_ifaces:
+{% include 'maas-node_group_ifaces.yaml' %}
+ nodes:
+{% include 'maas-nodes.yaml' %}
+ password: ubuntu
+ pool: default
+ release: trusty
+ settings:
+ maas_name: {{ lab.location }}{{ lab.racks[0].rack }}
+ main_archive: http://archive.ubuntu.com/ubuntu
+ upstream_dns: {{ lab.racks[0].dns }}
+ user: ubuntu
+ vcpus: 4
+ virsh:
+ rsa_priv_key: {{ os.home }}/.ssh/id_rsa
+ rsa_pub_key: {{ os.home }}/.ssh/id_rsa.pub
+ uri: qemu+ssh://{{ os.user }}@{{ os.brAdmIP }}/system
diff --git a/ci/config_tpl/juju2/maas_tpl/juju-bootstrap.yaml b/ci/config_tpl/juju2/maas_tpl/juju-bootstrap.yaml
new file mode 100644
index 00000000..533c62cc
--- /dev/null
+++ b/ci/config_tpl/juju2/maas_tpl/juju-bootstrap.yaml
@@ -0,0 +1,13 @@
+ arch: amd64
+ disk_size: 60G
+ interfaces:
+{% for net in ['admin','public','external'] %}
+{% if net in opnfv.spaces_dict %}
+ - bridge={{ opnfv.spaces_dict[net].bridge }},model=virtio
+{% endif %}
+{% endfor %}
+ memory: 4096
+ name: bootstrap
+ pool: default
+ vcpus: 4
+{# Empty block to avoid bad block trim #}
diff --git a/ci/config_tpl/juju2/maas_tpl/maas-network_config.yaml b/ci/config_tpl/juju2/maas_tpl/maas-network_config.yaml
new file mode 100644
index 00000000..6188a515
--- /dev/null
+++ b/ci/config_tpl/juju2/maas_tpl/maas-network_config.yaml
@@ -0,0 +1,20 @@
+ auto lo
+ iface lo inet loopback
+{% set ethid = 0 %}
+{% for net in opnfv.spaces %}
+
+ auto eth{{ ethid }}
+ iface eth{{ ethid }} inet static
+ netmask 255.255.255.0
+{% if net.type!='external' %}
+{% set net_prefix = net.cidr[:-4] %}
+ address {{ net_prefix }}5
+{% else %}
+ address {{ net.ipaddress }}
+{% endif %}
+{% if net.type=='admin' %}
+ gateway {{ net.gateway }}
+ dns-nameservers {{ lab.racks[0].dns }} {{ net_prefix }}5 127.0.0.1
+{% endif %}
+{% set ethid = ethid+1 %}
+{% endfor %}
diff --git a/ci/config_tpl/juju2/maas_tpl/maas-node_group_ifaces.yaml b/ci/config_tpl/juju2/maas_tpl/maas-node_group_ifaces.yaml
new file mode 100644
index 00000000..578c89fb
--- /dev/null
+++ b/ci/config_tpl/juju2/maas_tpl/maas-node_group_ifaces.yaml
@@ -0,0 +1,23 @@
+{% set ethid = 0 %}
+{% for net in opnfv.spaces %}
+{% if net.type!='external' %}
+{% set net_prefix = net.cidr[:-4] %}
+ - broadcast_ip: {{ net_prefix }}255
+ device: eth{{ ethid }}
+ dynamic_range:
+ high: {{ net_prefix }}250
+ low: {{ net_prefix }}81
+ ip: {{ net_prefix }}5
+{% if net.gateway!= None %}
+ router_ip: {{ net.gateway }}
+{% endif %}
+{% if net.type!='admin' %}
+ management: 1
+{% endif %}
+ static_range:
+ high: {{ net_prefix }}80
+ low: {{ net_prefix }}50
+ subnet_mask: 255.255.255.0
+{% set ethid = ethid+1 %}
+{% endif %}
+{% endfor %}
diff --git a/ci/config_tpl/juju2/maas_tpl/maas-nodes.yaml b/ci/config_tpl/juju2/maas_tpl/maas-nodes.yaml
new file mode 100644
index 00000000..e32dd7ca
--- /dev/null
+++ b/ci/config_tpl/juju2/maas_tpl/maas-nodes.yaml
@@ -0,0 +1,28 @@
+{% for node in lab.racks[0].nodes %}
+ - interfaces:
+{% for nic in node.nics %}
+ - mac_address: {{ nic.mac[0] }}
+ mode: auto
+ name: {{ nic.ifname }}
+{% endfor %}
+{% if node.architecture=='x86_64' %}
+ architecture: amd64/generic
+{% endif %}
+ mac_addresses:
+{% for nic in node.nics %}
+ - {{ nic.mac[0] }}
+{% endfor %}
+ name: {{ node.name }}
+ power:
+{% if node.power.type=='ipmi' %}
+ address: {{ node.power.address }}
+ driver: LAN_2_0
+ pass: {{ node.power.pass }}
+ type: ipmi
+ user: {{ node.power.user }}
+{% elif node.power.type=='wakeonlan' %}
+ type: ether_wake
+ mac_address: {{ node.power.mac_address }}
+{% endif %}
+ tags: {{ ' '.join(node.roles) }}
+{% endfor %}