Commit Graph

56 Commits

Author SHA1 Message Date
Michal Nasiadka a88ebd77b0 CI: Replace etcd with redis in GATE_IMAGES for cephadm scenario
We replaced redis with etcd in that scenario, but GATE_IMAGES
are not updated.

Change-Id: Ie9d6642f8ce51bc2a35b800c6c149153c14378db
2024-03-05 16:49:45 +01:00
Zuul 7fc76fb4e9 Merge "CI: Move openstack clients setup to a role" 2023-12-14 21:01:51 +00:00
Michal Nasiadka 56cbf8c031 CI: Move openstack clients setup to a role
Change-Id: Id5c53b63e88502c999b89cbc62405bb8953fef3a
2023-12-14 16:38:26 +01:00
Michal Nasiadka 70ebf95c2b CI: Pin docker to <7 in setup_gate.sh
Change-Id: I46c05a54171cbf43a51594998561db94af7d17e6
2023-12-13 14:05:28 +00:00
Michal Nasiadka 6fb1220b65 CI: Install rich on depends-on podman builds
Change-Id: I54f94c383ae5a1185b364495422e1ab79cbd1afb
2023-11-30 15:29:43 +01:00
Jan Gutter ed3b27cc92 etcd: Add support for more scenarios
This commit addresses a few shortcomings in the etcd service:
  * Adding or removing etcd nodes required manual intervention.

  * The etcd service would have brief outages during upgrades or
    reconfigures because restarts weren't always serialised.

This makes the etcd service follow a similar pattern to mariadb:
  * There is now a distiction between bootstrapping the cluster
    and adding / removing another member.

  * This more closely follows etcd's upstream bootstrapping
    guidelines.

  * The etcd role now serialises restarts internally so the
    kolla_serial pattern is no longer appropriate (or necessary).

This does not remove the need for manual intervention in all
failure modes: the documentation has been updated to address the
most common issues.

Note that there's repetition in the container specifications: this
is somewhat deliberate. In a future cleanup, it's intended to reduce
the duplication.

Change-Id: I39829ba0c5894f8e549f9b83b416e6db4fafd96f
2023-11-28 18:43:56 +01:00
Michal Nasiadka ad5e8ffd33 CI: Add redis to octavia scenario in setup_gate
Octavia now requires redis - see [1].

[1]: Iec3c8a4b4e257557dc8ec995c41d0ad7e88e13e2

Change-Id: I5aa489209984974b2345b1f5f7608db022a1405e
2023-11-09 15:59:29 +00:00
Boxiang Zhu 69d979c048 [CI] Add skyline scenario
Skyline is a new service for dashboard.
This patch adds a CI scenario which tests Skyline deployment.

Depends-On: https://review.opendev.org/c/openstack/kolla/+/826948
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/828464

Implements: blueprint skyline
Change-Id: I48488a24d6c8a03cd129929347b1bdac25f198b0
2023-11-08 09:28:53 +08:00
James Kirsch 5581a28253 Add support for LetsEncrypt-managed certs
Add support for automatic provisioning and renewal of HTTPS
certificates via LetsEncrypt.

Spec is available at:
https://etherpad.opendev.org/p/kolla-ansible-letsencrypt-https

Depends-On: https://review.opendev.org/c/openstack/kolla/+/887347
Co-Authored-By: Michal Arbet <michal.arbet@ultimum.io>
Implements: blueprint letsencrypt-https
Change-Id: I35317ea0343f0db74ddc0e587862e95408e9e106
2023-11-07 10:59:51 +01:00
Michal Nasiadka fed05c8018 CI: Install container engine sdk
In order to drop docker pip package from requirements.txt in Kolla
we need to start installing that here.

Change-Id: Ifd3b86afb65760c3b3ce7f26feebdaf0789fb525
2023-10-30 11:52:09 +01:00
Ivan Halomi 9a3f463345 Add support of podman deployment
This change adds basic deployment based on Podman
container manager as an alternative to Docker.

Signed-off-by: Ivan Halomi <i.halomi@partner.samsung.com>
Signed-off-by: Martin Hiner <m.hiner@partner.samsung.com>
Signed-off-by: Petr Tuma <p.tuma@partner.samsung.com>
Change-Id: I2b52964906ba8b19b8b1098717b9423ab954fa3d
Depends-On: Ie4b4c1cf8fe6e7ce41eaa703b423dedcb41e3afc
2023-10-20 17:51:52 +02:00
Michal Nasiadka b3ef7a9943 CI: venus - replace elastic with opensearch in gate deps
Change-Id: I4c5ade2d687684f37df83b44a852d88c77067680
2023-08-07 09:51:32 +02:00
Martin Hiner 53e8b80ed3 Add container engine option to scripts
This patch add a way to choose container engine inside tool and test
scripts. This is in preparation for Podman introduction but still
leaves Docker as default container engine.

