fuel.git
6 years agolib.sh: rm Ubuntu boot entry on EFI systems 69/46369/1
Alexandru Avadanii [Thu, 24 Aug 2017 02:09:59 +0000 (04:09 +0200)]
lib.sh: rm Ubuntu boot entry on EFI systems

On EFI-enabled systems, grub-install from grub-efi-* package
installs a boot entry named "ubuntu".

MaaS relies on IPMI to set boot order to PXE first; however
on systems with buggy firmware or without full IPMI support,
that fails, leading to booting Ubuntu from hard disk instead.

Work around this by clearing any previous Ubuntu boot entry
from board flash, before starting a new baremetal deploy.

NOTE: This only runs against nodes that are online from a
previous deploy.

Closes: ARMBAND-47

Change-Id: I1c4ece09e42845ce2a1b7119ec69e46e5ca12376
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agopatches: pharos: Dynamic PXE interface index 37/46337/1
Alexandru Avadanii [Fri, 27 Oct 2017 19:04:10 +0000 (21:04 +0200)]
patches: pharos: Dynamic PXE interface index

Change-Id: I7eae35c2e040cf316af45fd420ba6611abb2fa4b
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agopatches: pharos: IPMI: Trim netmask from IP 27/46327/1
Alexandru Avadanii [Fri, 27 Oct 2017 17:21:40 +0000 (19:21 +0200)]
patches: pharos: IPMI: Trim netmask from IP

ericsson-pod1 uses 'IP/netmask' format for IPMI IPs in its PDF, which
is part of PDF spec, so update our installer adapter template
accordingly.

This change will be reverted once the patch is merged upstream in
Pharos OPNFV git repo.

Change-Id: Ie97177444f0445501fc0a7b131569ff1af6fee3c
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoMerge "ci/deploy.sh: Add PDF parsing dependencies"
Alexandru Avadanii [Fri, 27 Oct 2017 10:19:04 +0000 (10:19 +0000)]
Merge "ci/deploy.sh: Add PDF parsing dependencies"

6 years agoMerge "lib.sh: Fix compatibility with bash 4.2"
Alexandru Avadanii [Fri, 27 Oct 2017 10:06:33 +0000 (10:06 +0000)]
Merge "lib.sh: Fix compatibility with bash 4.2"

6 years agoci/deploy.sh: Add PDF parsing dependencies 63/46263/4
Alexandru Avadanii [Thu, 26 Oct 2017 16:53:53 +0000 (18:53 +0200)]
ci/deploy.sh: Add PDF parsing dependencies

The following packages are required for PDF parsing:
- python
- python-ipaddress
- python-jinja2

Note that `python-ipaddress` is not available on older Ubuntu
distributions (e.g. Trusty), in which case `pip` should be used to
install it. An alternative would be to use python3 packages.

Update the installation instructions to specify minimum expected
requirements on the jump server.

JIRA: FUEL-292

Change-Id: I19fdcc163dcfdee45ac6fa3f5e09a28638d6035c
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoMerge "AArch64: Switch jumpserver VMs to virtio video"
Alexandru Avadanii [Fri, 27 Oct 2017 09:26:38 +0000 (09:26 +0000)]
Merge "AArch64: Switch jumpserver VMs to virtio video"

6 years agoMerge "Add missing installation dependency"
Michael Polenchuk [Fri, 27 Oct 2017 06:37:32 +0000 (06:37 +0000)]
Merge "Add missing installation dependency"

6 years agoMerge "docs: Add more info about virtual deployment"
Michael Polenchuk [Fri, 27 Oct 2017 06:36:46 +0000 (06:36 +0000)]
Merge "docs: Add more info about virtual deployment"

6 years agolib.sh: Fix compatibility with bash 4.2 75/46275/1
Alexandru Avadanii [Thu, 26 Oct 2017 18:54:41 +0000 (20:54 +0200)]
lib.sh: Fix compatibility with bash 4.2

JIRA: FUEL-296

Change-Id: Ide9f9333fe9b44ff6b78678064f8e67f05aabd42
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoAArch64: Switch jumpserver VMs to virtio video 65/46265/1
Alexandru Avadanii [Thu, 26 Oct 2017 17:22:19 +0000 (19:22 +0200)]
AArch64: Switch jumpserver VMs to virtio video

