Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
(cherry picked from commit 4e2c736cce578d1073dab0e0960b524b1dcc663a)
|
|
|
|
|
|
Change-Id: I7eae35c2e040cf316af45fd420ba6611abb2fa4b
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
(cherry picked from commit a1a73087d8e5cb43d2ebcf313f7a784b20bc4a3e)
|
|
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>
(cherry picked from commit 94b3833e4b8c3de58cecd673091015a4c8f1640c)
|
|
JIRA: FUEL-296
Change-Id: Ide9f9333fe9b44ff6b78678064f8e67f05aabd42
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
(cherry picked from commit fa62907da62d0b8ae9e733a9729941065ceedf4d)
|
|
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>
(cherry picked from commit d058675b9a4274336ae3497914d6651f653ccde0)
|
|
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>
(cherry picked from commit 9cfa75272ba2fd9abab416db1f22df5989c9959e)
|
|
* neutron on computes (dpdk case: void state)
* mongodb server (incomplete initialization)
Change-Id: I3dd3266b5c2d1b155981f725e15742cd38ed899d
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
(cherry picked from commit 24d9cdd384635d8c1a037d6341d63a9c9be039b1)
|
|
|
|
Change-Id: I95c284cbf374194694360bffbeaf6770db6111bf
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
(cherry picked from commit 4b63bd0ea961d06723b277b874168c2aaddb96c5)
|
|
'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>
(cherry picked from commit 2776ab9d850e764a92c30c858befc48e474f6dd4)
|
|
|
|
|
|
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>
(cherry picked from commit 496c818b28b6d668428b3e8996675a7edd688f73)
|
|
Change-Id: I7a21c30d49aecca948f45535fec164c2f643450e
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
(cherry picked from commit 9cfa3c11bbd71ce4ec24dba9dbd9a2289b76a4a3)
|
|
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>
(cherry picked from commit 595119281c50edb86b987f5fdd6eac25e28147ae)
|
|
|
|
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>
(cherry picked from commit b9918f1f8df52c52cd2ab76eec3b540b37789e55)
|
|
Change-Id: Ib4aa3f2cb4fc7129d502b4332cd7fedd83a0e1fe
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
(cherry picked from commit 51f374b055999fbc121b624424c21ee45d061538)
|
|
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>
(cherry picked from commit c360b972649028d2613fc8561899c2c8b7f71832)
|
|
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>
(cherry picked from commit 68ff467c4c2d9d0f201e2912c97616402f8109a3)
|
|
JIRA: FUEL-284
Change-Id: I821a8e79e6a23a71eae0fc0f857c1d05b30cd188
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
(cherry picked from commit 5936f07b1e951f4f08c0bc20c97122289f544c9e)
|
|
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>
(cherry picked from commit 0224929b3a87d0e0ec011311c46872e6142497cf)
|
|
|
|
|
|
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>
(cherry picked from commit 92530f89c061b0070766e431f839feb368e2e4ac)
|
|
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>
(cherry picked from commit 64920b8bb1e95389146451598221f2c7eb97f5e3)
|
|
Change-Id: Ibb1e78563043298dffdb4b7e9091d3f582e189fc
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
(cherry picked from commit 882220ff185d7bcc15e6c5f75edaee454c933956)
|
|
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>
(cherry picked from commit 044f49fd195526d8c00967fb9a0b6b1ab0a36c14)
|
|
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>
(cherry picked from commit 23f9ef727310a8ef449372313785241df6557559)
|
|
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>
(cherry picked from commit 644e5fdfa2f49b988a5150e2a4eefc12daecd845)
|
|
While at it, add .yamllint file (copied from releng repo).
Change-Id: I39630c0043fe2fd601510969c401e6cc9efbf69a
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
(cherry picked from commit a75af3d4c30af050dd15c0f875142f6328874fe4)
|
|
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>
(cherry picked from commit 089585ad5370109d4c2a476b94b0017153d7713d)
|
|
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>
(cherry picked from commit ebd7067904b36ae32566da63e433365948a1f973)
|
|
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>
(cherry picked from commit bd0259e7bb5f045a1ba7958d79039848d062aad1)
|
|
Change-Id: I1e0e1ba291dd4d5af578d89274f3655ee784f64e
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
(cherry picked from commit c11eb920a3570ed22b252bbb8eecfb5231f5db1a)
|
|
-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>
(cherry picked from commit c8d0c5b687f5eec9db62171fdf53053f5ffeef28)
|
|
Change-Id: If117588f7c43306959d29032b1d5eeb3c751dc44
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
(cherry picked from commit 8401f25a520843d884abb84806873baca0452ec8)
|
|
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>
(cherry picked from commit db2144a7f6ed8586bbab39fdb5ea15b171388e85)
|
|
Change-Id: I94d40529261f7753ec47a0c6a8c67ecc0fb15951
Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com>
(cherry picked from commit 5ab45d25c8fd3e5528c411e09b105699c745457f)
|
|
* 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>
(cherry picked from commit fca7d22742df82fc6e502b17ad45ebc11c0ba89b)
|
|
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>
(cherry picked from commit 2d95dee51177e66f5370b85115c2999925b13657)
|
|
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>
(cherry picked from commit 9ac845bdfb5c4ec7fd8c0b0ba1bc8fec867be5aa)
|
|
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>
(cherry picked from commit 45b22fab76f84cdbf71a6693dc42f24edaa4334e)
|
|
- 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>
(cherry picked from commit 8ec927497b7ee0fd3b7346e957878173b080ef6a)
|
|
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>
(cherry picked from commit a05f8d2682f2449d7d10e52038c56a0af6357def)
|
|
Change-Id: I8dba3676adc8cc49731d91db7cc028a9c5b1627d
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
(cherry picked from commit 952b5cc60febe14df428f92280448327572d5c24)
|
|
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>
(cherry picked from commit f2b1d6cfe31a451b0608b9a2aadead2dcf4cfabb)
|
|
Change-Id: If7cb8473f5c290d1d5f22fce5567f7b8da24fd9f
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
(cherry picked from commit 0c00f813d709fd1b65e5dd52abcf16fd81b3d0e1)
|