Signed-off-by: Martin Hiner <m.hiner@partner.samsung.com>
Change-Id: I395d2bdb0dfb4b325b6ad197c8893c8a0f768324
2023-04-28 16:16:55 +02:00
Pierre Riteau 0357bc6de0 CI: Avoid running tgtd if BASE_DISTRO is rocky
Change-Id: Iac88aece372102835b03f7e0e5684d0285857e97
2023-01-16 14:28:20 +01:00
Michal Nasiadka e1ec02eddf Replace ElasticSearch and Kibana with OpenSearch
This change replaces ElasticSearch with OpenSearch, and Kibana
with OpenSearch Dashboards. It migrates the data from ElasticSearch
to OpenSearch upon upgrade.

No TLS support is in this patch (will be a followup).

A replacement for ElasticSearch Curator will be added as a followup.

Depends-On: https://review.opendev.org/c/openstack/kolla/+/830373

Co-authored-by: Doug Szumski <doug@stackhpc.com>
Co-authored-by: Kyle Dean <kyle@stackhpc.com>
Change-Id: Iab10ce7ea5d5f21a40b1f99b28e3290b7e9ce895
2022-12-01 10:27:50 +00:00
Doug Szumski adb8f89a36 Remove support for deploying OpenStack Monasca
Kolla Ansible is switching to OpenSearch and is dropping support for
deploying ElasticSearch. This is because the final OSS release of
ElasticSearch has exceeded its end of life.

Monasca is affected because it uses both Logstash and ElasticSearch.
Whilst it may continue to work with OpenSearch, Logstash remains an
issue.

In the absence of any renewed interest in the project, we remove
support for deploying it. This helps to reduce the complexity
of log processing configuration in Kolla Ansible, freeing up
development time.

Change-Id: I6fc7842bcda18e417a3fd21c11e28979a470f1cf
2022-11-11 15:48:11 +00:00
Radosław Piliszek 166ee3d20c [CI] Do not use the kolla user
The kolla user is not obligatory and the docs default to keeping
using the existing users.

Needed-By: https://review.opendev.org/c/openstack/ansible-collection-kolla/+/854985
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/855071
Change-Id: I917f493d395cc7efcbf95bc55af8191d70ec3edb
2022-09-13 12:06:39 +00:00
Radosław Piliszek 2c7a8497fa [CI] Run Kolla Ansible from its own venv
This avoids polluting the module path for other deployed projects,
like Tenks.

Change-Id: I17802f628e1e7db8d1f5caaa815170a8415e995c
2022-09-09 16:28:19 +00:00
Michal Arbet 1b3fcfed64 [CI] Test ProxySQL with shards in the nova cells scenario
There are two shards:
One 2-node (to test the clustering), one 1-node.

Change-Id: If3a60ad4cc39d6ad0cd72a934f5f7497cd44021b
Co-Authored-By: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2022-08-09 12:16:43 +02:00
Radosław Piliszek 74ec1fab2a [CI] Add Venus scenario
Venus is a new service for log processing.
This patch adds a CI scenario which tests Venus deployment.

Depends-On: https://review.opendev.org/c/openstack/kolla/+/793795
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/793897
Co-Authored-By: jinyuanliu <liujinyuan@inspur.com>
Change-Id: I0c7ba9e1ae23623b690a213c91ab3a12524d73f8
2022-03-16 14:57:29 +00:00
Mark Goddard 1ea99147c1 CI: Use PATH to find kolla-ansible script
This change also updates the CI test scripts to use PATH to find the
kolla-ansible script, rather than relying on the file in the source
checkout.

Using the script in the source checkout was hiding an issue with pip
install --user, although that has now been fixed in
I5b47a146627d06bb3fe4a747c5f20290c726b0f9.

Related-Bug: #1915527

Change-Id: I2827a657c8716a9c40391c6bdb7ff1a2a9c1260e
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/775586
2021-05-25 10:29:12 +01:00
Zuul 1f5a3a288b Merge "CI: add grafana to monasca image list" 2021-05-21 18:50:24 +00:00
Mark Goddard bbc27b59f0 CI: add grafana to monasca image list
Without this patch, if there is a change to kolla in the dependency tree
then the monasca scenario does not build grafana, and therefore fails
when trying to pull it.