Drop vgabios dependency by switching video from VGA to virtio for
all VMs spawned on the jumpserver.

NOTE: This requires virtualization packages on the jumpserver to be
up to date (e.g. libvirt, QEMU).

JIRA: ARMBAND-306

Change-Id: I73913e1ae8584f4e73b92994f78f7ec363cba3ec
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoAdd missing installation dependency 43/46243/2
Taseer Ahmed [Thu, 26 Oct 2017 07:25:25 +0000 (12:25 +0500)]
Add missing installation dependency

- uuidgen is required for installation
- Add installation package for both Debian and
  RHEL based linux distribitions

Change-Id: I9c9bf04e64dc6be1b4e8fb92aea531eccbea33a5
Signed-off-by: Taseer Ahmed <taseer94@gmail.com>
6 years agodocs: Add more info about virtual deployment 41/46241/4
Taseer Ahmed [Thu, 26 Oct 2017 07:19:34 +0000 (12:19 +0500)]
docs: Add more info about virtual deployment

Change-Id: I82f639f380092ea6800ed1e7c86a415b7979ec44
Signed-off-by: Taseer Ahmed <taseer94@gmail.com>
6 years agoRun aodh state one by one 45/46245/1
Michael Polenchuk [Thu, 26 Oct 2017 08:46:58 +0000 (12:46 +0400)]
Run aodh state one by one

Apply aodh state in consecutive order to avoid
a race condition with database synchronization.

Change-Id: I4684fbeaaba2c9780084e0a64fe6453bccfb67e0
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
6 years agofix for documentation: correct git checkout tag is opnfv-5.0.2 79/46179/1
Mika Rautakumpu [Tue, 24 Oct 2017 15:39:50 +0000 (18:39 +0300)]
fix for documentation: correct git checkout tag is opnfv-5.0.2

Change-Id: I2c4192d4dc299d167ba6b1b9db91c6d73c87c417
Signed-off-by: Mika Rautakumpu <mika.rautakumpu@nokia.com>
6 years agoMinor updates to documentation 29/46129/2
Cristina Pauna [Mon, 23 Oct 2017 15:26:42 +0000 (18:26 +0300)]
Minor updates to documentation

Change-Id: I35b8069a0239858dad3b446f683d64140964fb42
Signed-off-by: Cristina Pauna <cristina.pauna@enea.com>
6 years agoCatch expected failures 97/46097/1
Michael Polenchuk [Sat, 21 Oct 2017 17:27:18 +0000 (21:27 +0400)]
Catch expected failures

* neutron on computes (dpdk case: void state)
* mongodb server (incomplete initialization)

Change-Id: I3dd3266b5c2d1b155981f725e15742cd38ed899d
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
6 years ago[vcp] Increase timeout till VCP VMs online 01/45901/1
Alexandru Avadanii [Thu, 19 Oct 2017 22:32:49 +0000 (00:32 +0200)]
[vcp] Increase timeout till VCP VMs online

Change-Id: I95c284cbf374194694360bffbeaf6770db6111bf
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agolib.sh: Fix locals override in nested invocations 93/45893/1
Alexandru Avadanii [Thu, 19 Oct 2017 21:58:05 +0000 (23:58 +0200)]
lib.sh: Fix locals override in nested invocations

'wait_for' bash function is nested in another 'wait_for' call in some
places, which leads to inner calls interfering with outer calls by
overriding the locally scoped variables, including the 'attempt'
internal counter. In some cases, the outer 'wait_for' would exit
after a single attempt.

Fix that by running all contents of `wait_for` inside a subshell,
which inherits outer calls variables, but does not override them
when the inner call is finished.

Change-Id: I450eda3d023af2380c61ee930071fbfc393a5645
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years ago[virtual] Rise memory for ovs/dpdk scenario 47/45847/1
Michael Polenchuk [Thu, 19 Oct 2017 16:13:11 +0000 (20:13 +0400)]
[virtual] Rise memory for ovs/dpdk scenario

Let's add more hugepages/memory to the compute nodes since
snaps_smoke required 2Gb flavor for tests.

