1708 Commits

Author SHA1 Message Date
Mark Goddard
f9de6a025d Disable ironic in the overcloud by default
Ironic is now disabled by default in the overcloud. This brings Kayobe's
default set of services into line with Kolla Ansible. For environments
using Ironic in the overcloud, set kolla_enable_ironic to true in
kolla.yml.

Story: 2008207
Task: 40991

Change-Id: I33eb4fa534847e199a599350b525d4762a2beaac
2020-10-01 16:28:30 +02:00
Zuul
cc9a87b12b Merge "CI: Add a CentOS 8 overcloud job with TLS enabled" 2020-10-01 13:55:22 +00:00
Mark Goddard
081222753c CI: Add a CentOS 8 overcloud job with TLS enabled
Change-Id: I5fc49fb734d0fe94f5f75c66eb4c1a935774ef30
2020-10-01 09:49:21 +00:00
Mark Goddard
b3a61a114f Revert "CI: workaround overcloud upgrade issue with ironic"
This reverts commit bb9a595e5ea16b5ad6500fc57cbee3f1d4035ab1.

Change-Id: Icd7b0f3b02bf3f22468daa8893c043ac9f3be4d6
2020-10-01 07:52:47 +00:00
Mark Goddard
bb9a595e5e CI: workaround overcloud upgrade issue with ironic
Ironic has an issue where nodes will be switched to use the direct
deploy interface during upgrade, if it is enabled. This should be fixed
via https://review.opendev.org/755295, after which this patch should be
reverted.

Change-Id: I55af5d979bdbee9dd963845204c2f082fa7b27d7
2020-09-30 17:19:34 +01:00
Zuul
7c25fec6ca Merge "Remove unneeded doc requirements in molecule tox env" 2020-09-24 11:23:42 +00:00
Zuul
3a8b560d63 Merge "Add missing barbican.conf support" 2020-09-24 10:28:52 +00:00
Pierre Riteau
502d3858bc Remove unneeded doc requirements in molecule tox env
Change-Id: Ie68ba316327437b4503f4a0aa48a58e89d403790
2020-09-24 12:13:13 +02:00
Zuul
ba2df0e1a8 Merge "Performance: Parallelise Kolla Ansible host vars generation" 2020-09-24 09:27:37 +00:00
Zuul
0a08cc77cf Merge "docs: Move development section under contributor guide" 2020-09-24 08:00:41 +00:00
Zuul
3753fbe05d Merge "Docker registry basic auth" 2020-09-24 08:00:36 +00:00
Michal Nasiadka
0f25900a43 Add missing barbican.conf support
Story: 2008170
Task: 40925

Change-Id: I3014983f481a5dca7c93e140b3e10caa5d537669
2020-09-23 19:17:51 +00:00
Pierre Riteau
c585554988 CI: Fix kayobe-tox-molecule job
When molecule runs, it installs ansible>2.8, which is version 2.10.0
since today. This now also installs the ansible-base package, currently
at version 2.10.1. Then it installs the version of ansible required by
kayobe, i.e. ansible>=2.8.0,<2.10.0 (currently 2.9.13).

We end up with a tox molecule venv containing:

ansible==2.9.13
ansible-base==2.10.1

This causes the following issue:

ERROR! Unexpected Exception, this is probably a bug: cannot import name 'AnsibleCollectionLoader' from 'ansible.utils.collection_loader' (/home/zuul/src/opendev.org/openstack/kayobe/.tox/molecule/lib/python3.8/site-packages/ansible/utils/collection_loader/__init__.py)

This commit adds requirements.txt to the molecule tox deps, which
ensures the correct version of ansible gets installed first.

Change-Id: I7ef890a2ae6fd67f53e1b8bca244a1c0d44fea53
2020-09-23 18:34:23 +02:00
Mark Goddard
b12f9e35e5 Performance: Parallelise Kolla Ansible host vars generation
Kayobe generates a host_vars file for each host in the Kolla Ansible
inventory. These contain network interfaces and other host-specific
things. Currently this is done by iterating over all hosts, which does
not scale well with a large number of hosts.

This change extracts the host vars generation into a separate role, and
executes it in a play targeted at all hosts, with delegate_to:
localhost. This ensures that host variable files are generated in
parallel.

Story: 2007993
Task: 40629

Change-Id: Iae75e17024adee9c2874c14d3ed36f4c87ba48d7
2020-09-22 17:06:04 +01:00
wu.shiming
b778ac01cf Bump hacking min version to 3.0.1
hacking 3.0.1 fix the pinning of flake8 to avoid bringing in a new
version with new checks.

bumping the min version for hacking so that any older hacking versions
which auto adopt the new checks are not used.

Change-Id: I3f4fca9a0df2f45241288fd876064433f4e2f737
2020-09-22 15:46:48 +08:00
Mark Goddard
7b80482ac3 Docker registry basic auth
Adds support for HTTP basic authentication with the Docker registry.

