Locally all tox tests passed without those requirements.
Also removed keystoneclient test. We are building images not clients.
Change-Id: I89578f0d7710cb38db12bf862584f13b49af20ef
This reverts commit a6884085e1a5336f17c2ed64f67d8f885c454207.
Reason for revert: Repo is fine again.
Change-Id: I60a76f42708f1746bd2c582ce25867ac34c9e865
This reverts commit 931d401887252d8830ebfb4d0b5d352f77094e9a.
Reason for revert: monasca-grafana is no more
Change-Id: I483db6d6eddd84b376251b38509e74d4a5c2a10b
Depends-on: https://review.opendev.org/c/openstack/kolla/+/784902
Infra mirrors get their indices rebuilt to avoid broken
indices (due to partial update).
Unfortunately, this wipes out the cryptographic signatures.
Our approach so far was disabling apt security features globally.
However, this is not a valid choice for external repos.
It hid an issue we introduced with new RabbitMQ repos missing
proper keys installed in the image.
This caused permanent failures outside of our CI.
Our process should be as close as possible to users' experience.
This patch makes CI trust only the mirrors that have their indices
rebuilt (so infra mirrors).
Change-Id: Ic5abc4b87fd76f87aba383abf43e95ba70629fcb
[[ is bash only
In many distributions /bin/sh == bash but not in Debian and derived
where it is dash (very simple POSIX shell).
Change-Id: I2b084ea78b236623b174473f411bae04e624a3e9
Bullseye is now in hard freeze cycle and goes for release.
https://release.debian.org/bullseye/freeze_policy.html
Co-Authored-By: Michal Nasiadka <mnasiadka@gmail.com>
Change-Id: I543965a2741cebfa759576a4c75669a7bacd4208
The monasca-grafana image is currently failing to build.
INFO:kolla.common.utils.monasca-grafana:go install -v ./pkg/cmd/grafana-server
INFO:kolla.common.utils.monasca-grafana:[91mgo: cannot find main module, but found vendor/vendor.json in /grafana/src/github.com/grafana/grafana
INFO:kolla.common.utils.monasca-grafana: to create a module there, run:
INFO:kolla.common.utils.monasca-grafana: go mod init
Let's unblock the gate and diagnose asynchronously.
Change-Id: Id113a53c083d105ac9200474ff20faacef6decaf
This fixes comparisons when files are not Unicode-encoded.
A relevant unit test is included.
It can be used as a base for other _cmp_file method unit tests
if the need arises.
Change-Id: Ic638516eb92d24ad247a7866fd1b5e2ac0400388
Closes-Bug: #1913952
When building images in CI, we use local package mirrors to reduce
external network traffic. These mirrors are not necessarily reliable nor
are they guaranteed to be accessible outside of the CI environment
(although many are).
While it is an antipattern to install packages in containers at runtime,
the Bifrost container does just that. If the mirrors configured in the
image are unavailable, Bifrost deployment can fail.
This change fixes the issue by reverting to public package mirrors as a
final step of the image build process.
Closes-Bug: #1902101
Change-Id: I2592a736206eaec811290e9fbdbf2540c0518ffe
Login to DockerHub was failing because of trailing newlines in
the encrypted credentials.
This patch makes the playbook trim them before usage.
Change-Id: I411f91af927ffa4d04c8021ddb5c3d584d90bdfd
Currently we use a for loop in shell that performs push of images
to Docker Hub - that doesn't really seem to fail properly on push
errors (e.g. related to new Docker Hub limits).
This change introduces usage of Ansible docker_* modules for doing the
same job and improves logging (so it's easier to find out which image
failed to publish).
Change-Id: I083ce70772edd1abb873ad43f6beb73aae01383f
Following this change it is possible to add 'Depends-On' lines to a
kolla commit message that point to reviews in other projects. For
example, this could be used to test building and deploying container
images containing a change to the nova project that is currently in
review.
It also allows to introduce jobs testing against Kolla in other
projects.
The kolla-build-config Ansible role can also be used by other projects,
such as kolla-ansible, to generate the necessary configuration.
This takes us closer to the Kolla Builder - Next Generation concept [1].
[1] http://lists.openstack.org/pipermail/openstack-discuss/2020-April/014255.html
Change-Id: Ia2efa6b5d7278b75ab8dec23207f92d6bd7c58f0
Co-Authored-By: Radosław Piliszek <radoslaw.piliszek@gmail.com>
The imp module is deprecated[1] since version 3.4, use importlib to
instead
1: https://docs.python.org/3/library/imp.html
Change-Id: I79dfd923531dd3e00d23e1682865f56f0cf437d2
There are several issues with kolla_set_configs --check:
1. We calculate the destination path incorrectly when comparing a file
in a directory, due to passing arguments to os.path.relpath in the
wrong order
2. For directories that have not changed, we also attempt to compare
them as files, which fails when they are open()ed.
3. If the config JSON does not have a config_files key, it fails with a
KeyError.
The first two issues affect the fluentd container, which specifies
directories as the source, without using a glob. The third affects OVN
containers.
This patch fixes these issues.
Closes-Bug: #1890567
Change-Id: I8921befe51da4282121443849177a7ca5ebe8822
Since Kolla is run in the wild against PyPI mirrors which do not
include the OpenDev-provided wheels, it might be nice to be able
to test these scenarios in the CI.
These jobs are added to the experimental queue so that they do
not consume resources when not needed.
Any Gerrit user may run them now to verify whether the change
passes them.
Change-Id: I9c33eeaf03be037651f82c831f0e07ab9a27752a
If they are available then we do not need to build them. Especially
AArch64 jobs will speedup (once wheels are built).
Change-Id: I79af6c37950e156018a9204fbcc7417cd7d41012
With the move to RHEL/CentOS 8 we no longer have Python 2 in our images
so there is no need for checking which Python version (2.x or 3.x) is
used inside of containers.
We also no longer have to support yum as a value for
distro_package_manager.
Partially-Implements: blueprint centos-rhel-8
Change-Id: Ie45cf3465fedddbde7856961527421883ba3d5c9
CI is set up using Ansible playbooks now.
This also drops redundant shell scripts.
Co-authored-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Change-Id: I5264746fd04276448f4668c3bb3a218a40e8660b
We don't need tox nor tell our users to use it when doing kolla builds.
Tox is going away from base infra images (it is already gone from
aarch64 ones).
Depends-on: https://review.opendev.org/713134
Co-authored-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
Change-Id: Ib1d97a783951ac42740ebf91bcc6ecaf2bf70853
Some CentOS repos (currently one - Ceph NFS Ganesha) use
https://mirror.centos.org instead of http:// and we break
their definition by removing mirrorlist= entry and not inserting baseurl
entry due to a missing match.
Change-Id: I7b29f8c6be80820042023d2b85162d5cc9a65f08
Now that py2 is gone, oslotest dropped dependency on mock and will
soon affect Ussuri CI [1], let's use unittest.mock built in py3.
This also fixes py38 jobs and proactively prevents py36 and py37
failing due to [1]. This is because we never included mock in
test-requirements (but in lower-constraints where it does not
really belong at all) and instead relied on oslotest to bring
it in.
[1] https://review.opendev.org/716322
Change-Id: Iceedcc7ad0d087414f6f94dfc0235fda4754be63
The repo is Python 3 now, so update hacking to version 3.0 which
supports Python 3.
Fix problems found by updated hacking version.
Update local hacking checks for new flake8.
Remove hacking and friends from lower-constraints, they are not
needed in installations.
Change-Id: I67e5ca24c550163c218fb06692de0b7c528d8318
We want to test upgrades on aarch64. For this we need to publish images.
AArch64 images will get "-aarch64" added to tag to not collide with
x86-64 ones.
Change-Id: Ibae2578b4bc18c0ab7fcc1840c39bb86659ab920