Change-Id: If52f30d53a6469abeca67aaf2bdee551542d1653
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
6 years ago[baremetal] Remove infinite loops from node checks 27/45827/1
Alexandru Avadanii [Thu, 19 Oct 2017 14:46:28 +0000 (16:46 +0200)]
[baremetal] Remove infinite loops from node checks

Change-Id: I7a21c30d49aecca948f45535fec164c2f643450e
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoUpdate the reference for scenarios 01/45801/1
Cristina Pauna [Thu, 19 Oct 2017 12:19:56 +0000 (15:19 +0300)]
Update the reference for scenarios

Modified the reference link for the scenarios as it colides with
another installer. To be used with https://gerrit.opnfv.org/gerrit/#/c/45795

Change-Id: I7b55cfdb877715ec4fa0292adc11e36b7cf4ae53
Signed-off-by: Cristina Pauna <cristina.pauna@enea.com>
6 years ago[baremetal] cmp: run linux.network before reboot 17/45717/1
Alexandru Avadanii [Thu, 19 Oct 2017 03:34:28 +0000 (05:34 +0200)]
[baremetal] cmp: run linux.network before reboot

The recent addition of `linux.system`, combined with `system.reboot`
for the baremetal compute nodes leaves compute nodes unconfigured
after reboot.
Run `system.network` too, but expect a failure (only for DPDK, which
requires hugepages to be already active, hence a prior reboot).

Fixes: 64920b8

Change-Id: I8c73b24ae15e1f87dee64ae2aba7af86db1e942f
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years ago[baremetal] maas state: Wait for all nodes online 93/45693/1
Alexandru Avadanii [Thu, 19 Oct 2017 01:14:14 +0000 (03:14 +0200)]
[baremetal] maas state: Wait for all nodes online

After MaaS reports baremetal provisioning finished successfully,
check that all nodes are online before attempting a `sync_all`.

Change-Id: I6ba4b3e4ba5b5258ace4da8c39e0fc77354885e3
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years ago[baremetal] maas state: Retry sync_all on failure 37/45637/1
Alexandru Avadanii [Wed, 18 Oct 2017 22:57:22 +0000 (00:57 +0200)]
[baremetal] maas state: Retry sync_all on failure

Change-Id: Ib4aa3f2cb4fc7129d502b4332cd7fedd83a0e1fe
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoMerge "[baremetal] PDF-based network config"
Alexandru Avadanii [Wed, 18 Oct 2017 22:30:18 +0000 (22:30 +0000)]
Merge "[baremetal] PDF-based network config"

6 years agoHorizon: service: Default to v2 API 25/45625/3
Alexandru Avadanii [Wed, 18 Oct 2017 21:19:50 +0000 (23:19 +0200)]
Horizon: service: Default to v2 API

Horizon service definition hardcodes the API version to v3, and
also overrides the value in our reclass model during interpolation.
Adjust the default to '2'.

While at it, move 'reclass' patching later in `salt.sh`, after
the salt formula packages are installed.

JIRA: FUEL-284

Change-Id: I6f63b4d00ae85c82b076b3efef857e7cc4f3fd35
Signed-off-by: Ting Wu <ting.wu@enea.com>
Signed-off-by: Junaid Ali <junaidali.yahya@gmail.com>
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years ago[baremetal] PDF-based network config 27/45427/5
Alexandru Avadanii [Tue, 17 Oct 2017 16:12:25 +0000 (18:12 +0200)]
[baremetal] PDF-based network config

This change extends current PDF/IDF support with:
- dynamic interface / vlan definition;
- dynamic interface and/or bridge allocation of installer networks on
  top of interfaces (physical or vlans);

This allows us to drop hardcoded interface names and vlan / bridge
configuration in favor of a runtime determined model based on PDF/IDF.

For now, we duplicate common jinja variable definitions in each
template, but this will later be moved to a common include file.

JIRA: FUEL-275

Change-Id: Ia80a66dbdf898b0bd0a4fb99d069ce9ebe33fa65
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoMerge "[virtual] Horizon: Use v2 API instead of v3"
Alexandru Avadanii [Wed, 18 Oct 2017 16:36:29 +0000 (16:36 +0000)]
Merge "[virtual] Horizon: Use v2 API instead of v3"