The kolla docker registry password is now written to passwords.yml.

Change-Id: Ie6e854a66a6660d4e02771fe2b5dd97af814194d
Story: 2007952
Task: 40429
2020-09-21 14:19:29 +02:00
Mark Goddard
f7628d30d7 docs: Move development section under contributor guide
This makes the docs more consistent with other projects.

Change-Id: I75732859a67851df564dc472fa839f08be3367cc
2020-09-21 09:40:54 +00:00
Zuul
54b6b72b67 Merge "Remove unnecessary requirements from tox.ini" 2020-09-21 09:21:07 +00:00
wu.chunyang
9475050cc7 Remove unnecessary requirements from tox.ini
requirements.txt is unnecessary when running `tox -e releasenotes` since
release notes requirements are in doc/requirements.txt. This PS removes
the requirements.txt from tox.ini and reuses [docs] deps.

Sync from kolla-ansible and kolla.

Change-Id: I9df2f98772c143a9662fd5c123cc9f6d5410c5e5
2020-09-18 13:10:43 +00:00
Zuul
4390ad247a Merge "Performance: skip LVM configuration if no groups configured" 2020-09-18 13:06:16 +00:00
Zuul
f0b9626336 Merge "Document that kolla_tag may need to be changed when upgrading" 2020-09-18 12:43:29 +00:00
Zuul
79426d0740 Merge "Support neutron-mlnx-agent" 2020-09-17 22:25:10 +00:00
Zuul
620b4e61f7 Merge "Remove support for deprecated Yum variables" 2020-09-17 20:47:06 +00:00
Mark Goddard
26cea075f2 Remove support for deprecated Yum variables
The variables in yum.yml and yum-cron.yml were deprecated in Ussuri.
This patch removes them, and updates the defaults in dnf.yml.

Story: 2008160
Task: 40906

Change-Id: I97cc98dd2ff726e5885fefcab17f17796d9fd453
2020-09-17 14:32:28 +00:00
Zuul
78b272eab0 Merge "Avoid setting IPADDR=0.0.0.0" 2020-09-17 13:46:44 +00:00
Bharat Kunwar
d29aca985e Support neutron-mlnx-agent
Depends-On: I173669bdf92b1f2ea98907ba16808ca3c914944c
Change-Id: I5a5bd255b937fe5d4c56cc21ef898b796c5bda41
2020-09-17 14:25:50 +02:00
Pierre Riteau
7d4d48b1c4 Update shebang for Python 3 script
The feature-flags.py script uses pathlib which is only supported in
Python 3. Update shebang to ensure it is run with the correct
interpreter.

Change-Id: I69ea0c90f68909399709626bddfc418e9df31acc
2020-09-16 15:54:13 +02:00
Pierre Riteau
2606c23812 Avoid setting IPADDR=0.0.0.0
Configuring network interfaces with IPADDR=0.0.0.0 may fail with:
Error, some other host (FF:FF:FF:FF:FF:FF) already uses address 0.0.0.0.

Change-Id: I908dc3320cb1dce7a040a1dbfeac414ace22d6e3
Co-Authored-By: Bartosz Bezak <bartosz@stackhpc.com>
Story: 2007900
Task: 40289
2020-09-16 15:29:14 +02:00
Mark Goddard
5ff5e6b100 Performance: skip LVM configuration if no groups configured
Currently we import the manage-lvm role with a condition that skips
tasks when no LVM groups are configured. At large scale this is
inefficient.

This change improves the performance for hosts where there are no LVM
groups configured, by using include_role rather than a static import.

Story: 2007993
Task: 40664

Change-Id: Ib51ac445cc787d7045d72a9ecec14434d432d9e7
2020-09-16 13:22:04 +00:00
Zuul
84f98f4c04 Merge "docs: Move getting started to a separate page" 2020-09-16 11:16:22 +00:00
Michal Nasiadka
1094358033 Move dnf.yml earlier in host configure workflow
Since kayobe is installing python3-pip in pip.yml - and dnf proxy is set
later, it fails on no-direct-internet systems.

Change-Id: I93f29ec4334829bfec107ba7aa6df05a47d2ab96
Story: 2008067
Task: 40750
Depends-On: https://review.opendev.org/748587
Depends-On: https://review.opendev.org/750804
2020-09-11 19:59:02 +00:00
Pierre Riteau
7b60585134 Update hacking for Python3
The repo is Python 3 now, so update hacking to version 3.0 which
supports Python 3.

Ignore bashate failure on one-liner loops.

Add pcre devel packages to fix failing pep8 jobs.

