fuel.git
7 years agoci/deploy.sh: Move global vars to separate file 29/44129/1
Alexandru Avadanii [Tue, 3 Oct 2017 17:30:12 +0000 (19:30 +0200)]
ci/deploy.sh: Move global vars to separate file

log.sh should also work as standalone script, so factor out
global variables from <ci/deploy.sh> into <mcp/scripts/globals.sh>,
which should be sourced by log.sh when required variables are not set.

Change-Id: I5a5bb85ee5835f567d6910b11c137d95e2147714
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoIdentify jump host bridges based on IDF / PDF nets 17/42017/12
Alexandru Avadanii [Sat, 16 Sep 2017 01:22:38 +0000 (03:22 +0200)]
Identify jump host bridges based on IDF / PDF nets

- minor refactor of runtime templates parsing to allow var expansion;
- parse <pod_config.yml> into shell vars, match dynamically networks
  from PDF to IP addresses on bridges of current jumphost;
- keep old '-B' parameter in <ci/deploy.sh>, use it for providing
  fallback values in case there's no bridge name specified via IDF
  and no IP on the jumphost for one or more of the PDF networks;
- re-enable dry-run to ease testing of the above;
- add sample 'idf-pod1.yaml' to <mcp/config/labs/local>;

The new behavior will try to determine the jump host bridge names:
1. Based on IDF mapping, if available
2. Based on PDF network matching with IP addrs on jumphost;
3. Fallback to values passed via '-B';
4. Fallback to default values hardcoded in the deploy script;

Later, we will drop MaaS network env vars in favor of PDF vars,
once the PDF template is generating them.

Change-Id: If9cd65d310c02965b2e2bfa06a0d7e0f97f1dd48
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoAlign salt version & repos 37/43937/1
Michael Polenchuk [Mon, 2 Oct 2017 18:04:20 +0000 (22:04 +0400)]
Align salt version & repos

Change-Id: If7cb8473f5c290d1d5f22fce5567f7b8da24fd9f
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoMerge "[virtual] Reset mtu for compute management bridge"
Alexandru Avadanii [Mon, 2 Oct 2017 15:30:03 +0000 (15:30 +0000)]
Merge "[virtual] Reset mtu for compute management bridge"

7 years ago[virtual] Reset mtu for compute management bridge 29/43829/1
Michael Polenchuk [Mon, 2 Oct 2017 08:51:44 +0000 (12:51 +0400)]
[virtual] Reset mtu for compute management bridge

Use default mtu for br-mgmt in order to resolve the live
migration failure (cannot recv data: connection timed out)

Change-Id: I9cee453d87f849e29fc877fff237f8e604f2df53
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoEnable options for customizing deploy workflow 85/41985/3
Yujun Zhang [Thu, 14 Sep 2017 15:29:50 +0000 (23:29 +0800)]
Enable options for customizing deploy workflow

Change-Id: I1011734895771fdaf653c59348a9ce0aeeff47a7
Signed-off-by: Yujun Zhang <zhang.yujunz@zte.com.cn>
7 years agoMaaS: Fix missing service.maas.cluster.single inc 61/43361/1
Alexandru Avadanii [Wed, 27 Sep 2017 23:40:47 +0000 (01:40 +0200)]
MaaS: Fix missing service.maas.cluster.single inc

Upstream change [1] made the inclusion of service.maas.cluster.single
mandatory by using some default reclass definitions which we don't
override explicitly.

[1] https://github.com/salt-formulas/salt-formula-maas/commit/
    ce118a238bae4bcf19d2f10bca591a40405f7c3c

Change-Id: I5746b6906b341a7257e0cd2b4b0bed8ea25840f4
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agopharos git submodule: Bump for latest PDF adapter 53/43353/1
Alexandru Avadanii [Wed, 27 Sep 2017 20:15:22 +0000 (22:15 +0200)]
pharos git submodule: Bump for latest PDF adapter

Change-Id: I658c1dfeb369adf74038abd0ce1b593d40303527
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoMerge "PDF parsing support"
Alexandru Avadanii [Wed, 27 Sep 2017 19:18:00 +0000 (19:18 +0000)]
Merge "PDF parsing support"

7 years agoMerge "lib.sh: Use host bridge in favor of virsh network"
Alexandru Avadanii [Wed, 27 Sep 2017 12:46:11 +0000 (12:46 +0000)]
Merge "lib.sh: Use host bridge in favor of virsh network"

7 years agoPDF parsing support 41/42141/14
Alexandru Avadanii [Sat, 16 Sep 2017 19:13:11 +0000 (21:13 +0200)]
PDF parsing support

- add new git submodule pointing to OPNFV Pharos;
- use Pharos 'generate_config.sh' to parse the PDF using the Fuel
  installer adapter and generate <pod_config.yml> dynamically;
- build <pod_config.yml> outside current git repo and sync separately
  to prevent sensitive data leak;
- add <pod1.yaml> PDF sample based on LF-POD2, should be used with
  'ci/deploy.sh -l local -p pod1';

Change-Id: I4e1b95f180bcd5ade5d86f516628eb8edbe64b1c
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoChange vlan tag of lf-pod private network 19/43119/2
Michael Polenchuk [Tue, 26 Sep 2017 06:05:36 +0000 (10:05 +0400)]
Change vlan tag of lf-pod private network