6 years agoAdd documentation for scenarios 07/45507/5
Cristina Pauna [Wed, 18 Oct 2017 11:07:20 +0000 (14:07 +0300)]
Add documentation for scenarios

Added documents for feature scenarios supported by fuel.
The nofeature scenarions don't require documentation.

Change-Id: I574e42b60125b4a59c8d921fa45e4c4fbf09137f
Signed-off-by: Cristina Pauna <cristina.pauna@enea.com>
6 years ago[virtual] Horizon: Use v2 API instead of v3 41/45541/1
Alexandru Avadanii [Wed, 18 Oct 2017 13:50:42 +0000 (15:50 +0200)]
[virtual] Horizon: Use v2 API instead of v3

JIRA: FUEL-284

Change-Id: I821a8e79e6a23a71eae0fc0f857c1d05b30cd188
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years ago[baremetal] reclass: Fix class order for common 87/45387/4
Alexandru Avadanii [Tue, 17 Oct 2017 19:39:20 +0000 (21:39 +0200)]
[baremetal] reclass: Fix class order for common

Inheriting classes in the wrong order led to params being silently
overriden by defaults in the system reclass classes, leaving
some mismatched values between the controller nova config and the
compute conunterpart (e.g. metadata_password had different values).

Always inherit the common class first, so scenario-specific config
is applied on top.

NOTE: {dhcp,single}_nic are not used for mas|kvm|cmp nodes, but they
are referenced in inherited classes, so keep them for now.

Change-Id: I6cb90d5c832ffc8ab731bd9e3cd38ede858dba5c
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
6 years agoMerge "[baremetal] Fix DPDK by running linux.system first"
Alexandru Avadanii [Mon, 16 Oct 2017 23:47:50 +0000 (23:47 +0000)]
Merge "[baremetal] Fix DPDK by running linux.system first"

6 years agoMerge "salt.sh: DEBIAN_FRONTEND=noninteractive"
Alexandru Avadanii [Mon, 16 Oct 2017 23:10:00 +0000 (23:10 +0000)]
Merge "salt.sh: DEBIAN_FRONTEND=noninteractive"

6 years ago[baremetal] Fix DPDK by running linux.system first 61/45261/1
Alexandru Avadanii [Mon, 16 Oct 2017 19:53:47 +0000 (21:53 +0200)]
[baremetal] Fix DPDK by running linux.system first

DPDK scenario requires hugepages to be set up and enabled before
configuring OVS ports, so apply `linux.system` on compute nodes
and reboot them before attempting to run `linux.network` state.

Change-Id: I2b685361b07727a4740a3676c5f219a6443d1cf2
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoMerge "[ovs/dpdk] Return true on linux.network state"
Alexandru Avadanii [Mon, 16 Oct 2017 13:46:54 +0000 (13:46 +0000)]
Merge "[ovs/dpdk] Return true on linux.network state"

6 years agoReturn back glusterfs client state 11/45211/1
Michael Polenchuk [Mon, 16 Oct 2017 11:45:54 +0000 (15:45 +0400)]
Return back glusterfs client state

In order to set properly keystone fernet keys, apply glusterfs client
state before second keystone server state. Also leave out user/group
settings for glusterfs volume of nova instances as it will be set later
by nova compute packages themselves.

Change-Id: I069e37c67f08c51ed29f45cf6f92d4a00a1ac97b
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
6 years ago[ovs/dpdk] Return true on linux.network state 03/45203/2
Michael Polenchuk [Mon, 16 Oct 2017 10:24:13 +0000 (14:24 +0400)]
[ovs/dpdk] Return true on linux.network state

linux.network state is expected to be down until node reboot
to activate required hugepages therefore return true in any case.

Change-Id: I61deac12b9ac212c5f79cdcce30cda8e5d24413b
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
6 years agosalt.sh: DEBIAN_FRONTEND=noninteractive 53/45153/1
Alexandru Avadanii [Sun, 15 Oct 2017 22:19:57 +0000 (00:19 +0200)]
salt.sh: DEBIAN_FRONTEND=noninteractive