Change-Id: I3442174b378cc6e361550fcb9b32a62f61fa7972
2020-09-11 15:44:17 +02:00
Pierre Riteau
61114cda4a Document that kolla_tag may need to be changed when upgrading
Change-Id: Iafc90c50e0596970322c4dfa775594dadab6e260
2020-09-04 15:22:40 +02:00
Zuul
d3f01bdfd1 Merge "docs: Move configuration reference to subpath" 2020-09-01 10:09:26 +00:00
Zuul
cfc0a1a43b Merge "Performance: refactor pip configuration" 2020-08-31 18:04:14 +00:00
Mark Goddard
354113c20b docs: Move configuration reference to subpath
This allows us to add configuration scenarios.

Change-Id: Id636f78c61237fb27fa65fa3d4b3fc1a4cf0ba6a
Story: 2004360
Task: 40777
2020-08-28 08:28:40 +01:00
Mark Goddard
731957c58a docs: Move getting started to a separate page
People often seem to miss this useful information. Let's make it the
first page of the docs, rather than being buried in the index.

This was agreed at the Kayobe docs review call.

Change-Id: If464e2dbaafaaeb69029c4f4d81717c72e91dd6c
Story: 2008079
Task: 40773
2020-08-27 19:05:16 +01:00
Zuul
e92724feea Merge "Remove XenAPI integration" 2020-08-26 12:44:59 +00:00
Michal Nasiadka
49885a2b8d Install bash-completion in dev-tools
bash-completion is useful to tab-complete commands, especially docker container
names - this change adds it to default packages list for dev-tools role.

Change-Id: Ic630e0cfa059969046194b9761b9b5e07978f202
2020-08-25 12:59:23 +02:00
Mark Goddard
43650cb966 Performance: refactor pip configuration
Currently we perform pip configuration for a list of users, including
pip_conf.yml in a loop for each user. It is slightly more efficient to
loop over each task, since individual tasks have a higher overhead than
loops.

This change refactors the code into multiple loops, with a single
include. We keep the include to allow skipping the tasks when pip
configuration is not required.

Change-Id: I698d38613f45bd03a2e51572f6e6fb69e934f614
Story: 2007993
Task: 40719
2020-08-24 10:29:02 +01:00
zhoulinhui
597263e804 Remove XenAPI integration
the XenAPI is removed from kolla-ansible[1], this PS to remove it from kayobe

[1]: 60e03d7bf3

Change-Id: I3de408d384141eee1a088d222dca7d583251a298
2020-08-22 05:29:06 +00:00
Zuul
faf03dbf35 Merge "Add support for custom Aodh configuration" 2020-08-22 00:46:57 +00:00
Zuul
cd834045c8 Merge "Make pip_index_url variable conditional" 2020-08-22 00:07:07 +00:00
Zuul
a0bdcdb309 Merge "Support setting ethtool options on network interfaces" 2020-08-21 21:07:25 +00:00
Pierre Riteau
878fe5728b Add support for custom Aodh configuration
Change-Id: I19ef5a46dccacc00db495993cc744938921996a1
Story: 2008019
Task: 40671
2020-08-21 20:54:21 +00:00
Bartosz Bezak
7113ae4617 Make pip_index_url variable conditional
Setting pip's proxy variable, operator needs to set also pip_index_url,
even when one wants to use default value of index_url.
This patch sets pip's index_url only when pip_index_url is not empty.

Change-Id: If435e9025f3d78364b229bbe4458f5f1e1ab49aa
2020-08-21 20:01:44 +00:00
Pierre Riteau
f40dde18df Fix ansible-lint after upgrade to 4.3.1
- Skip rule 106 which fails due to the hyphen in "kolla-openstack"
- Fix code failing "File permissions not mentioned" rule

Change-Id: I7ce8a591b4e1eeef749c439e1140ecfb74dcb40e
2020-08-21 14:48:07 +02:00
Pierre Riteau
a33ba678df Skip broken ansible-lint
See [1].

[1] https://github.com/ansible/ansible-lint/issues/969

Change-Id: I849d9b09e973316308e574c447a78868e93a5420
2020-08-19 13:30:55 +02:00
Pierre Riteau
ea4a507f04 Support setting ethtool options on network interfaces
Change-Id: I5650b8b489d5968b42526e45667dfc7fa6ad7b2f
Story: 2008020
Task: 40672
2020-08-17 16:35:11 +02:00
Pierre Riteau
f6f08df6b1 Block Ansible 2.9.12
Ansible 2.9.12 changed default permissions of created files to 600 [1].
This breaks kayobe because kolla-ansible generates admin-openrc.sh owned
by root:root with mode 0600, which kayobe fails to read to generate
public-openrc.sh.

Block only Ansible 2.9.12 as the next release should include a revert of
this change.

[1] https://github.com/ansible/ansible/issues/71200

Depends-On: https://review.opendev.org/746220

Change-Id: I3de408d384141eee1a088d222dca7d583251a297
Story: 2008011
Task: 40661
2020-08-13 20:30:30 +00:00