Age | Commit message (Collapse) | Author | Files | Lines |
|
Parse all reclass j2 templates, not only common + current scenario
(useful when adding new scenarios later).
JIRA: FUEL-310
Change-Id: I8e87af702f83c42cb8f766bf6f121449aa5f2c26
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
Change-Id: I879f565fe17539a54770fa22a6088c6493524e0c
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
|
|
Although we add default routes via public network and disable
DHCP client from setting new routes, until we reboot the prx* nodes
we still have the stale route originally set at initial boot.
Change-Id: Ib8e5fb67c7da00684e0ac21984fc4661d3820d83
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
Change-Id: I1df0228cb44bf9122aaf93dd25fc16a0d26a5240
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
While at it, rename apt repo in foundation node user-data template
from "salt" to "saltstack", to align with reclass model naming.
Change-Id: I5b216492349ae187b568884b1ab4046c52b1c6b2
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
Extend <lib.sh> and its invocation from <ci.deploy.sh> with
support for modifying foundation node VMs base image prior to
using it with:
- additional APT GPG keys;
- additional APT repos;
- packages to pre-install;
- packages to pre-remove;
- (non-configurable) cloud init datasource via NoCloud only,
so VCP VMs won't wait for metadata service;
While at it, re-use the resulting image as a base for another
round of pre-patching (same operations as above are supported)
to provide a base image for VCP VMs.
Add AArch64-specific configuration based on new mechanisms:
- pre-install linux-image-generic-hwe-16.04-edge (and headers)
for foundation node and VCP (common) image (also requires new
repo and its key);
- pre-install cloud-init for VCP image (it should already be
installed, but script needs non-empty config for VCP to create
the VCP image and transfer it over to Salt Master);
NOTE: cloud-init is required on VCP VMs for DHCP on 1st iface.
JIRA: FUEL-309
Change-Id: I7dcaf0ffd9c57009133c6d339496ec831ab14375
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
|
|
Occasionally, cinderng.volume_type_present errors with:
ClientException: Service Unavailable (HTTP 503)
Instead of retrying the whole state file, use `wait_for` macro
to retry only this high state up to 5 times.
Change-Id: Ib9ef017aca737e53c853007c13107d56d856c016
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
Upstream fixed the salt-formula-horizon in commit 95387ec, by
defining 8078 (and only that) port in Apache's ports.conf.
This fixes the port 80 overlap, so running the `apache` high state
after the `horizon` high state not only is unnecessary now, but
also would lead to new breakage, since `apache` state would
overwrite the ports.conf (removing 8078 and adding 80), i.e.
creating a new port conflict and breaking Horizon port completely.
This reverts commit eb4645206d6d74992fca3b8726ee2eebca97205f.
Conflicts:
mcp/config/states/openstack_ha
mcp/reclass/classes/cluster/baremetal-mcp-ocata-common/openstack_proxy.yml
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Change-Id: Iea8f0bd90ee8d12f399aad16247dda274d6a907a
|
|
Employ UCA repo on computes nodes for nosdn-nofeature-ha scenario as
well to prevent a regression (creation of ports failed for 1+n instances)
of neutron ovs agent from mcp/openstack repos.
Change-Id: Ie65ae122096c0d3a93c09d46191787a934bd7d4f
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
|
|
In order to complete broken database sync run
nova state on controller one more time.
Change-Id: I761f26667ebb531b848a62e096f3d79f588d9f24
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
NOTE: In order to undefine VCP VMs with NVRAM (e.g. AArch64 VMs
using AAVMF), an additional parameter should be passed to libvirt
by Salt virt core module (equivalent to `virsh undefine --nvram`).
While at it, pass CI_DEBUG, ERASE_ENV enviroment variables to
state execution, and stop force-applying patches.
Also refactor the rsync between foundation node and Salt master,
so the whole git repo is copied as </root/opnfv>, and <root/fuel>
becomes a link to it; useful for Armband, where 'fuel' is a git
submodule. Fix .git paths after rsync, so git submodules work as
expected in cfg01 repos.
JIRA: FUEL-307
Change-Id: Ic62f03e786581c019168c50ccc50107238021d7f
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
- prx: add route for public traffic to public interface
- prx: add route towards salt master through maas
- remove dashboard class from proxy node (already implements horizon)
- remove dashboard (and benchmark) class definitions (no longer used)
- (temporary) backport Pharos change for adapter template
JIRA: FUEL-305
Change-Id: Ia14a18ac0123c1134d8d99dc43da9a1f770001d0
Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com>
|
|
|
|
|
|
JIRA: FUEL-306
Change-Id: I648545890c1f7dc59176beac1a0593aed54079cb
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Signed-off-by: Delia Popescu <delia.popescu@enea.com>
|
|
Generate documentation automatically using `reclass-doc`.
nginx is already configured to serve said documentation on
proxy's public VIP on port 8090.
Change-Id: If2aef646a0ec44d5cc7e9d425e565e5c0aa581b3
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
JIRA: FUEL-301
Change-Id: Id6b2b423b8045c581fa5c02133cf91702d9915c9
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
Apache module will take care of ports.conf file to prevent
bind socket conflict between apache & nginx services.
Change-Id: Ia76ec356002e1db0dabd20d8f355a1b16fc07b30
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
Change-Id: Ic81507f3f7b3fec593b507e0c534434e8489b01b
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
JIRA: FUEL-301
Change-Id: I9de98fb961fd1d480b45a774de61ad6a93e9addf
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
Change-Id: Icc30d27951abb1e231c9269c6293782a39e08fb6
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
|
|
Since VMs are not affected by this limitation, only apply the fixup
to baremetal nodes.
JIRA: FUEL-299
Change-Id: Ib94c481627538d900295df03b8c8fdc7b61cd718
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
Change-Id: Ia896c3f9fcd96dd498eef6d1f83d46e29df0cd6b
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
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>
|
|
* neutron on computes (dpdk case: void state)
* mongodb server (incomplete initialization)
Change-Id: I3dd3266b5c2d1b155981f725e15742cd38ed899d
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
Change-Id: I95c284cbf374194694360bffbeaf6770db6111bf
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
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>
|
|
Change-Id: I7a21c30d49aecca948f45535fec164c2f643450e
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
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>
|
|
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>
|
|
Change-Id: Ib4aa3f2cb4fc7129d502b4332cd7fedd83a0e1fe
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
* 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>
|
|
|
|
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>
|
|
- 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>
|
|
Change-Id: If7cb8473f5c290d1d5f22fce5567f7b8da24fd9f
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
- 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>
|
|
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>
|
|
|