Change-Id: Ibb1e78563043298dffdb4b7e9091d3f582e189fc
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agostates: Break on error, retry states up to 5 times 35/45135/3
Alexandru Avadanii [Sat, 14 Oct 2017 20:47:45 +0000 (22:47 +0200)]
states: Break on error, retry states up to 5 times

While applying scenario states, break on error, and retry failed
state up to 5 times. Apply the same behavior for `salt.sh`.

Add new deploy parameter, '-D', backed up by 'CI_DEBUG' env var,
which gates deploy sh scripts logging (set -x).
Also extend '-f' deploy parameter, allowing it to be specified
more than once; the first occurence will skip infra VM creation,
but still sync reclass & other config from local repo, while a
second occurence will also disable config sync.

To prevent glusterfs client state from failing due to non-existent
nova user/group, move it after nova:compute's nova state is applied.

Change-Id: I234e126e16be0e133d878957bd88fed946955de8
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoAdd license headers where missing 31/45131/1
Alexandru Avadanii [Sat, 14 Oct 2017 17:42:41 +0000 (19:42 +0200)]
Add license headers where missing

While at it, compact 'set' into bash shebang where possible and
add `make patches-copyright` target to simplify adding patch
license headers.

Change-Id: I0c841de72e5709e5eef915a52c5ec4a7fc0f7c37
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoreclass: baremetal: Factor out common code 57/44857/2
Alexandru Avadanii [Thu, 12 Oct 2017 00:51:17 +0000 (02:51 +0200)]
reclass: baremetal: Factor out common code

While at it, add .yamllint file (copied from releng repo).

Change-Id: I39630c0043fe2fd601510969c401e6cc9efbf69a
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoDrop infinite loops in favor of finite wait_for 11/45111/2
Alexandru Avadanii [Sat, 14 Oct 2017 17:18:51 +0000 (19:18 +0200)]
Drop infinite loops in favor of finite wait_for

While at it, fix some shellcheck warnings, and s/fgrep/grep -F/g.

Change-Id: I093b7b4c196731b1ecc0c27a4111955b2e412762
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoMerge "states: Split virtual_control_plane from maas"
Alexandru Avadanii [Sat, 14 Oct 2017 01:14:42 +0000 (01:14 +0000)]
Merge "states: Split virtual_control_plane from maas"

6 years agostates: Split virtual_control_plane from maas 41/41441/4
Alexandru Avadanii [Fri, 8 Sep 2017 21:03:56 +0000 (23:03 +0200)]
states: Split virtual_control_plane from maas

We should eventually also support baremetal deploys without a
virtualized control plane (VCP), so decouple MaaS provisioning
from VCP provisioning.

While at it, move "wait_for" bash function from maas state to
common library file, lib.sh.

Change-Id: I32c33135655cb6aceae901a5f92b51265a8c84b4
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agopatch.sh: Exit on patch apply failure 77/43077/3
Alexandru Avadanii [Mon, 25 Sep 2017 23:16:54 +0000 (01:16 +0200)]
patch.sh: Exit on patch apply failure

Patches that fail to apply are silently skipped. Since retrying is
not possible, deploy moves on, making the problem hard to observe.

Change-Id: I3fe01cef6b245de53767a660b9b4fdfae0d5d0ff
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoci/deploy.sh: Add installation succesful message 39/45039/1
Alexandru Avadanii [Fri, 13 Oct 2017 17:21:26 +0000 (19:21 +0200)]
ci/deploy.sh: Add installation succesful message

Change-Id: Id366854c4ccb3b835f4a54ddea924a3a2cc30c7d
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoMerge "docs: Update release documentation"
Alexandru Avadanii [Thu, 12 Oct 2017 16:40:23 +0000 (16:40 +0000)]
Merge "docs: Update release documentation"

6 years agoMerge "docs: Update installation instructions"
Alexandru Avadanii [Thu, 12 Oct 2017 16:40:02 +0000 (16:40 +0000)]
Merge "docs: Update installation instructions"

6 years agodocs: Update release documentation 75/43875/3
Cristina Pauna [Mon, 2 Oct 2017 14:17:45 +0000 (17:17 +0300)]
docs: Update release documentation