Change-Id: I66f5b4ac4ab58d3dbc983b0e1bed359a58602dba
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agolib.sh: Use host bridge in favor of virsh network 17/43217/1
Alexandru Avadanii [Tue, 26 Sep 2017 18:52:36 +0000 (20:52 +0200)]
lib.sh: Use host bridge in favor of virsh network

If a linux bridge already exists on the jump host, with the same
name as the value passed via `-B` or the default, use it instead
of trying to create a virsh network.

Change-Id: If7f0753ec366d429ff101c2b37dd68f895903404
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoMerge "Extended PDF support to all baremetal scenarios"
Alexandru Avadanii [Tue, 26 Sep 2017 16:01:04 +0000 (16:01 +0000)]
Merge "Extended PDF support to all baremetal scenarios"

7 years ago[virtual] Switch compute nodes to uca repo 59/43159/1
Michael Polenchuk [Tue, 26 Sep 2017 09:21:23 +0000 (13:21 +0400)]
[virtual] Switch compute nodes to uca repo

Test of snaps_health_check gets console output of instance, which is
empty (https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1667033),
therefore take affected packages of computes from UCA repo.

Change-Id: I4e13a40dd47caf305efd9f393b3c3cf5a17ef312
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoExtended PDF support to all baremetal scenarios 93/42993/7
Guillermo Herrero [Mon, 25 Sep 2017 10:48:26 +0000 (12:48 +0200)]
Extended PDF support to all baremetal scenarios

JIRA: FUEL-275

Change-Id: I67e8d7ab95e35c78a4f960a12733124fe7bffaec
Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com>
7 years agopatches: Fix context for linux/map.jinja 73/43073/1
Alexandru Avadanii [Mon, 25 Sep 2017 23:10:24 +0000 (01:10 +0200)]
patches: Fix context for linux/map.jinja

linux/map.jinja was changed upstream, so our patch (silently)
failed to apply. Adjust the patch context accordingly.

Change-Id: I3493d1926df1303ed823d7ca5dd8282578617f3c
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoMerge "states: maas: Dynamic node count in stop condition"
Alexandru Avadanii [Mon, 25 Sep 2017 17:10:52 +0000 (17:10 +0000)]
Merge "states: maas: Dynamic node count in stop condition"

7 years agoMerge "Fix or silence all yamllint warnings"
Alexandru Avadanii [Mon, 25 Sep 2017 15:24:06 +0000 (15:24 +0000)]
Merge "Fix or silence all yamllint warnings"

7 years agoRun packages upgrade on openstack nodes only 83/42983/1
Michael Polenchuk [Mon, 25 Sep 2017 09:25:50 +0000 (13:25 +0400)]
Run packages upgrade on openstack nodes only

Change-Id: I53ac0be519df1bb39a6a56e236285fce95228bd4
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoFix or silence all yamllint warnings 07/42907/1
Alexandru Avadanii [Mon, 25 Sep 2017 02:36:02 +0000 (04:36 +0200)]
Fix or silence all yamllint warnings

Change-Id: Iface28ab770beee00374afb902ef4f9c983538f5
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agostates: maas: Dynamic node count in stop condition 37/40137/3
Michael Polenchuk [Thu, 24 Aug 2017 17:32:00 +0000 (19:32 +0200)]
states: maas: Dynamic node count in stop condition

Change-Id: I7fe8d0c77a1d62e2214fb1089651a639303dd20e
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoMerge "MaaS: Reduce C/D timeouts, minor fixes"
Alexandru Avadanii [Sat, 23 Sep 2017 21:46:57 +0000 (21:46 +0000)]
Merge "MaaS: Reduce C/D timeouts, minor fixes"

7 years agoMaaS: Reduce C/D timeouts, minor fixes 59/42859/1
Alexandru Avadanii [Sat, 23 Sep 2017 19:35:03 +0000 (21:35 +0200)]
MaaS: Reduce C/D timeouts, minor fixes

- add new patch for maas.region, extending it poorly with a timeout
  override mechanism; the new comissioning/deploying timeout defaults
  (10/15min) will be used instead of MaaS defaults (20/40min), unless
  reclass params are defined with different values;
- add 30s delay between 'machine mark-broken' and 'machine mark-fixed'
  MaaS cli commands (fixes a rare race condition);
- fix forgotten replace in 'maas.pxe_route': s/opnfv_fuel_/opnfv_/g;

Change-Id: I71c562b80031bac2793dd470d52928c2d62e5300
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoWorkaround VCP minions timeout post pkg.upgrade 57/42857/2
Alexandru Avadanii [Sat, 23 Sep 2017 18:48:59 +0000 (20:48 +0200)]
Workaround VCP minions timeout post pkg.upgrade

pkg.upgrade was enabled for all salt minions, including VCP VMs,
which take longer to perform the operation, probably due to an
older set of packages in the Ubuntu disk image we use.
One way to work around this is to switch to UCA Xenial image, and
let Salt pre-provising salt minion on it, but that adds deploy
time delay and has caused issues in the past (should be ok now).