Change-Id: Ic0a5b9ff940c4971a74345b8812683b29c5cedbf
2021-05-21 16:38:39 +01:00
Mark Goddard ec36eb016c CI: Fix nfv job with kolla dependency
Change-Id: Ifb3e51891de33e5d698571b898f7a471cfe89718
2021-05-06 08:46:44 +00:00
Gaëtan Trellu 9f578c85e0 Add HAcluster Ansible role
Adds HAcluster Ansible role. This role contains High Availability
clustering solution composed of Corosync, Pacemaker and Pacemaker Remote.

HAcluster is added as a helper role for Masakari which requires it for
its host monitoring, allowing to provide HA to instances on a failed
compute host.

Kolla hacluster images merged in [1].

[1] https://review.opendev.org/#/c/668765/

Change-Id: I91e5c1840ace8f567daf462c4eb3ec1f0c503823
Implements: blueprint ansible-pacemaker-support
Co-Authored-By: Radosław Piliszek <radoslaw.piliszek@gmail.com>
Co-Authored-By: Mark Goddard <mark@stackhpc.com>
2021-04-08 06:39:19 +00:00
Radosław Piliszek b647cb4128 Deprecate and disable chrony by default
Per [1].

[1] http://lists.openstack.org/pipermail/openstack-discuss/2021-February/020707.html

Change-Id: Id6f3cd158bf5d01750971249b11364b6a8631789
Closes-Bug: #1885689
2021-04-06 09:17:51 +00:00
Zuul d1e7964a8d Merge "Add missing octavia-driver-agent" 2021-03-24 19:12:02 +00:00
Michal Nasiadka 7a066f7154 Add missing octavia-driver-agent
For using 3rd party Octavia providers (such as OVN provider) an
octavia-driver-agent container must be running to expose those providers to
use.

OVN CI job has been extended with deploying Octavia and testing OVN Load
Balancer.

Closes-Bug: #1903506
Depends-On: https://review.opendev.org/c/openstack/kolla/+/771191

Change-Id: Ibafa8b7307981f2a51e630cc113d18af6162171c
2021-03-24 16:36:44 +00:00
Michal Arbet fa94cfd281 [CI] Fix broken docker registry
This patch fixes CI broken by the following patches:
- https://review.opendev.org/c/openstack/kolla-ansible/+/689870
- https://review.opendev.org/c/openstack/kolla-ansible/+/751795

Co-Authored-By: Vladislav Belogrudov <vladislav.belogrudov@dell.com>
Change-Id: If26a9f9791ce9b7817bcd410ea045d3e3b04b651
2021-03-19 14:37:12 +00:00
Zuul cef8c8b3de Merge "CI: octavia: create and test a load balancer" 2021-03-05 11:00:56 +00:00
Zuul f325add2e2 Merge "CI: octavia: remove octavia from magnum scenario" 2021-03-05 11:00:14 +00:00
wuchunyang 366ba8526e CI: octavia: create and test a load balancer
Co-Authored-By: Mark Goddard <mark@stackhpc.com>
Change-Id: I20c1d9bddee5a046b521b9378bade2ab50612be0
2021-03-04 09:27:38 +08:00
Mark Goddard 3c5ccb915e CI: octavia: remove octavia from magnum scenario
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/755589
Co-Authored-By: wu.chunyang <wuchunyang@yovole.com>

Change-Id: I489c1ca23d8abc350d3204ecc167d5d93bbbd1d9
2021-03-03 10:54:38 +08:00
Michał Nasiadka 65a16a08e2 CI: Move from ceph-ansible to cephadm
Change-Id: I81a4f8f8b8faa7559740531bb16d8aec7fc23f9b
2021-03-02 17:49:12 +01:00
Doug Szumski 47fee115eb CI: Add monasca scenario
Adds the following new Zuul job for testing deployment of Monasca and
associated services:

* kolla-ansible-centos8-source-monasca

All core OpenStack services except for Keystone are disabled to ensure
enough memory is available.

A follow up patch will replace the basic tests here with Tempest.

Co-Authored-By: Doug Szumski <doug@stackhpc.com>

Change-Id: I5d33fd3d7b69798ba0aa23509f7b809065f61c19
2021-01-19 09:25:24 +00:00
wu.chunyang be7d640c05 [CI] Add trove smoke test CI
Add trove smoke test.

Change-Id: I571d9663bcadb1ddc5a7ad86a2c478706e0705a9
2020-11-19 18:11:40 +08:00
Mark Goddard c2987d6582 CI: enable designate in magnum CI job
Follows designate guide, adding a default zone for fixed and
floating IPs, then boots an instance and verifies that its
name resolves.