JIRA: FUEL-276

Change-Id: I09799b2dde3c992d229864757e655c108d33608a
Signed-off-by: Cristina Pauna <cristina.pauna@enea.com>
6 years agodocs: Update installation instructions 95/43795/7
Cristina Pauna [Wed, 27 Sep 2017 13:54:47 +0000 (16:54 +0300)]
docs: Update installation instructions

This documentation contains the updated procedure on how to use
Fuel to deploy openstack.

JIRA: FUEL-276

Change-Id: I38dc9c57ea386a628cd363f5bcef3818739b9122
Signed-off-by: Cristina Pauna <cristina.pauna@enea.com>
6 years agoreclass: Fix all remaining yamllint warning 29/44829/1
Alexandru Avadanii [Wed, 11 Oct 2017 18:04:10 +0000 (20:04 +0200)]
reclass: Fix all remaining yamllint warning

Change-Id: I1e0e1ba291dd4d5af578d89274f3655ee784f64e
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoFix parametrized nic name variables 63/44563/6
Guillermo Herrero [Mon, 9 Oct 2017 11:56:08 +0000 (13:56 +0200)]
Fix parametrized nic name variables

-Fix interface order for reclass config node
-Interface types regruped on 3 sets for each cpu arch
  -Foundation VM interface names
  -VCP VM interface names
  -Baremetal node interface names

Change-Id: I1ae522d775ee538b35b0f043914c80c3993232fc
Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com>
6 years agoMerge "ci/deploy.sh: Drop unsupported options"
Alexandru Avadanii [Tue, 10 Oct 2017 23:10:39 +0000 (23:10 +0000)]
Merge "ci/deploy.sh: Drop unsupported options"

6 years agoyamllint: Fix recently introduced errors 07/44707/1
Alexandru Avadanii [Tue, 10 Oct 2017 17:11:34 +0000 (19:11 +0200)]
yamllint: Fix recently introduced errors

Change-Id: If117588f7c43306959d29032b1d5eeb3c751dc44
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoci/deploy.sh: Drop unsupported options 27/44527/1
Alexandru Avadanii [Sun, 8 Oct 2017 15:13:48 +0000 (17:13 +0200)]
ci/deploy.sh: Drop unsupported options

Drop support for unsupported arguments:
- timeout;
- iso URI;

While at it, disable shell debugging during PDF parsing to prevent
sensitive information leaking via debug logs.

Change-Id: I6b40f3e3749a3e162326728e670a176c8fa3c4bb
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoreclass: Revert virt.nic to hardcoded eth{0,1} 17/44517/1
Alexandru Avadanii [Sun, 8 Oct 2017 12:26:24 +0000 (14:26 +0200)]
reclass: Revert virt.nic to hardcoded eth{0,1}

Salt's virtualization model for virt:nic:default does not use real
interface names that are present on the node, but instead it defaults
to using "ethX" notation, that name being only a convention inside
Salt internals.

Moreover, the 'salt.control.virt' reclass class (located in
/srv/salt/reclass/classes/system/salt/control) already provides a
defalt maping between "eth{0,1}" and "br{0,1}". Using anything
different than "eth{0,1}" will lead to 2 extra (broken) mappings.

Reverting the changes in "virt:nic" reclass fixes both the python
exception recently introduced, as well as the broken defaults.

Change-Id: I5c90e3d2bc181c1ad3d87af64440439e6a41fb28
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoMerge "Parametrized network config: nic device names"
Alexandru Avadanii [Sat, 7 Oct 2017 16:51:16 +0000 (16:51 +0000)]
Merge "Parametrized network config: nic device names"

6 years agoUpdate opendaylight version to nitrogen 13/44413/3
Michael Polenchuk [Fri, 6 Oct 2017 08:09:36 +0000 (12:09 +0400)]
Update opendaylight version to nitrogen

* use pseudo agentdb port binding controller instead of
  the deprecated network topology one
* disable superfluous l2population mechanism driver
* tidy up the duplicated haproxy neutron listen opts
* straighten karaf features list
* update jetty config