Alternatively, we can retry the pkg.upgrade until all minions
respond, before moving on with the state execution. This prevents
silently skipping the next salt calls (e.g. installing keepalived).

Note that the issue did not manifest for OVD-DPDK, where after
pkg.upgrade, DPDK is installed, giving VCP VMs enough time to return.

While at it, retry 'salt.control' state apply too (non-critical,
but it fails every once in a while).

Fixes: 87310fb

Change-Id: I97acc2b23206a55d72f7e6583ca42127fdbacc16
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoreclass: Drop MaaS public IP and interface 53/42853/1
Alexandru Avadanii [Sat, 23 Sep 2017 14:47:17 +0000 (16:47 +0200)]
reclass: Drop MaaS public IP and interface

MaaS node does not need to be exposed to the public network; instead
the management IP should be enough to access the MaaS dashboard.

So, drop 'infra_maas_node01_external_address' reclass param, together
with its OPNFV PDF param, 'opnfv_infra_maas_node01_external_address'.

This allows us to move compute public IPs back to .{2,3} instead of
.{101,102}, where we moved them during 'pod_config.yml' addition.

While at it, fix a minor duplicate 'name' param for 'br-mgmt' bridge
on kvm nodes.

Change-Id: Ie9fcf5924d7aa37b666f42c968687d73b51a8278
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoreclass: pod_config: Revert MaaS IPs to .3 37/42837/1
Alexandru Avadanii [Sat, 23 Sep 2017 02:39:01 +0000 (04:39 +0200)]
reclass: pod_config: Revert MaaS IPs to .3

PDF compatible reclass support moved the MaaS IPs from .2 to .3.
However, the runtime template was not updated accordingly, leading
to mismatches between IP addresses. Until all scenarios support
pod_config, we can't apply the IP change correctly, so revert it.

Change-Id: I34e42ec06dd9fd4f69bd7c91dbe068a4f83b3e62
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agostates: maas: Add 30s delay in re-deploy attempt 97/42797/1
Alexandru Avadanii [Fri, 22 Sep 2017 17:04:17 +0000 (19:04 +0200)]
states: maas: Add 30s delay in re-deploy attempt

Occasionaly, MaaS fails to provision/deploy some nodes, in which
case we try marking them as broken, then fixed (to put them again
in 'ready' state); before re-attempting the MaaS deploy operation.
However, this leads to 'Error: Internal server error' when deploy
function is called right after transitioning the node to 'ready'
state.

Add a delay of 30 seconds before re-attempting the failed operation.

Change-Id: Ia9ecec67639387e4a29feab3114e1741c554a2cb
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoMerge "Adjust memory allocation size"
Alexandru Avadanii [Fri, 22 Sep 2017 15:36:01 +0000 (15:36 +0000)]
Merge "Adjust memory allocation size"

7 years agoAdjust memory allocation size 67/42767/1
Michael Polenchuk [Fri, 22 Sep 2017 14:28:58 +0000 (18:28 +0400)]
Adjust memory allocation size

