summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)AuthorFilesLines
2023-08-30Add comprehensive checks for container restartsDawud M1-0/+71
When adding a dashboard to grafana the containers aren't restarted when they should be. This is due to a bug in Kolla where the logic to determine whether or the container needs to be restarted fails in the case where the file does not exist in the container. This patch adds more comprehensive checks for container restarts in the set_configs.py file. This patch also adds a test to ensure that the functions work as expected. Closes-Bug: #1997984 Co-Authored-By: Will Szumski <will@stackhpc.com> Change-Id: I67f5f12700d7b55f26bff81e9b54559303da6d83 (cherry picked from commit d9a6c5f3901e078a30d341397ac57d867d8191cc)
2023-02-22CI: Retry docker push on publish jobsMichal Nasiadka1-0/+6
We have a high number of POST_FAILURE jobs failing on at least one container push - let's fix that. Change-Id: I0015dd4d3ffe5b3e1202ebcfde2b2c72c4655b41 (cherry picked from commit 0887d2e789e8fcd41b49c6346034c4774ea919dd)
2023-02-21CI: Configure additional disk when availableMichal Nasiadka1-0/+70
It seems that on some nodepool providers (rax for sure), we get 40G boot disk and 80G additional disk, while on others we get 80G boot disk only. Included fix from I06e262cd48d33ccfc0634589c82dcac80dff51af Change-Id: I179c41032239f5f0ce6055c79295b32c33fe67a5 (cherry picked from commit a0d758019a753596567128a44032165dc8214f05)
2023-02-08CI: store only templated out Dockerfiles in work_dir15.1.0Michal Nasiadka1-1/+3
Change-Id: I0832d7997536f5f0dc195d5038545b6cc220f0fa (cherry picked from commit c45a742e6fbfd3392511b315edde17ab42a9760d)
2023-02-07CI: Install ApparmorMichal Nasiadka1-0/+6
Docker 23.* is out and it started failing with apparmor_parser related messages - it seems apparmor is missing in the OpenDev image. Change-Id: I2a6d98e3c1d2d1b7c97a8e6172decbf56e77042d (cherry picked from commit 16f27c549660c4c27e3f440578ea1cf05b772a90)
2023-01-31CI: Add work dirMichal Nasiadka1-0/+1
It's useful to have a templated out version of the Dockerfiles in order to diagnose errors like "error on line xxx" after tests/templates/template-override.j2 gets applied. Change-Id: I5443454d8b020aa1c5552e11f6039e582a002431 (cherry picked from commit c8596ddda472a35b503c4bc4cdf8afce95c573cd)
2023-01-13CentOS/Rocky: use CentOS Cloud SIG repo instead of DeloreanMarcin Juszkiewicz1-9/+0
Zed was released, landed in CentOS repo, time to use it. Change-Id: I829a0fc4439281b074c40e200d96a27584da3765
2022-10-03CI/centos/rocky: use repos from opendev mirrorMarcin Juszkiewicz1-29/+35
Repo definitions in RHEL 9 rebuilds use metalink method for most of entries which makes our use of sed obsolete. This patch adds file with definitions of all CS9 repos we use and moves all official definitions a side at start of build. After build our definitions get removed and official ones are restored. Similar is done for RockyLinux 9 builds but there RL9 repos are used from official mirrors while CS9/EPEL ones are from OpenDev mirrors. Final images will have repos in wrong enabled/disabled state. Change-Id: I04121fd5ca9894b6deeda3808808cbffd6b97811
2022-09-30Add RockyLinux 9 supportMichal Nasiadka1-17/+14
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/859570 Change-Id: I7af51d07b8a939c908aa072294061def57dd67de
2022-09-27Move to CentOS Stream 9Marcin Juszkiewicz2-11/+9
OpenStack 'zed' requires Python 3.8+ so RHEL 8 family has to go. This changeset moves to CentOS Stream 9 while move to RockyLinux 9 is planned as final solution. CI moved to CentOS Stream 9 nodes. Depends-on: https://review.opendev.org/c/openstack/kolla-ansible/+/839715 Change-Id: I113b9984294cf8663d3fc0c8840320e1d40ea731
2022-08-29Fix CVE-2022-38060Radosław Piliszek1-18/+0
Closes-Bug: #1985784 Change-Id: I66476a2b396e2cbe41e68ac51f57aae1806b2ed8
2022-07-26Merge "[CI] Drop bindep"Zuul1-2/+0
2022-07-25Fix container image publish to Docker HubPierre Riteau1-0/+1
Publishing container images to Docker Hub was failing with: state is present but all of the following are missing: source This is caused by the recent Ansible upgrade by Zuul [1]: the source parameter is mandatory since Ansible 2.12. [1] https://review.opendev.org/c/openstack/project-config/+/849120 Change-Id: I232fe835f5a650c258243f1ee4720480f2e6e7b1
2022-06-23[CI] Drop bindepRadosław Piliszek1-2/+0
It is not necessary and it may be confusing. Change-Id: Ie84bce6a90de622dc76a2309fc579d881325b956
2022-05-29Use the new image naming scheme by defaultRadosław Piliszek1-1/+0
Adds a relevant reno to inform users about the change and the possibility to customise the prefix. Additionally, this patch includes the fix to Ubuntu image builds regarding rabbitmq and erlang. Both the changes are required to fix master CI. Change-Id: I6bc8b489a810849744c8bead6b9e350c5d3e36b7 Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/843752
2022-05-21[CI] Fix tags in publishingRadosław Piliszek1-1/+1
The original patch did not insert dashes as promised in the commit message. [1] [1] https://review.opendev.org/c/openstack/kolla/+/840164 Change-Id: Ibd6e06502ce56f5e0b44dea604ffee2fd9b7b8be
2022-05-02[publishing] use a new naming schemeRadosław Piliszek1-1/+2
This change switches published images names from the current format <base_distro>-<image_name>:<openstack_release>-<arch_suffix> to a preciser and image-oriented (for better variant listing) format <image_name>:<openstack_release>-<base_distro>-<base_distro_version>-<arch_suffix> Change-Id: I6a4b5c2087b94f96f72aa9d0d0781ff14d3ee6bb
2022-04-21switch to short image names by defaultMarcin Juszkiewicz1-2/+0
We can drop temporary 'use-short-names' argument and make short (kolla/debian-nova-libvirt:master) image names default. Kolla Ansible is using short names now. Change-Id: I153355353cd12aa25adaa9c87438a478748dfb28
2022-04-19add a way to not have 'install_type' in image name (temporary)Marcin Juszkiewicz1-0/+2
--use-short-names argument drops 'install_type' from image names: kolla/debian-openstack-base:14.1.0 This should allow to get rid of '-source' in image names without disrupting CI jobs. Switch publish jobs to use short names so k-a tests will have ready to use images for both long and short names. Change-Id: I29c9d51f4b518a4e2d3157ab5d6cc434fb83f2ef
2022-04-15enable logging to file for quiet modeMarcin Juszkiewicz1-0/+1
We have 'quiet' mode where only minimal data is printed to the console. But there were no logs at all then. This change generates log files (if 'logs-dir' argument is used) during quiet build. Also enables 'quiet' mode for CI so Zuul will not have to parse 29MB JSON file each time. Change-Id: If7d5c2807f0947a8bbbc1ceb8531c9b9c9287c1f
2022-04-15Revert "CI: add templated Dockerfiles to build logs"Radosław Piliszek1-1/+0
This reverts commit 09c890b12463a4b2c8767231189e7016f337fbc3. Reason for revert: That change caused all Kolla's work items to be transferred. This includes tarballs, their extracted contents, cloned git repositories, etc. to also be transferred to swift which takes extra time, pollutes logs and decreases the stability of jobs slightly (the mechanism is not designed for this kind of load). The collection of templated Dockerfiles in CI has to be reimplemented if it is wanted. Change-Id: Ideaf66ce18c993802f4d20f490caa47cec0dde5e
2022-04-11CI: drop install_type from build jobsMarcin Juszkiewicz1-1/+0
Change-Id: If524e45dc262efb253fc06329d4567412282926d
2022-03-11Unify curl use (customisation options)Maksim Malchuk1-1/+1
This change adds and unifies an ability to override hardcoded URLs for air-gapped environments via the usual blocks mechanism. Also, this change replaces ENV with ARG instruction for the variables used only in building images, and uses bash variable expansion where it possible. This change is a continuation of the I46b77978926fc2b578a68d1aaa944b2198af0685 Change-Id: I1fbad333b1bc95484e6f4c5145d5936a0e2db84f Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2021-09-08[CI] Drop support for publishing versioned image tagsRadosław Piliszek1-1/+1
Follow-up on I3259c0736a296751129aa349e8d378c0123957e6 Change-Id: I6b8935b16390a301602218ce35edfe132b140a4c
2021-08-04Merge "drop leftovers of RHEL support"Zuul1-1/+1
2021-07-29test-requirements: remove not needed entriesMarcin Juszkiewicz2-96/+0
Locally all tox tests passed without those requirements. Also removed keystoneclient test. We are building images not clients. Change-Id: I89578f0d7710cb38db12bf862584f13b49af20ef
2021-07-28drop leftovers of RHEL supportMarcin Juszkiewicz1-1/+1
As a project we never built RHEL based images so support for them was not tested. Change-Id: I27dfe34ade088228d71f6857ec4f3ab28ee63915
2021-07-01CI: Fix epel url overrideMichał Nasiadka1-3/+3
epel-release now installs epel*.repos with following baseurl: baseurl=https://download.example/pub/epel/$releasever/Everything/$basearch Change-Id: I19f57d258021ff660df6b6b95e8205b69f3bea85
2021-06-28[CI] Do not set ansible_python_interpreter for ZuulRadosław Piliszek2-11/+7
Zuul 4.6.0 does not allow to set ansible_python_interpreter. [1] Instead, with the current Zuul and Ansible, this should be automatically set to the proper python. This patch is required to restore the jobs which are ignored otherwise. [2] [3] Additionally, this change avoids the use of Ansible's pip module because it tries to use setuptools from the ansible_python_interpreter first even if another executable is set. [1] http://lists.openstack.org/pipermail/openstack-discuss/2021-June/023291.html [2] http://lists.openstack.org/pipermail/openstack-discuss/2021-June/023326.html [3] http://lists.openstack.org/pipermail/openstack-discuss/2021-June/023321.html Change-Id: Ib74eecd46617af51e23a3ccad664767b1bf6e04f
2021-06-10Revert "[CI] Add grafana to allowed-to-fail"Radosław Piliszek1-2/+0
This reverts commit a6884085e1a5336f17c2ed64f67d8f885c454207. Reason for revert: Repo is fine again. Change-Id: I60a76f42708f1746bd2c582ce25867ac34c9e865
2021-06-10[CI] Add grafana to allowed-to-failRadosław Piliszek1-0/+2
The grafana repo is broken for Debuntu. Change-Id: I7f79aeab53540df9bf84add6df3add300c9e9fa4
2021-05-20Revert "CI: add monasca-grafana to allowed-to-fail images"Marcin Juszkiewicz1-4/+0
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
2021-05-08Merge "CI: drop bashism from template overrides"Zuul1-1/+1
2021-05-04[CI] Trust only infra mirrorsRadosław Piliszek1-22/+10
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
2021-05-04CI: drop bashism from template overridesMarcin Juszkiewicz1-1/+1
[[ 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
2021-04-26move to Debian 'bullseye'Marcin Juszkiewicz1-1/+1
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
2021-04-08Merge "[CI] Publish images to quay.io on a daily basis"Zuul2-11/+29
2021-04-06[CI] Publish images to quay.io on a daily basisRadosław Piliszek2-11/+29
Based on the discussions from the past 3 Kolla meetings [1][2][3], we established that, to avoid the DockerHub pull limit issues in our CI, we will try using quay.io. We still publish weekly to the DockerHub. [1] http://eavesdrop.openstack.org/meetings/kolla/2021/kolla.2021-03-17-15.00.log.html#l-102 [2] http://eavesdrop.openstack.org/meetings/kolla/2021/kolla.2021-03-24-15.00.log.html#l-137 [3] http://eavesdrop.openstack.org/meetings/kolla/2021/kolla.2021-03-31-15.01.log.html#l-50 Change-Id: I7c1f0c5fc643678b29f963b6769d8f900a03b726 Depends-On: Id113a53c083d105ac9200474ff20faacef6decaf
2021-04-06CI: add monasca-grafana to allowed-to-fail imagesMark Goddard1-0/+4
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
2021-02-10Make kolla_set_configs open files in binary modeRadosław Piliszek1-0/+23
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
2021-01-26Merge "Remove two missed unicode flags"Zuul1-2/+2
2021-01-25Remove two missed unicode flagsRadosław Piliszek1-2/+2
Change-Id: I799bf8edfef6ff68382d651dca6de96fa80ed733
2021-01-15CI: Use Docker proxy for pullsMichał Nasiadka1-0/+20
Change-Id: I0c4d5e1ea16c6677813a334b38b3a22ad811531d
2020-12-17CI: revert to public package mirrors after buildMark Goddard1-3/+56
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
2020-12-15Fix publishing loginRadosław Piliszek1-2/+2
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
2020-11-26CI: Ensure docker-py is installed on publishMichał Nasiadka1-0/+6
After a recent change [1] publish jobs are failing on missing docker python SDK. [1]: https://review.opendev.org/c/openstack/kolla/+/763146 Change-Id: I63662dd903b914fe06165b45e0a0bb5ca74b21b9
2020-11-24Merge "CI: add templated Dockerfiles to build logs"Zuul1-0/+1
2020-11-19CI: Improve publish playbookMichał Nasiadka1-3/+15
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
2020-11-17CI: add templated Dockerfiles to build logsMark Goddard1-0/+1
Change-Id: I702f8fba37e22a6bb45eae14f1fbb251bcdb4d8a
2020-10-28[CI] Use local RDO mirrorRadosław Piliszek1-1/+3
Fixes a FIXME. Change-Id: I2e6e07d6f466a7485ce6481e6e43b034fdc27f41