From f1dfc0776d32dea2a2fe7e2cb2b15b1836a6b666 Mon Sep 17 00:00:00 2001 From: Narinder Gupta Date: Sun, 16 Oct 2016 07:54:56 -0500 Subject: cmodfiied to add juju 2.0 support. Change-Id: I3981f796cfb9ceb9f32522f4fed831d66e389c48 Signed-off-by: Narinder Gupta --- ci/config_tpl/juju2/maas_tpl/deployment.yaml | 45 ++++++++++++++++++++++ ci/config_tpl/juju2/maas_tpl/juju-bootstrap.yaml | 13 +++++++ .../juju2/maas_tpl/maas-network_config.yaml | 20 ++++++++++ .../juju2/maas_tpl/maas-node_group_ifaces.yaml | 23 +++++++++++ ci/config_tpl/juju2/maas_tpl/maas-nodes.yaml | 28 ++++++++++++++ 5 files changed, 129 insertions(+) create mode 100644 ci/config_tpl/juju2/maas_tpl/deployment.yaml create mode 100644 ci/config_tpl/juju2/maas_tpl/juju-bootstrap.yaml create mode 100644 ci/config_tpl/juju2/maas_tpl/maas-network_config.yaml create mode 100644 ci/config_tpl/juju2/maas_tpl/maas-node_group_ifaces.yaml create mode 100644 ci/config_tpl/juju2/maas_tpl/maas-nodes.yaml (limited to 'ci/config_tpl/juju2/maas_tpl') 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 %} -- cgit 1.2.3-korg