Change-Id: Ifacf8de11eb56ab72df13a312151a510b280dea2
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
6 years agoParametrized network config: nic device names 29/44029/7
Guillermo Herrero [Tue, 3 Oct 2017 08:30:47 +0000 (10:30 +0200)]
Parametrized network config: nic device names

Change-Id: I94d40529261f7753ec47a0c6a8c67ecc0fb15951
Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com>
6 years ago[virtual] Extend cinder volume size 45/44445/1
Michael Polenchuk [Fri, 6 Oct 2017 09:15:48 +0000 (13:15 +0400)]
[virtual] Extend cinder volume size

Rally test of NovaServers.boot_server_attach_created_volume_and_live_migrate
requires 10Gb volume to function, so extend volume group size in order to
avoid insufficient free space error.

Change-Id: I317935d2bf736db360061e24f299c9b885154a9e
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
6 years agolog.sh: Fix sourcing of globals.sh 73/44373/1
Alexandru Avadanii [Thu, 5 Oct 2017 15:17:28 +0000 (17:17 +0200)]
log.sh: Fix sourcing of globals.sh

Fix sourcing of globals.sh from log.sh when running with a CWD
different from scripts dir.

Change-Id: I680531022d30b57f650a612493f40fdb3e073dc2
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 years agoMerge "ci/deploy.sh: Move global vars to separate file"
Alexandru Avadanii [Wed, 4 Oct 2017 20:28:42 +0000 (20:28 +0000)]
Merge "ci/deploy.sh: Move global vars to separate file"

6 years agoMerge "Identify jump host bridges based on IDF / PDF nets"
Alexandru Avadanii [Wed, 4 Oct 2017 20:27:47 +0000 (20:27 +0000)]
Merge "Identify jump host bridges based on IDF / PDF nets"

6 years ago[ovs/dpdk] Add missing rootwrap sudoers policy 91/44191/1
Michael Polenchuk [Wed, 4 Oct 2017 08:38:58 +0000 (12:38 +0400)]
[ovs/dpdk] Add missing rootwrap sudoers policy

Append required sudoers rule since uca package version
of neutron has no policy for neutron-rootwrap-daemon.

Change-Id: Id8ea5b1b6aadb9eca879d72ce4d158a7bc01060e
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
6 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>
6 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>
6 years agoApply neutron formula patch after formula update 39/44039/1
Michael Polenchuk [Tue, 3 Oct 2017 09:41:37 +0000 (13:41 +0400)]
Apply neutron formula patch after formula update

Change-Id: I8dba3676adc8cc49731d91db7cc028a9c5b1627d
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
6 years agosalt.sh: Stick to older salt-formula-neutron 81/43981/1
Alexandru Avadanii [Mon, 2 Oct 2017 22:59:51 +0000 (00:59 +0200)]
salt.sh: Stick to older salt-formula-neutron

Recent changes to salt-formula-neutron, more precisely [1], broke the
compatibility with our current reclass model [2], which was not
updated to reflect the formula change.

Instead of locally patching the reclass model, install the latest
compatible version of the Neutron formula:
- 2016.12.1+201709251458.f0607d9-1xenial1;

[1] https://github.com/salt-formulas/salt-formula-neutron/commit/
    79ffa26858d682f404984175dc1ab93863a149ad
[2] https://github.com/Mirantis/reclass-system-salt-model

Change-Id: Ia1bc9de9a1543f7888688be76ff3513e6b4f062b
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
6 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>
6 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"

6 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>
6 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>
6 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>
6 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>
6 years agoMerge "PDF parsing support"
Alexandru Avadanii [Wed, 27 Sep 2017 19:18:00 +0000 (19:18 +0000)]
Merge "PDF parsing support"

6 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"

6 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>
6 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>
6 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>
6 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"

6 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>
6 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>
6 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>
6 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"

6 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"

6 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>
6 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>
6 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>
6 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"

6 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>
6 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>
6 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>
6 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>
6 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>
6 years agoMerge "Adjust memory allocation size"
Alexandru Avadanii [Fri, 22 Sep 2017 15:36:01 +0000 (15:36 +0000)]
Merge "Adjust memory allocation size"

6 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>
6 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>
6 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>
6 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>