Change-Id: Ifbfdab425e2c8a36a8f3ab8539f70dca4cce2abc
2020-10-07 14:55:10 +00:00
Zuul d047b2a5e0 Merge "CI: add magnum scenario, also covering octavia" 2020-09-24 15:01:06 +00:00
Mark Goddard d2326712d4 CI: add magnum scenario, also covering octavia
Adds a new Zuul job, kolla-ansible-centos8-source-magnum, for testing
deployment of Magnum, Octavia and associated services.

Change-Id: I61b293ba6bb52064ea98a73e2dff0023fa01a2a2
2020-09-17 15:01:53 +00:00
Zuul 09e667a0b6 Merge "[CI] Support building source images with in-review changes" 2020-09-17 14:54:08 +00:00
Radosław Piliszek e94f97399b [CI] Test Ironic Inspector API
Per the recent Kayobe brekage due to TLS support in Ironic [1],
let's test Ironic Inspector API as well.

[1] https://review.opendev.org/750804

Change-Id: I7ccf0c4286f8907bc2fa2eabc41ec2876c9815a9
2020-09-10 15:24:36 +00:00
Radosław Piliszek 731d6b1acf [CI] Support building source images with in-review changes
The Kolla-Ansible part.

This switches Kolla-Ansible to use the kolla-build-config role
instead of generating config locally.

Depends-On: https://review.opendev.org/607159
Change-Id: I859acbe4f84ccbdc53764574a58e6f0fab4094a3
2020-09-10 09:39:51 +00:00
Radosław Piliszek b21c07ac2f [CI] Remove setup_gate.sh symlink
This is confusing as it is not meant to be used by users.
Also, various tools show duplicated matches due to both locations
containing the exact same content.

Change-Id: I2debe121f64954e57788270d3258775f29f1cbb0
2020-09-08 09:45:50 +02:00
SamYaple 6adb5c0aa5 Convert gate to file backend rather than partition
The existing gate partitioned a disk for use with docker, depending
on the gate it would use the swap disk (RAX) or a spare disk (HP).
However, with the new gates (Bluebox + OVH) there is neither a spare
disk nor a swap disk. This leaves us with one choice: File based loop
device.

This patch creates a file at /swapfile to ensure we have swap. It
creates a file at /docker to ensure we have a loop device for Docker.

Right now the /docker file is 10GB and the /swapfile is 4GB due to
size limitations in the gate across all servers and types. This has
proven to be enough space for all our current tests.

Additionally, reduce the number of threads the gate uses to 4 to
prevent the lockup and hour timeout we have been seeing as more
recently in the gate.

The scripts that setup the gate are moved to the tools directory
rather than the tests directory to match the structure of the other
projects.

Partially-Implements: blueprint functional-testing-gate

Change-Id: I3e370f2382b6df36103d8b2ceda9b21d9b4229d5
2016-01-21 22:59:13 +00:00
Allen Gao cf47e7708c Update docker-py reqs in gate setup
TrivialFix

Change-Id: Idb0447a94a730fbcd822a855c865074817dd11b3
2016-01-20 16:39:58 +08:00
SamYaple 8c5cd011a7 Add some additional debug to gate
This info won't affect gate output as all info is logged to a file.

TrivialFix

Change-Id: Id92c1ebc60937fb376c69541d2f308a9d711c85e
2016-01-12 20:52:58 +00:00
Jeffrey Zhang 781eefeccf Remove the kolla-build.conf
use tox -e genconfig to generate this file

DocImpact

Closes-Bug: #1531202
Change-Id: I3a6e57c3cc48aeb3a45a055b173207ea6e214960
2016-01-07 21:06:22 +08:00
yangyapeng ff721bb764 Fix grammatical mistake, Changed character from "an" to "a"
Change-Id: I407793db93ce002cb88bb04193b46869e26d63bc
2016-01-04 13:00:25 -05:00
SamYaple 6ca65aba6c Unblock Docker pinning in gate
Docker and docker-py can now be unpinned since Kolla has been
converted to using the kolla_docker module and we no longer rely on
upstream to unblock us.

Change-Id: I6ee2b78c31ef0447da6154b75db381d5cdd55ab6
Partially-Implements: blueprint kolla-docker-module
2016-01-03 16:44:44 +00:00
Artur Zarzycki dc2ad7d134 Set docker api version to auto
Change-Id: I25d957a2368fa4e52b5fa9253d7ea5ec4046d830
Closes-Bug: #1521949
2015-12-03 11:28:21 +01:00