* [baremetal] add memory to contollers & salt master
* tune up sysctl vm.dirty* for compute nodes
* upgrade packages to get the latest versions
  (https://bugs.launchpad.net/cinder/+bug/1641312)

Change-Id: I9ad22206f2f3f11e1da3f93c7a0931c592adf1cf
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoPod Descriptor File compatible reclass structure 55/41855/16
Guillermo Herrero [Wed, 13 Sep 2017 12:15:07 +0000 (14:15 +0200)]
Pod Descriptor File compatible reclass structure

Implementation for baremetal-mcp-ocata-ovs-ha scenario

JIRA: FUEL-275

Change-Id: Id6ab5697f993ac9faa019c3c10ba4ed4b7b6db01
Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com>
7 years ago[virtual] Alter haproxy entry type of odl rest api 55/42655/1
Michael Polenchuk [Thu, 21 Sep 2017 13:49:56 +0000 (17:49 +0400)]
[virtual] Alter haproxy entry type of odl rest api

Change-Id: Iedb9a57f7ed4b7483bf629225fb2f3470e7de97e
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoRemove build instruction from documentation 73/42073/1
Cristina Pauna [Fri, 15 Sep 2017 14:03:00 +0000 (17:03 +0300)]
Remove build instruction from documentation

Fuel/MCP no longer packages the installer in an iso, therefore
these building instructions are obsolete.

JIRA: FUEL-276

Change-Id: Iee587be89078707cf0cf748212b94d69f1769e12
Signed-off-by: Cristina Pauna <cristina.pauna@enea.com>
7 years ago[ovs/dpdk] Fix location of libvirtd config 59/42059/1
Michael Polenchuk [Fri, 15 Sep 2017 10:16:42 +0000 (14:16 +0400)]
[ovs/dpdk] Fix location of libvirtd config

Change-Id: If2e3736af02bb0ca53667116377f2fed4385b048
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoMerge "Tune up mysql options"
Alexandru Avadanii [Thu, 14 Sep 2017 17:27:06 +0000 (17:27 +0000)]
Merge "Tune up mysql options"

7 years ago[baremetal] Switch from 1Gb to 2Mb hugepages 51/41951/1
Michael Polenchuk [Thu, 14 Sep 2017 10:21:03 +0000 (14:21 +0400)]
[baremetal] Switch from 1Gb to 2Mb hugepages

Employ 2Mb hugepages for physical computes as well
since functest suite uses less than 1Gb memory flavors.

Change-Id: I7e96dd73df7d9e7274247b4faba15ee9bd362e40
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoTune up mysql options 47/41947/1
Michael Polenchuk [Thu, 14 Sep 2017 09:01:34 +0000 (13:01 +0400)]
Tune up mysql options

Change-Id: Ib4d787c45434243d0dc29d517a73224cf4f9d1c1
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoMerge "[virtual] Setup nfs for nova instances"
Alexandru Avadanii [Wed, 13 Sep 2017 17:08:01 +0000 (17:08 +0000)]
Merge "[virtual] Setup nfs for nova instances"

7 years agoMerge "[virtual] Add haproxy entries for opendaylight"
Alexandru Avadanii [Wed, 13 Sep 2017 17:07:06 +0000 (17:07 +0000)]
Merge "[virtual] Add haproxy entries for opendaylight"

7 years ago[baremetal] Setup glusterfs for nova instances 51/41851/2
Michael Polenchuk [Wed, 13 Sep 2017 10:39:22 +0000 (14:39 +0400)]
[baremetal] Setup glusterfs for nova instances

Live-migration feature requires shared storage on compute nodes,
so configure glusterfs volume for nova instances.

Change-Id: Id6b9b5aad89f5b4aefbef71e4ba7247a441873b0
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years ago[virtual] Add haproxy entries for opendaylight 39/41839/1
Michael Polenchuk [Wed, 13 Sep 2017 08:43:36 +0000 (12:43 +0400)]
[virtual] Add haproxy entries for opendaylight

Change-Id: Id0303d217dbe71e4b04834e545feae0660172b23
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years ago[virtual] Setup nfs for nova instances 33/41833/1
Michael Polenchuk [Wed, 13 Sep 2017 08:18:19 +0000 (12:18 +0400)]
[virtual] Setup nfs for nova instances

Configure nfs shared storage for nova instances
to support live migration feature.

Change-Id: I777d5725e45d03325507d3ecc8dd59a28cbc188f
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoMerge "salt-master-init.sh: Use stable 2016.11 salt ver"
Alexandru Avadanii [Tue, 12 Sep 2017 15:24:03 +0000 (15:24 +0000)]
Merge "salt-master-init.sh: Use stable 2016.11 salt ver"

7 years agoAdd proxy entries for opendaylight endpoints 87/41687/1
Michael Polenchuk [Mon, 11 Sep 2017 15:02:09 +0000 (19:02 +0400)]
Add proxy entries for opendaylight endpoints

Change-Id: I8ebe4dedb9601ae0f45922fd30a34c67382755fc
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoreclass, states: Parametrize runtime configuration 95/41595/8
Alexandru Avadanii [Sun, 10 Sep 2017 21:33:36 +0000 (23:33 +0200)]
reclass, states: Parametrize runtime configuration

mcpcontrol virsh network, as well as MaaS PXE network are installer
specific, and not POD specific.
Therefore, these should be easily parametrized without the PDF,
using only installer inputs (e.g. env vars passed via Jenkins).

- add new <all-mcp-ocata-common.opnfv.runtime> reclass class;
- parametrize at runtime new reclass class based on global vars;
- factor out MaaS deploy address / config using new mechanism;
- parametrize at runtime virsh network definitions based on template;
- add new "maas.pxe_route" sls for configuring routing on cfg01;
- replace env vars with the new sls in "maas" state;

NOTE: baremetal parametrization will be handled later.

Change-Id: Ifd61143d818fb088b3f4395388ba769bbc49156e
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agosalt-master-init.sh: Use stable 2016.11 salt ver 65/41565/3
Alexandru Avadanii [Sun, 10 Sep 2017 18:43:16 +0000 (20:43 +0200)]
salt-master-init.sh: Use stable 2016.11 salt ver

The <salt-master-init.sh> script default to using stable 2016.3
version of Salt via BOOTSTRAP_SALTSTACK_OPTS.
However, since we manually add the 2016.11 repos beforehand, the
correct version (2016.11) ends up being installed.
This change merely drops one uselss repo from salt master apt sources.

While at it, use HTTPS for repo.saltstack.com DEB repository.

Since we already add the repo to apt sources via <user-data.sh>,
pass "-r" on all architectures, skipping repo (re)addition.

Change-Id: I7fbe0b646b2f2a8e952718a61ff8c180116f8f27
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agosalt master, maas: Move mcpcontrol to 10.20.0.0/24 85/41485/2
Alexandru Avadanii [Sun, 10 Sep 2017 20:04:58 +0000 (22:04 +0200)]
salt master, maas: Move mcpcontrol to 10.20.0.0/24

Use INSTALLER_IP Jenkins param instead of SALT_MASTER_IP, allowing
us to drop SALT_MASTER_IP completely from releng.

mcpcontrol IP changes:
- 192.168.10.100 becomes 10.20.0.2 (align with legacy Fuel master);
- 192.168.10.3 becomes 10.20.0.3 (baremetal MaaS address);

JIRA: FUEL-285

Change-Id: I6e2d44c3a8b43846196bd64191735214167a76ce
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoMerge changes from topic 'multiarch-image-defaults'
Alexandru Avadanii [Mon, 11 Sep 2017 17:08:54 +0000 (17:08 +0000)]
Merge changes from topic 'multiarch-image-defaults'

* changes:
  reclass: virtual: Factor out VM interface naming
  reclass: Multiarch support for arch specific param

7 years agoreclass: virtual: Factor out VM interface naming 73/41473/5
Alexandru Avadanii [Sun, 10 Sep 2017 00:37:11 +0000 (02:37 +0200)]
reclass: virtual: Factor out VM interface naming

Define two groups of VM interface naming:
- ens3..ens6 - used by infra VMs, virtual node VMs;
- ens2..ens3 - used by VCP VMs (spawned by salt.control);

Parametrize newly defined interface names throughout the cluster
models.

While at it, add AArch64 default values for above iface names.

NOTE: baremetal clusters will be parametrized later, after common
config is factored out into <baremetal-mcp-ocata-common>.

Change-Id: I89aba9aaf85b585cc510302eb76d7810fbf60679
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoreclass: Multiarch support for arch specific param 71/41471/6
Alexandru Avadanii [Sat, 9 Sep 2017 23:52:18 +0000 (01:52 +0200)]
reclass: Multiarch support for arch specific param

Introduce a simple mechanism that simulates an 'if-arch-then' cond
for reclass models:
- add new <all-mcp-ocata-common> class hierarchy;
- at runtime (via <salt.sh>) make 'all-mcp-ocata-common.arch' point
  to 'all-mcp-ocata-common.$(uname -i)' dynamically;
- inherit new 'arch' class in all cluster models;
- factor out current x86_64 default for "salt_control_xenial_image";
- add AArch64 default for param "salt_control_xenial_image";

Change-Id: I3b239b28d0fd1cc2ced8579e2e93b764eb71ffc3
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoREADME files: Convert from markdown to RST 87/41487/2
Alexandru Avadanii [Sun, 10 Sep 2017 23:54:16 +0000 (01:54 +0200)]
README files: Convert from markdown to RST

Change-Id: I176f583e8adb7ba717932de7c27283f696ded548
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoMerge "Add & fix licensing in README.rst files, align ext"
Alexandru Avadanii [Mon, 11 Sep 2017 12:07:05 +0000 (12:07 +0000)]
Merge "Add & fix licensing in README.rst files, align ext"

7 years agoMerge "os_cacert: Parametrize VIP used in path by cp.push"
Michael Polenchuk [Mon, 11 Sep 2017 08:27:21 +0000 (08:27 +0000)]
Merge "os_cacert: Parametrize VIP used in path by cp.push"

7 years agoMerge "scenario: Add AArch64 defaults"
Michael Polenchuk [Mon, 11 Sep 2017 08:11:32 +0000 (08:11 +0000)]
Merge "scenario: Add AArch64 defaults"

7 years agoMerge "reclass: virtual: Factor out common infra config"
Michael Polenchuk [Mon, 11 Sep 2017 08:11:03 +0000 (08:11 +0000)]
Merge "reclass: virtual: Factor out common infra config"

7 years agoMerge "log.sh: Collect /var/log from cluster nodes"
Michael Polenchuk [Mon, 11 Sep 2017 08:08:01 +0000 (08:08 +0000)]
Merge "log.sh: Collect /var/log from cluster nodes"

7 years agoAdd & fix licensing in README.rst files, align ext 69/41469/5
Alexandru Avadanii [Sat, 9 Sep 2017 23:11:23 +0000 (01:11 +0200)]
Add & fix licensing in README.rst files, align ext

Rename all variations of README files to README.rst.
Fix license headers according to OPNFV Contribution Guidelines [1].

Markdown syntax will be switched to rst in an ulterior change.

[1] https://wiki.opnfv.org/display/DEV/Contribution+Guidelines

Change-Id: I2c71fd62b38f218545507c79c39e07dbd35f7c88
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoos_cacert: Parametrize VIP used in path by cp.push 45/41445/2
Alexandru Avadanii [Fri, 8 Sep 2017 22:08:49 +0000 (00:08 +0200)]
os_cacert: Parametrize VIP used in path by cp.push

JIRA: FUEL-274

Change-Id: Ia77948ba3e99c47aa86fcca20c67d80e2e761208
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoscenario: Add AArch64 defaults 67/41467/2
Alexandru Avadanii [Sat, 9 Sep 2017 19:33:34 +0000 (21:33 +0200)]
scenario: Add AArch64 defaults

Move scenario defaults.yml out of virtual/baremetal dirs, unifying
them into a single, arch-specific defaults configuration file.

Add AArch64 equivalent config, and arch-qualify default filename.
For AArch64, bump VCPU number from 2 to 6.

Change-Id: If9b39850af96e4c46e868b1d532bd301f9fd9f26
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoreclass: virtual: Factor out common infra config 63/41463/2
Alexandru Avadanii [Sat, 9 Sep 2017 17:35:16 +0000 (19:35 +0200)]
reclass: virtual: Factor out common infra config

Change-Id: I669a81cf46a4ac988a1ea04c3b9d297ae67a0a62
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agolog.sh: Collect /var/log from cluster nodes 49/41449/3
Alexandru Avadanii [Sat, 9 Sep 2017 01:09:18 +0000 (03:09 +0200)]
log.sh: Collect /var/log from cluster nodes

Bring back <ci/deploy.sh> parameter `-L`, which is already passed by
releng deploy script.

Since we need to enable file_recv on salt master, do so by adding a
new class in <virtual-mcp-ocata-common/infra/config.yml>, which will
be inherited by all scenario reclass models.

JIRA: FUEL-288

Change-Id: I9b649315984fb8580b63883d0e06c1e1efd11057
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agobash scripts: Fix remaining shellcheck warn/errs 25/41425/1
Alexandru Avadanii [Fri, 8 Sep 2017 19:19:01 +0000 (21:19 +0200)]
bash scripts: Fix remaining shellcheck warn/errs

Fix/silence all shellcheck errors, except for scripts in
<prototypes/sfc_tacker>.

Change-Id: Idc317cdba0f69b78299f2d3665e72ffc19dd8af5
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoMerge "Move mcp.rsa to /var/lib/opnfv"
Alexandru Avadanii [Fri, 8 Sep 2017 17:34:50 +0000 (17:34 +0000)]
Merge "Move mcp.rsa to /var/lib/opnfv"

7 years agoMerge "lib.sh: Remove all storage on undefine"
Alexandru Avadanii [Fri, 8 Sep 2017 15:19:21 +0000 (15:19 +0000)]
Merge "lib.sh: Remove all storage on undefine"

7 years ago[ovs/dpdk] Mend dpdk settings 97/41397/1
Michael Polenchuk [Fri, 8 Sep 2017 11:26:17 +0000 (15:26 +0400)]
[ovs/dpdk] Mend dpdk settings

* add vcpus to virtual compute
* re-pin dpdk core & pmds
* switch to UCA repos
* disable apt-daily cron job

Change-Id: Ia23100b846d8954e3d5e8a264a6b8518402b2fa6
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agolib.sh: Remove all storage on undefine 39/41339/7
Alexandru Avadanii [Thu, 7 Sep 2017 19:55:16 +0000 (21:55 +0200)]
lib.sh: Remove all storage on undefine

While executing the deploy script via sudo will raise no issues with
re-using old storage volume files, non-root deploys fail to change
ownership of said files.

Properly clean after ourselves when destroying and undefining VMs.

JIRA: ARMBAND-311

Change-Id: I7fdd269dccbfd5ab5285d852ac7dacfc4dc5ccd7
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoMove mcp.rsa to /var/lib/opnfv 31/41331/1
Alexandru Avadanii [Thu, 7 Sep 2017 18:38:13 +0000 (20:38 +0200)]
Move mcp.rsa to /var/lib/opnfv

JIRA: FUEL-280

Change-Id: I1e07b0e1597b2a1e4a92e1274f89dda62cb81bb8
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoMerge "cleanup: Rename ODL-L3 to ODL, drop ODL-L2"
Alexandru Avadanii [Thu, 7 Sep 2017 17:04:01 +0000 (17:04 +0000)]
Merge "cleanup: Rename ODL-L3 to ODL, drop ODL-L2"

7 years agoMerge "Initialize mongodb cluster"
Alexandru Avadanii [Thu, 7 Sep 2017 01:06:55 +0000 (01:06 +0000)]
Merge "Initialize mongodb cluster"

7 years agoInitialize mongodb cluster 63/41163/1
Michael Polenchuk [Wed, 6 Sep 2017 08:41:07 +0000 (12:41 +0400)]
Initialize mongodb cluster

* wait for mongodb service ready state
* run rs.initiate() to start a replication set

Change-Id: Ia9d2357d2ce0e9ba92a6be3d8b6c068efaa10822
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoConfigure SubjectAltName for the proxy cert 79/41079/2
Michael Polenchuk [Tue, 5 Sep 2017 16:42:49 +0000 (20:42 +0400)]
Configure SubjectAltName for the proxy cert

In order to avoid SubjectAltName warnings,
bring it into proxy ssl certificate.

Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
Change-Id: I46fe9697469354bc028039cc1f030baae1ccd7fb

7 years agocleanup: Rename ODL-L3 to ODL, drop ODL-L2 91/41091/1
Alexandru Avadanii [Tue, 5 Sep 2017 18:33:32 +0000 (20:33 +0200)]
cleanup: Rename ODL-L3 to ODL, drop ODL-L2

JIRA: FUEL-279

Change-Id: Ia8bed5e09937a1ffd29a15d40f610d4b0c8f0a17
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agopatches: deepclean: Locate toplevel for submodules 81/41081/1
Alexandru Avadanii [Tue, 5 Sep 2017 16:51:27 +0000 (18:51 +0200)]
patches: deepclean: Locate toplevel for submodules

Change-Id: Ibcc4364a57d888773fcb466f603c2046e1a4a2e3
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoci/deploy.sh: Remove extra '-s' in image dir path 77/41077/1
Alexandru Avadanii [Tue, 5 Sep 2017 16:39:18 +0000 (18:39 +0200)]
ci/deploy.sh: Remove extra '-s' in image dir path

Change-Id: Iabadd8565b7fcac6d3361200f30310391daf6648
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years ago[baremetal] Enable ceilometer/aodh services 73/41073/3
Michael Polenchuk [Tue, 5 Sep 2017 13:35:51 +0000 (17:35 +0400)]
[baremetal] Enable ceilometer/aodh services

Change-Id: I34706afbdbcbdaace0b0ae6c2c2e8cb932812d4e
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoMerge "build, deploy: Remove obsolete Fuel@Openstack code"
Alexandru Avadanii [Tue, 5 Sep 2017 13:25:08 +0000 (13:25 +0000)]
Merge "build, deploy: Remove obsolete Fuel@Openstack code"

7 years agoMerge "ci/deploy.sh, lib.sh: Align SSH_KEY with Jenkins"
Michael Polenchuk [Tue, 5 Sep 2017 07:40:46 +0000 (07:40 +0000)]
Merge "ci/deploy.sh, lib.sh: Align SSH_KEY with Jenkins"

7 years agoMerge "salt.sh: Execute deepclean before importing patches"
Michael Polenchuk [Tue, 5 Sep 2017 07:04:09 +0000 (07:04 +0000)]
Merge "salt.sh: Execute deepclean before importing patches"

7 years agoci/deploy.sh, lib.sh: Align SSH_KEY with Jenkins 25/40725/7
Alexandru Avadanii [Thu, 31 Aug 2017 01:09:51 +0000 (03:09 +0200)]
ci/deploy.sh, lib.sh: Align SSH_KEY with Jenkins

Jenkins defines a build param also called SSH_KEY, which holds
the full path to our MCP private RSA key, as opposed to Fuel@OPNFV,
which uses the file basename as SSH_KEY.
Switch to using full path in SSH_KEY, while also moving the key
outside /tmp.

NOTE: When running `ci/deploy.sh` with sudo, key will land in
/root/opnfv/mcp.rsa unless SSH_KEY is set via env var.

While at it, bring back VM image storage dir param, allowing us
to drop one more reference to /tmp.

JIRA: FUEL-280

Change-Id: Id1cfa6dbe7b2e6f3915b22281da5957333718401
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agolib.sh: Limit envsubst to certain variables 23/41023/1
Alexandru Avadanii [Mon, 4 Sep 2017 21:18:31 +0000 (23:18 +0200)]
lib.sh: Limit envsubst to certain variables

This will prevent envsubst from expanding the SALT_REPO local
variable in user-data.template.

Change-Id: Idcc3ea827293ac0d3b4059776f90bbbcf807daec
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agopatches/scripts: Fix whitespace in context 19/41019/1
Alexandru Avadanii [Mon, 4 Sep 2017 20:52:10 +0000 (22:52 +0200)]
patches/scripts: Fix whitespace in context

git option '--ignore-whitespace' has issues, at least on certain
versions of git, like 2.7.4.
Work around it by adding the trailing whitespace we previously
removed in patch context lines.

Change-Id: Id192a87ec92c798fa808bb8ef38384160ee3faf5
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agosalt.sh: Execute deepclean before importing patches 13/41013/2
Junaid Ali [Mon, 4 Sep 2017 16:43:36 +0000 (12:43 -0400)]
salt.sh: Execute deepclean before importing patches

Deepcleaning can be useful when deploying from an existing local repo

Change-Id: I3908d6533c744da7cc863a250f4158c6c0e8e169
Signed-off-by: Junaid Ali <junaidali.yahya@gmail.com>
7 years agoMerge "salt.sh, user-data: Add Saltstack arm64 repo"
Alexandru Avadanii [Mon, 4 Sep 2017 16:41:43 +0000 (16:41 +0000)]
Merge "salt.sh, user-data: Add Saltstack arm64 repo"

7 years ago[baremetal] Enable cinder-volume service 95/40995/1
Michael Polenchuk [Mon, 4 Sep 2017 11:53:53 +0000 (15:53 +0400)]
[baremetal] Enable cinder-volume service

Change-Id: I60a5566de43ca58f3f172611c95546b1353f8406
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoLocate toplevel for git submodule [2] 73/40973/1
Michael Polenchuk [Mon, 4 Sep 2017 05:59:03 +0000 (09:59 +0400)]
Locate toplevel for git submodule [2]

Change-Id: I0c719ec4cfd3d0a526fd6913358cc80c5a599985
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agosubmodules: Disable remote tracking 49/40949/1
Alexandru Avadanii [Sun, 3 Sep 2017 22:59:42 +0000 (00:59 +0200)]
submodules: Disable remote tracking

Stop following remote master HEAD refs for git submodules.
This should fix recent deploy failures caused by upstream changes in
salt-formulas-scripts repo.

Change-Id: I32b422f2dd7d31d51c65f1cd0101111e9ed2fb5e
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agobuild, deploy: Remove obsolete Fuel@Openstack code 21/40721/2
Alexandru Avadanii [Thu, 31 Aug 2017 00:32:05 +0000 (02:32 +0200)]
build, deploy: Remove obsolete Fuel@Openstack code

JIRA: FUEL-278

Change-Id: I30c04c325de5ac97aee172386de43201988646c5
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years ago[baremetal] Tune dpdk/compute cpu pinning 37/40837/1
Michael Polenchuk [Fri, 1 Sep 2017 11:11:15 +0000 (15:11 +0400)]
[baremetal] Tune dpdk/compute cpu pinning

Change-Id: I733c6c9f1f5aa559084998aa9bc639079bda83a5
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agosalt.sh, user-data: Add Saltstack arm64 repo 97/40797/2
Alexandru Avadanii [Tue, 11 Jul 2017 16:57:57 +0000 (18:57 +0200)]
salt.sh, user-data: Add Saltstack arm64 repo

These changes will only be applied on AArch64, based on `uname -m`.

While at it, add arm64 suppport to salt-master-setup.sh.
Upstream commit [1] broke Salt bootstrap on AArch64, by
introducing an architecture condition that is too strict to allow
Debian package installation (even if we provide our own repo).

Add "arm64" to the list of supported architectures. This needs
to be done on the fly, as the bootstrap script is fetched using
`curl` from <salt-master-setup.sh>.

[1] https://github.com/saltstack/salt-bootstrap/commit/caa6d7d

Change-Id: Id706a74a52ffe2f8b8c9dd3b9f70c78f35b2f745
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoMerge "mcp/deploy/scripts: Move to git submodule"
Alexandru Avadanii [Thu, 31 Aug 2017 19:38:48 +0000 (19:38 +0000)]
Merge "mcp/deploy/scripts: Move to git submodule"

7 years ago[baremetal] Adjust vcp nodes memory size 55/40755/1
Michael Polenchuk [Thu, 31 Aug 2017 11:57:50 +0000 (15:57 +0400)]
[baremetal] Adjust vcp nodes memory size

Change-Id: I8937f4f676a48c852bece0680da0b559df7c2e7c
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agomcp/deploy/scripts: Move to git submodule 19/40719/1
Alexandru Avadanii [Thu, 31 Aug 2017 00:14:38 +0000 (02:14 +0200)]
mcp/deploy/scripts: Move to git submodule

Change-Id: I65d1f5680000011493bde17a249a87738ebfdd96
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoMerge "Fix ssl cert upload path"
Alexandru Avadanii [Wed, 30 Aug 2017 14:46:06 +0000 (14:46 +0000)]
Merge "Fix ssl cert upload path"

7 years agoUpdate salt init scripts source 89/40689/1
Michael Polenchuk [Wed, 30 Aug 2017 10:24:05 +0000 (14:24 +0400)]
Update salt init scripts source

Change-Id: I269e397b78d55794b1c49bf582cc0e663cbe9ca6
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoFix ssl cert upload path 81/40681/1
Michael Polenchuk [Wed, 30 Aug 2017 09:15:32 +0000 (13:15 +0400)]
Fix ssl cert upload path

JIRA: FUEL-274
Change-Id: I8e947009399a995474ed0088d56da04755d278df
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
7 years agoMerge "lib.sh: Reuse /tmp/mcp.rsa if present"
Michael Polenchuk [Wed, 30 Aug 2017 05:31:23 +0000 (05:31 +0000)]
Merge "lib.sh: Reuse /tmp/mcp.rsa if present"

7 years agostates: maas: Retry linux state if no response 31/40631/1
Alexandru Avadanii [Mon, 28 Aug 2017 23:21:30 +0000 (01:21 +0200)]
states: maas: Retry linux state if no response

JIRA: FUEL-283

Change-Id: Ie85af8c12163fac28cb8826aa8902a4ff3dec623
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agopatches: seedng: Fix arg order for salt-bootstrap 25/40625/1
Alexandru Avadanii [Tue, 29 Aug 2017 22:15:22 +0000 (00:15 +0200)]
patches: seedng: Fix arg order for salt-bootstrap

JIRA: FUEL-282

Change-Id: I8ba64024c884e2f805d4cda670333ac787fac25c
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agoreclass: virtual-mcp-ocata-ovs: Fix yaml typo 17/40617/1
Alexandru Avadanii [Tue, 29 Aug 2017 21:09:33 +0000 (23:09 +0200)]
reclass: virtual-mcp-ocata-ovs: Fix yaml typo

Change-Id: Icc283315bbf0df825e9836913deff821bad1123a
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
7 years agolib.sh: Reuse /tmp/mcp.rsa if present 11/40611/1
Alexandru Avadanii [Tue, 29 Aug 2017 00:35:37 +0000 (02:35 +0200)]
lib.sh: Reuse /tmp/mcp.rsa if present

Long-term, /tmp/mcp.rsa should be moved to a persistent location [1],
and made configurable via env var / other mechanisms.
This will allow us to:
- use an existing keypair (provided by end-user in expected path);
- login to previous deployment machines (e.g. to cleanup UEFI boot
  entries before destroying the cluster and rebuilding it);
- split deploy in re-entrant stages (salt master only, cluster nodes
  only; similar to old Fuel, where we could reuse old Fuel VM);

[1] https://jira.opnfv.org/browse/FUEL-280

Change-Id: I1e53321ed1cfc217ff95e809c867fa3370c479c9
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>