Compare commits

...

1082 commits

Author SHA1 Message Date
Zuul
a590ac5a5e Merge "bifrost/kolla-toolbox: Bump ansible-core to 2.20" 2026-01-13 13:39:43 +00:00
Michal Nasiadka
b59312e36c bifrost/kolla-toolbox: Bump ansible-core to 2.20
Set inject_facts_as_vars to False to match what we do in
Kolla-Ansible (and this option will default to False in 2.24)

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

Change-Id: Iae2b70ca62fd68400bde9296edcda8e53f14a896
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2026-01-12 14:58:24 +00:00
Bartosz Bezak
5a47700917 CI: Fix publish job secret aliases
Change-Id: Ib7c2d8419932e049db871053c3b4faad791c3566
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2026-01-12 11:56:29 +01:00
Zuul
2aa6b33b58 Merge "Update repo GPG key for influxdata." 2026-01-09 22:39:57 +00:00
Michael Still
b852b8ce32 Update repo GPG key for influxdata.
According to https://www.influxdata.com/blog/package-signing-key-rotation
the preferred signing key for influxdata package repositories
changed in early 2026. Update to the new preferred key.

Closes-Bug: #2138095

Change-Id: I77d38e713678ea653ded3b14fd0541d3ec0ebee6
Signed-off-by: Michael Still <mikal@stillhq.com>
2026-01-09 19:09:59 +00:00
Bartosz Bezak
9d9c922c51 CI: rotate zuul secrets
and store COPR webhook URLs as list

Change-Id: Ic75619db8c4b4f02bc51f4bfa6ae067acd1ba7e8
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2026-01-09 13:25:43 +01:00
Michal Nasiadka
9a09f82646 CI: Add ^docker/ trigger for aio jobs
Without that - these are not run at all

Update Bookworm to Trixie while we're at it

Change-Id: I6fb70da636514b5c1057c16cc2df08b07820bc5f
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-12-22 16:39:51 +00:00
Zuul
e90762c3ab Merge "Revert "kolla-toolbox: Bump ansible-core to 2.20"" 2025-12-22 14:08:54 +00:00
Michal Nasiadka
8aa631d40c Revert "kolla-toolbox: Bump ansible-core to 2.20"
This reverts commit ef12d96731.

Reason for revert: Broke community.mysql

Change-Id: Icb85112c66645d8df00eb0c40076a6bd822f6866
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-12-22 12:13:03 +00:00
Zuul
48b4337b1e Merge "kolla-toolbox: Bump ansible-core to 2.20" 2025-12-20 11:06:47 +00:00
Zuul
e203ff055b Merge "Switch to Debian Trixie" 2025-12-20 07:24:35 +00:00
Michal Nasiadka
cfebb40d86 mariadb: Sync packages across distros
Change-Id: I93ac9c28332644f51fa350d5a7a6207ae822e4cf
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-12-19 09:53:30 +00:00
Michal Nasiadka
ef12d96731 kolla-toolbox: Bump ansible-core to 2.20
Change-Id: I2a74d906b5239b3896fcdca015a9b37641ade833
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-12-16 12:26:33 +00:00
Zuul
dd3cb3dd1f Merge "debian: Switch to deb822" 2025-12-16 12:20:52 +00:00
Michal Nasiadka
cee27f6426 Switch to Debian Trixie
Change-Id: Ib7f551d4a7c6ffe95786853d6899e704de4747b8
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-12-16 12:15:22 +00:00
Michal Nasiadka
a7ee5ccb2b debian: Switch to deb822
Change-Id: I8156e2c2a57d820afdee0b76cd5a050ad682fb38
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-12-16 06:05:28 +00:00
Zuul
443ea2f9aa Merge "CI: add rocky-10 kolla-ansible jobs" 2025-12-15 16:17:27 +00:00
Michal Nasiadka
35f7b3c342 setup.cfg: Update Python versions according to Flamingo PTI
Add Python 3.13 and drop 3.8 & 3.9.

See https://governance.openstack.org/tc/reference/runtimes/2025.2.html

Change-Id: I2125879365dbe9a1645c159d87777939dae824c4
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-12-15 08:19:16 +00:00
Bartosz Bezak
7401179ab6 CI: add rocky-10 kolla-ansible jobs
Change-Id: I5607081701b59ac0ca58cb6c285769209a009355
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-12-12 13:38:52 +01:00
Rafal Lewandowski
96b5402285 Add genisoimage package to nova-compute-ironic
Closes-Bug: #2132960
Change-Id: I672f625e445bd1a2db1c4994baa7c44c20723a62
Signed-off-by: rafal Lewandowski <rafal@stackhpc.com>
2025-12-09 15:07:58 +01:00
Zuul
364807f8dd Merge "Revert "Switch to 2025.2 release"" 2025-12-05 13:53:49 +00:00
Zuul
93736f28ee Merge "neutron: Remove networking-generic-switch from u-c" 2025-12-05 10:40:50 +00:00
Michal Nasiadka
c30e4e524a Revert "Switch to 2025.2 release"
This reverts commit a28d2409c5.

Change-Id: I55c99ea29f20165b7853976f13312fca62e0be8f
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-12-05 07:40:25 +00:00
Michal Nasiadka
5ff768f0bd neutron: Remove networking-generic-switch from u-c
networking-generic-switch was added to u-c [1] and it breaks our
install scheme.

Alternative is to remove networking-generic-switch from sources.py,
but that would be a user facing change and if we would pursue that
we would need to do the same for all neutron plugins.

using u-c removal macro to preserve previous approach of installing
n-g-s from a branch tarball compared to a pypi version

[1]: https://review.opendev.org/c/openstack/requirements/+/964059

Change-Id: Ifcee01f9415e9b9de8138b55cd676873a99c86aa
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-12-05 07:40:18 +00:00
Michal Nasiadka
2da1676d7a redis: Drop redis and redis-sentinel images
We switched to Valkey

Change-Id: Ic40fecb87dd3eaf67eb1d3088978d462ff5b4320
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-12-03 12:06:34 +01:00
Zuul
b013f9ad1d Merge "mariadb: Switch EL to mariadb upstream repos" 2025-12-02 22:22:30 +00:00
Michal Nasiadka
3b1fe42e32 mariadb: Switch EL to mariadb upstream repos
Change-Id: I8fa363e7e9bc87195adaf218c46d6e9fb4575419
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-12-02 15:51:27 +00:00
Michal Nasiadka
14a7644a1e manila: Stop enabling kolla_el10 COPR repo
This repo enablement is here by mistake, the glusterfs-fuse
package installation has been removed in the original
CentOS Stream 10 patch.

Change-Id: I395fcae7fd39ea7488191690f994ad98a8184f65
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-12-02 12:43:01 +00:00
Michal Nasiadka
cbbc1b0bca rocky: Remove EPEL hack - 10.1 is out
Change-Id: I60de8ef452adad4a9b0d974a2678264b91eb6e3b
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-11-26 18:27:28 +01:00
OpenStack Release Bot
0dedcb82e4 reno: Update master for unmaintained/2024.1
Update the 2024.1 release notes configuration to build from
unmaintained/2024.1.

Change-Id: Id395efcfe0381340318c3bf27090a8f8fc2e9bfe
Signed-off-by: OpenStack Release Bot <infra-root@openstack.org>
Generated-By: openstack/project-config:roles/copy-release-tools-scripts/files/release-tools/change_reno_branch_to_unmaintained.sh
2025-11-24 16:16:08 +00:00
Michael Still
0fc73a644b Transition to the new rabbitmq Debian package archives.
RabbitMQ announced some time ago that the package archives were moving:
https://www.rabbitmq.com/blog/2025/07/16/debian-apt-repositories-are-moving

The old location is no longer working, so this patch transitions to
the new one.

Closes-Bug: #2131736

Change-Id: I6ef0ed9cc40be42a0d98c6a4c83c5c5c26d9cdbf
Signed-off-by: Michael Still <mikal@stillhq.com>
2025-11-18 18:21:25 +00:00
OpenStack Release Bot
a03766b07f Update master for stable/2025.2
Add file to the reno documentation build to show release notes for
stable/2025.2.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2025.2.

Sem-Ver: feature
Change-Id: If6d5a967a12cb6143a5bb1f321d8cc0231552275
Signed-off-by: OpenStack Release Bot <infra-root@openstack.org>
Generated-By: openstack/project-config:roles/copy-release-tools-scripts/files/release-tools/add_release_note_page.sh
2025-11-10 16:18:04 +00:00
Bartosz Bezak
4ed9bcee50 Tidy up release notes for Flamingo release
Change-Id: I10f47d3454fd81a36aa7a724050869ef680e88b4
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-11-07 12:44:58 +01:00
Zuul
e1240df719 Merge "Add httpd image for OIDC/SAML frontend in uWSGI case" 2025-11-06 17:42:22 +00:00
Bartosz Bezak
477f71b6ba debian: use valkey from bookworm-backports
To fix arm64 valkey build.
The virtual `valkey` resolves to `valkey-server` in bookworm-backports,
but our global -1000 pin blocks it. Amd64 worked only because extrepo
shipped it. Use valkey directly from the backports packages instead.

follow up to https://review.opendev.org/c/openstack/kolla/+/932174

Change-Id: I846e4f19696ca28758cb9c0400be96c01b079daa
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-11-05 14:22:31 +01:00
Michal Nasiadka
5ad545cc72 Bump versions of packages in sources.py
Change-Id: I395cfdf22cd87a43294dbae561a8872cb0b48e1b
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-11-03 06:38:41 +00:00
Michal Nasiadka
40bcc42978 CI: Fix publish secret for arm64
Change-Id: Ifd0b4d511aa5481ff9066c81289457383932079b
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-31 10:30:58 +01:00
Michal Nasiadka
8c2c3c90f9 CI: Fix missing variable in publish jobs
Change-Id: Ie76463977d2e9e4358bcd37b62cc8172813cf7b4
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-30 16:39:44 +01:00
Zuul
5a79eff427 Merge "Add Valkey" 2025-10-30 09:05:33 +00:00
Michal Nasiadka
af9dfb0dba Add Valkey
Change-Id: I02f3adf9825636e2b81c50543d6f95ea986019b6
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-29 16:32:24 +01:00
Zuul
b7e2d6508c Merge "horizon: unpin pip and setuptools" 2025-10-29 10:41:49 +00:00
Zuul
ae3229311a Merge "Drop Venus images" 2025-10-28 19:15:39 +00:00
Michal Nasiadka
3913b62295 Bump Ansible to 12 and ansible-core to 2.19
Change-Id: I37f4515587cb040296612e35d4c643f0c2bea6f6
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-28 10:45:51 +00:00
Zuul
cde2df1beb Merge "mariadb: Bump to 11.4" 2025-10-27 17:52:33 +00:00
Michal Nasiadka
07872d34d0 horizon: unpin pip and setuptools
Since Venus is removed - that is not needed anymore

Change-Id: I444304139dfbe451b5449a181de1129f073b7535
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-27 10:39:51 +01:00
Michal Nasiadka
539342b730 Drop Venus images
It has been marked as inactive and venus dashboard plugin is breaking
Horizon Kolla builds.

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

Change-Id: I3a04487a75c04ba989fa70f2025db33308671dfb
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-27 09:38:44 +00:00
Michal Nasiadka
9bc8d4d081 horizon: pin pip to <25.3
Closes-Bug: #2129916

Change-Id: Ib1b40a65cb2667b53c72f00d16bfe280bcf24bfe
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-27 09:38:09 +00:00
Zuul
6bae37377c Merge "Remove container image of neutron-linuxbridge-agent" 2025-10-24 18:58:24 +00:00
Takashi Kajinami
3e12a642c2 Remove container image of neutron-linuxbridge-agent
The agent was removed from neutron during 2025.1 cycle. The remaining
implementation to deploy it is being removed from kolla-anible now.

Needed-By: https://review.opendev.org/c/openstack/kolla-ansible/+/962278
Change-Id: I2cf22b874fcb885752bf3800c8ad8fa7a5eacff7
Signed-off-by: Takashi Kajinami <kajinamit@oss.nttdata.com>
2025-10-24 16:13:33 +00:00
Zuul
2fdd26aa38 Merge "neutron-metadata-agent: copy wrapper script for haproxy processes" 2025-10-24 11:13:01 +00:00
Michal Nasiadka
8f827e021b Add httpd image for OIDC/SAML frontend in uWSGI case
Change-Id: Ia85f253ecaeaef63c17e75dc4a223e030dbbc58d
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-24 10:22:30 +00:00
Michal Nasiadka
c245289176 mariadb: Bump to 11.4
11.4 is the next LTS release (see [1])

New variable ``VERIFY_DB_SERVER_CERT`` is added to mitigate the MariaDB
client variable ``ssl-verify-server-cert`` change from ``FALSE`` to
``TRUE``. [2]
This variable can be overidden by assigning ``TRUE`` to environment
variable with the same name.

[1]: https://mariadb.org/11-4-lts/
[2]: https://jira.mariadb.org/browse/MDEV-31857

Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/928487
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/958281

Change-Id: Ifb41c0c48c4743e70e95fa7e1d329e91362e966c
Signed-off-by: Seunghun Lee <seunghun@stackhpc.com>
2025-10-14 16:07:46 +01:00
Zuul
f71ab2be35 Merge "Drop support for building MariaDB clustercheck" 2025-10-14 12:53:25 +00:00
Seunghun Lee
cd75df6ce0 Drop support for building MariaDB clustercheck
MariaDB clustercheck script has not been maintained and it will not work
with MariaDB 11.4 (the next LTS version).
This is because clustercheck.sh uses ``mysql*`` commands but from
MariaDB 11.4, those commands are not supported.

The health check of MariaDB server containers will be done by new script
which comes with change [1].

Without MariaDB clustercheck, MariaDB server becomes only container image in
the family, so mariadb-base and mariadb-server dockerfiles are merged.
To avoid breaking changes, the name 'mariadb-server' is retained.
Follow-up to rename references in Kolla and K-A from 'mariadb-server' to
'mariadb' would be nice.

[1] https://review.opendev.org/c/openstack/kolla/+/962657

Change-Id: I01278f76ee82b018a854b5862f3caaa8c78a9a30
Signed-off-by: Seunghun Lee <seunghun@stackhpc.com>
2025-10-14 10:06:30 +01:00
Michal Nasiadka
4d87fecd16 repos: Deduplicate repos.yaml
Introduce rpm/deb entry in repos.yaml, create a structure

[base_package_type]:
  [base_distro]:
    [base_distro-$arch]

Allow any of these to be undefined, defaulting to empty dict

This allows to deduplicate entries between distros of the same
base_package_type (rpm/deb)

Sort repos.yaml

Change-Id: Ifc351d5d612e6c6cc82be282aed179c656ae252c
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-10 07:42:44 +00:00
Piotr Milewski
79726bd9d5 Update Fluentd from v5 LTS to v6 LTS
Fluent Package v5 LTS will reach end of support at
the end of 2025.
Fluent Package v6 LTS will be supported until at least
the end of 2027.

This change updates the apt repository configuration and package version
to use Fluent Package v6 LTS for Ubuntu, Debian and RHEL.

No changes to existing Fluentd configuration files are required.

Change-Id: Iaf3c4de859986629f9768563a319fe0385acff6a
Signed-off-by: Piotr Milewski <vurmil@gmail.com>
2025-10-09 11:45:48 +00:00
Michal Nasiadka
90d255daa3 neutron: keepalived wrapper script does not rm containers
keepalived wrapper script as the only one didn't have --rm
in docker/podman invocation - so these didn't get deleted
when stopped/crashed/etc.

Closes-Bug: #2127170

Change-Id: I85ae37250ac4ef629b77ade04826a363e8047a91
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-09 10:46:53 +02:00
Zuul
34923a33ec Merge "ironic: Remove ipxe.efi handling for EL10" 2025-10-07 09:22:28 +00:00
Michal Nasiadka
3b80723615 ironic: Remove ipxe.efi handling for EL10
RHEL removed ipxe.efi - see [1].

[1]: https://issues.redhat.com/browse/RHEL-37610

Change-Id: I142257d6537ceeff23cb2cb34e64d93de9f19d2e
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-07 07:01:48 +00:00
Zuul
ccaf00b936 Merge "debian: Use {{ openstack_release_codename }} for extrepo" 2025-10-06 14:17:59 +00:00
Zuul
f758ac96ea Merge "CI: Update API token for fixing repo visibility" 2025-10-06 13:49:57 +00:00
Michal Nasiadka
88f6daa720 CI: Update API token for fixing repo visibility
Change-Id: Iae913ff1b917104fdbb3257c24386f22f6764a03
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-06 09:57:37 +00:00
Zuul
1dabf1812a Merge "Add MariaDB healthcheck.sh" 2025-10-06 09:46:45 +00:00
Seunghun Lee
683ae79657 Add MariaDB healthcheck.sh
MariaDB clustercheck has not been updated for a long time.
Since the script uses ``mysql*`` commands but MariaDB 11.4 (next LTS version)
does not support them, it will not work once MariaDB gets upgraded.

Added alternative MariaDB container health check script ``healthcheck.sh``
from official MariaDB docker images. [1]
This script uses ``mariadb*`` commands, so it's prone to MariaDB
upgrade.

[1] https://mariadb.com/docs/server/server-management/install-and-upgrade-mariadb/installing-mariadb/binary-packages/automated-mariadb-deployment-and-administration/docker-and-mariadb/using-healthcheck-sh

Change-Id: I7816edb6ebd8c95412a6833ea20b32193c2d1415
Signed-off-by: Seunghun Lee <seunghun@stackhpc.com>
2025-10-03 14:47:05 +01:00
Zuul
6c8f2b9042 Merge "Adds ironic-pxe-filter container" 2025-10-03 12:50:59 +00:00
Will Szumski
bacaf8f494 Adds ironic-pxe-filter container
Used in conjunction with the inspector implementation built into Ironic
and based on the Ironic documentation[1].

[1] https://docs.openstack.org/ironic/latest/admin/inspection/pxe_filter.html

Partial-Bug: #2094790

Depends-On: https://review.opendev.org/c/openstack/ironic/+/959850
Change-Id: I17811f2225edd64fb20cc44f0d40e14e9edb1413
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
Signed-off-by: Will Szumski <will@stackhpc.com>
2025-10-03 10:00:05 +02:00
Zuul
e65d3b50b4 Merge "Stop duplicating repos in repos.yaml" 2025-10-02 16:09:45 +00:00
Zuul
57590d07af Merge "Add support for rpm to repos.yaml" 2025-10-02 16:05:25 +00:00
Zuul
5b2b5e705e Merge "CI: Improve aarch64 and vars config" 2025-10-02 15:26:16 +00:00
Michal Nasiadka
b2713797e6 CI: Improve aarch64 and vars config
Rename aarch64 to arm64 to sync with OpenDev nodeset naming
Remove base_arch/base_distro/base_distro_version and derive it
from zuul job name

Change-Id: I2f8367ae81d0972517b8712e1cb6ead1044accc4
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-02 13:37:46 +00:00
Zuul
3c792793ee Merge "CI: Add zuul.d to irrelevant files" 2025-10-02 12:50:08 +00:00
Zuul
15c4e4d416 Merge "Move repo enablement to respective rpm blocks" 2025-10-02 12:50:04 +00:00
Michal Nasiadka
5c6ffd7457 Stop duplicating repos in repos.yaml
Change-Id: Ic8bfaedb1e94dd8b64fa8a63d9cd3b76a2b73ffb
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-02 12:25:07 +00:00
Michal Nasiadka
806602e488 Add support for rpm to repos.yaml
Add the ability to configure repositories in the same
way as we do Debuntu ones - via repos.yaml.

Removes .repo files from base - since these are not
needed there anymore.

gpgcheck = 1 is default in docker/base/dnf.conf

Change-Id: I7df7d452c45c57c434d5b4ad15a87963e4d6d0d4
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-02 14:24:31 +02:00
Michal Nasiadka
17727e1481 Move repo enablement to respective rpm blocks
Currently we are enabling repos irrespective of rpm/deb
statement blocks and not failing in the method used
if a repository is missing.

Downside is - we might be producing one more layer,
but it probably is a more logical approach.

This is required for adding rpm support in repos.yaml
that will also include failing on missing repositories.

Change-Id: I5479c5c935760f00fe4cd307366f261deee3199f
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-02 08:37:07 +00:00
Michal Nasiadka
918018c18e CI: Add zuul.d to irrelevant files
It was ommitted in the patch that renamed it from .zuul.d

Change-Id: I8e4470185321fad1be3e2307c7578ca54d197718
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-02 08:16:57 +00:00
Michal Nasiadka
f17a23747f CI: Fix rocky publish jobs - version missing
podman jobs have also been omitted in the original patch

Change-Id: I1ddb4e9ead170f22b231b8595d4dbf7cb0d4fb78
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-02 07:44:07 +00:00
Michal Nasiadka
d4b777bb06 Move to Rocky Linux 10
Depends-On: https://review.opendev.org/c/openstack/ansible-collection-kolla/+/961237

Change-Id: Idd809f5efd2d308c1565d7635e67af0a431d18f7
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-10-01 12:39:22 +00:00
Pierre Riteau
8b121529cb doc: Fix Ubuntu Ceph version
Ubuntu Noble is using Ceph Squid, not Reef [1].

[1] https://packages.ubuntu.com/noble-updates/ceph

Change-Id: I11926e764909ec53bdd2a38d815a31253abd6868
Co-authored-by: Chema Peribáñez <epgboe2.tid@telefonica.com>
Signed-off-by: Pierre Riteau <pierre@stackhpc.com>
2025-09-25 17:51:38 +02:00
Zuul
8f462c7f05 Merge "CI: Rename jobs according to changes in K-A" 2025-09-24 15:03:40 +00:00
Michal Nasiadka
1d3e70e589 CI: Rename jobs according to changes in K-A
See I1f08f9b9064d9f7e95b07944db0e7ebac3120c57

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

Change-Id: I2eb93bbd7de108d6d7f3f61c932642fdf7017fd7
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-09-24 07:44:44 +00:00
Zuul
f7db20a52d Merge "horizon: Ensure horizon owns /var/log/kolla/horizon" 2025-09-23 13:42:34 +00:00
Michal Nasiadka
d9a4b6cfa9 debian: Use {{ openstack_release_codename }} for extrepo
Change-Id: I5e89a9a241f746a2cbab723ea5fc57ea65ad5ee5
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-09-23 12:51:50 +00:00
Zuul
88121bb633 Merge "openstack-base: Fix psycopg2 install on EL" 2025-09-23 10:24:48 +00:00
Zuul
ef74be174f Merge "Switch to 2025.2 release" 2025-09-22 15:17:41 +00:00
Michal Nasiadka
c35fb9ce5c openstack-base: Fix psycopg2 install on EL
pg_config has been moved to postgresql-server, postgresql-devel
only installs a link to pg_config which is unresolvable without
-server package.

Installing postgresql-server-devel to include headers which are
also required for building psycopg2.

Change-Id: I35548a02f652c035c17aabe149752322ffc869c4
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-09-22 13:39:37 +02:00
Zuul
8ef672bdd7 Merge "Drop ironic-inspector" 2025-09-19 11:58:09 +00:00
Michal Nasiadka
74b01d6630 horizon: Ensure horizon owns /var/log/kolla/horizon
Needed-By: https://review.opendev.org/c/openstack/kolla-ansible/+/961614

Change-Id: I9011f9a6d065b85ff76852950e4537070a12b437
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-09-18 16:44:29 +02:00
Michal Nasiadka
46e89ee3b4 CI: Use UCA mirror for Ubuntu
Change-Id: I80070b3c3658948c7157564fb8a79e6dd427f1d1
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-09-18 06:19:34 +00:00
Michal Nasiadka
a28d2409c5 Switch to 2025.2 release
Change-Id: Ib73e2c47faf66ddee79d07259e75f1b1d721f0aa
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-09-18 07:27:16 +02:00
Michal Nasiadka
baa9d4ed9c cinder: Remove wsgi script handling
Cinder removed it in I28666e63896fed0f1661b5964ec46952074f4b23

Change-Id: I69ec97fe8480d27942cc923c170ec3cd669caf06
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-09-18 07:25:57 +02:00
Maximilian Stinsky
df4d573eb5
neutron-metadata-agent: copy wrapper script for haproxy processes
In ml2/ovn setups, the neutron-metadata-agent spawns haproxy processes
to serve metadata requests. To run these haproxy instances inside their
own containers, the wrapper script must be available in the
metadata-agent container.
This is a follow up on I679ac66186d457ae53f89469fe22c5662089019a

Change-Id: Ia47af98ff723ebe8ea8461d05a2bc3b58af845f9
Signed-off-by: Maximilian Stinsky <maximilian.stinsky-damke@wiit.cloud>
2025-09-17 09:44:05 +02:00
Michal Nasiadka
4f9d8c0e1c gnocchi: Bump to 4.7.0
This is required for uwsgi module usage

Change-Id: If1a078d2704fbd0b119d6c1ffc5a10aeff0a150a
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-09-11 09:52:24 +02:00
Zuul
0d51f0ab03 Merge "Prometheus and core components update" 2025-09-10 08:22:53 +00:00
Bartosz Bezak
e8d8d12ac2 CI: fix secrets for erlang COPR periodic job
It was created with extra newlines.

Change-Id: I9394e5ecf913385870396fa51401748ca0de5e22
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-09-08 18:10:18 +02:00
Michal Nasiadka
012d69d157 CI: Drop zun jobs
Similar to https://review.opendev.org/c/openstack/kolla-ansible/+/959307

Change-Id: I6033521fc1fefe55f685914f823d58c96f68611a
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-09-05 12:55:18 +02:00
Zuul
f53d451903 Merge "docs: update main contributor guide page" 2025-09-05 09:02:52 +00:00
Michal Nasiadka
97899bce58 Drop ironic-inspector
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/951864

Change-Id: Ie7e607c5a9c6f8c2e36aea5d52dc2ffbe97dddb3
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-09-05 07:23:23 +00:00
Bartosz Bezak
0ab1d7240e docs: update main contributor guide page
The goal is to unify common contributor information across
all kolla projects (communication, launchpad links, etc).

Change-Id: Iddcaa8723b364fe4e8619f8fc2b03c93b685db86
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-09-05 09:19:13 +02:00
Zuul
20f371e01d Merge "CI: add weekly COPR RPM build Erlang job" 2025-09-04 08:12:20 +00:00
Bartosz Bezak
6b8123a8cc CI: add weekly COPR RPM build Erlang job
Updating Erlang RPMs for aarch64 in Fedora COPR build system [1] [2].
Using COPR webhooks feature [3].

[1] https://copr.fedorainfracloud.org/coprs/g/openstack-kolla/rabbitmq-erlang-26
[2] https://copr.fedorainfracloud.org/coprs/g/openstack-kolla/rabbitmq-erlang-27
[3] https://docs.pagure.org/copr.copr/user_documentation.html#custom-webhook

Change-Id: Ibd4450d14691aca627d99c321b313420ce6dd6f2
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-09-03 12:27:45 +02:00
Bartosz Bezak
d2ca2d38fe Use versioned Erlang 27 repo on aarch64
Fedora COPR build system cannot handle storing multiple package
versions in one repo.

Change-Id: I3ff95aa75f1f1cccfa40f3ab7f216cb221a6af29
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-09-02 14:27:31 +02:00
Zuul
cc328dc865 Merge "Revert "zuul: make failing job temporarily non-voting"" 2025-08-29 21:14:54 +00:00
Zuul
8e720b388e Merge "Remove RDO/Delorean" 2025-08-29 17:42:02 +00:00
Michal Nasiadka
5781b359ef Remove RDO/Delorean
RDO has staffing problems and has decided to only
support SLURP releases - let's drop reliance on that
repository.

Change-Id: I56f86a1c5262e3ee2bcbb52cae53c3b2655ed87f
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-08-29 07:19:33 +00:00
Piotr Milewski
67e37b703a Prometheus and core components update
Updates a range of monitoring and core infrastructure components
to their latest stable upstream versions to leverage new
features and bug fixes.

etcd: 3.5.16 -> 3.6.4
letsencrypt-lego: 4.20.4 -> 4.25.2
prometheus-blackbox-exporter: 0.25.0 -> 0.27.0
prometheus-cadvisor: 0.49.2 -> 0.53.0
prometheus-elasticsearch-exporter: 1.8.0 -> 1.9.0
prometheus-memcached-exporter: 0.15.0 -> 0.15.3
prometheus-mysqld-exporter: 0.16.0 -> 0.17.2
prometheus-node-exporter: 1.8.2 -> 1.9.1
prometheus-server: 3.2.1 -> 3.5.0

The Prometheus-server package has also been switched to
a Long-Term Support (LTS) version, which ensures extended
stability and security support.

Change-Id: Ib9805fb6a93a0da887918174d9994caa5f1306d3
Signed-off-by: Piotr Milewski <vurmil@gmail.com>
2025-08-27 13:30:16 +02:00
Michal Nasiadka
da1f630158 CI: Drop dump_info.sh
It should not be required anymore, all these information are dumped
by different means (generic zuul playbooks, etc).

Change-Id: I80569b6fe9e4d779a5448015b8ad9caf09e5abf6
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-08-26 19:07:40 +02:00
Zuul
d3e3f6b414 Merge "[release] Use Flamingo Ubuntu Cloud Archive" 2025-08-25 14:13:57 +00:00
Bartosz Bezak
cabc3627e8 [release] Use Flamingo Ubuntu Cloud Archive
Change-Id: I92f3095b2d51bd6ac7ff48b0c7d79852eccc9803
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-08-25 10:34:08 +00:00
Zuul
c93cf1be3e Merge "Update information on RabbitMQ and Erlang version" 2025-08-21 11:28:28 +00:00
Zuul
1c5239e193 Merge "Enable Prometheus mtail build for ARM64" 2025-08-20 13:58:48 +00:00
Zuul
ec3b0a1730 Merge "Influxdb: use stable RHEL repo" 2025-08-20 13:49:14 +00:00
Zuul
a40ad7ea0a Merge "Enable Barbican build on Ubuntu ARM64" 2025-08-19 23:23:04 +00:00
Seunghun Lee
8f83116224 Update information on RabbitMQ and Erlang version
RabbitMQ from 4.0.x to 4.1.x
Erlang from 26.2.x to 27.x

Change-Id: I710b2a95c840862f52d812df306d1fb26dd4340b
Signed-off-by: Seunghun Lee <seunghun@stackhpc.com>
2025-08-19 14:33:18 +01:00
Zuul
0a34b97781 Merge "CI: Switch centos 10 nodeset to centos 10" 2025-08-18 20:58:18 +00:00
Bartosz Bezak
444a81b62b Influxdb: use stable RHEL repo
Switch the RHEL repo to the stable channel as per [1]. Use new GPG.
Telegraf arm64 builds are enabled again, as binaries exists.

[1] https://repos.influxdata.com/stable/x86_64/

Change-Id: Ie4f6f15404f6965df51f3214506ae9f8bb9b61e7
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-08-18 20:15:13 +02:00
Bartosz Bezak
85878fe6a8 Enable Barbican build on Ubuntu ARM64
Re-enable the Ubuntu arm64 build. The previous exclusion was due to
uWSGI issue [1], which is no longer reproducible on Ubuntu Noble.

Change-Id: I400e9a9a3bf03053589835f933023eedee504f08
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-08-18 20:05:57 +02:00
Bartosz Bezak
a7ada218cc Enable Prometheus mtail build for ARM64
arm64 binaries are available currently.

Change-Id: Iabf606848a6160eaf9e2494a2564f37c6db09882
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-08-18 16:48:41 +02:00
Zuul
164eb7845a Merge "Revert "Switch to 2025.1 sources"" 2025-08-18 14:16:30 +00:00
Dr. Jens Harbott
fd71b42ed2 Revert "zuul: make failing job temporarily non-voting"
This reverts commit 2b42c958ef.

Reason for revert: Make job voting again

Change-Id: Ie3583682ec0d7a55cd9e8bedde9f51550b7c1840
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-08-18 13:21:16 +00:00
Michal Nasiadka
5ee56bb87e CI: Switch centos 10 nodeset to centos 10
9 was used as an interim solution when OpenDev did not support it.

Change-Id: If6101d99c216a9b1142bfdf194f7a053730e28da
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-08-18 13:16:57 +00:00
Alex-Welsh
ed094e0af4
Bump libvirt exporter
Bumps libvirt exporter source from v1.6.0 to v2.2.0. This fixes some
metrics that were lost when the exporter was changed from the old
"tinkoff" source to "inovex".

See also Icc8a3651d601ab45d448c9d252ca6155219d21cf

Closes-Bug: #2120639

Change-Id: Ib738325603173157b4c482f9de6d5d9cea0b758a
Signed-off-by: Alex Welsh <alex@stackhpc.com>
2025-08-14 14:25:06 +01:00
Zuul
c40cc8c2ef Merge "Revert "mariadb: pin to 10.11.13"" 2025-08-12 15:09:32 +00:00
Michal Nasiadka
e77d2ba794 Revert "mariadb: pin to 10.11.13"
This reverts commit e478adcbe6.

Reason for revert: mariabackup fixed

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

Change-Id: Ib694d3be0d2a199469690a01ba17a3349f3802b1
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-08-12 07:18:23 +00:00
Michal Nasiadka
87678d014f Revert "Switch to 2025.1 sources"
This reverts commit 0733a13d7b.

Reason for revert: switch back to master

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

Change-Id: If888500a791c66a592f17aa2be1f3784ee009a91
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-08-12 06:23:54 +00:00
Zuul
82b52bee0a Merge "CI: use opendevmirror for debian/ubuntu builds" 2025-08-08 12:48:00 +00:00
Zuul
d066f4bfe0 Merge "heat: Ensure log files are owned by heat user" 2025-08-08 08:17:37 +00:00
Pierre Riteau
e478adcbe6 mariadb: pin to 10.11.13
Closes-Bug: #2119954

Change-Id: I1e334b47c6ab16eb032458141faae55cf39e3eb4
Signed-off-by: Pierre Riteau <pierre@stackhpc.com>
2025-08-07 16:22:16 +02:00
Zuul
998f34be85 Merge "manila: Drop copying of wsgi files" 2025-08-07 13:18:21 +00:00
Zuul
946a4133a9 Merge "keystone: Add local wsgi file" 2025-08-07 11:30:48 +00:00
Zuul
8dbb71b70c Merge "ironic: Stop copying rootwrap since Ironic dropped it" 2025-08-07 09:31:13 +00:00
Michal Nasiadka
fa487adcf0 manila: Drop copying of wsgi files
They have been removed with Icaba9424862b883388bf68d2c3d48138b7b906b0

Not creating local versions like with keystone because Kolla-Ansible
does not use WSGI for Manila yet.

Change-Id: Ia34d848d8641e43681c602c9c4433364e8be1d92
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-08-07 09:30:18 +00:00
Bartosz Bezak
6ec52073b6 CI: use opendevmirror for debian/ubuntu builds
Depends-On: https://review.opendev.org/c/opendev/system-config/+/956760

Change-Id: I136bb702b20e941611dd90830e81c9d358a2e355
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-08-07 11:20:12 +02:00
Zuul
9782b68982 Merge "Copy aodh's api-paste to /etc as default" 2025-08-07 09:16:21 +00:00
Zuul
a9fd56138c Merge "masakari: Ensure log files are owned by masakari user" 2025-08-07 09:16:17 +00:00
Zuul
f48e1b40f2 Merge "collectd: Deprecate support" 2025-08-07 08:58:16 +00:00
Zuul
186a9ba14c Merge "telegraf: Deprecate support" 2025-08-07 08:58:12 +00:00
Michal Nasiadka
bbc842720c keystone: Add local wsgi file
It has been removed with I9fa7cd60bf27768db06f69681675fce2e55712af

Change-Id: Ib42be3d56bdb64247ac6f17b8ac1f1baa873f475
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-08-07 07:50:14 +00:00
Zuul
5563c32e65 Merge "send empty X-Registry-Auth for anonymous pushes" 2025-08-06 15:13:35 +00:00
Michal Nasiadka
63c4202d20 ironic: Stop copying rootwrap since Ironic dropped it
See I0a8e26e8990eae8108537541159f7810d35b70f1

Change-Id: I95500612168871454ce269b3562a8daccdf4de4f
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-08-06 13:55:46 +00:00
Bartosz Bezak
ddac7ca1ed send empty X-Registry-Auth for anonymous pushes
Since Docker 28.3.3 the daemon rejects a push that carries no
`X-Registry-Auth` header [1]. The SDK already sets this header when it
finds credentials, so the breakage happens only on anonymous pushes.

During `PushTask.push_image()` we now check whether the SDK can resolve
credentials for the target registry; if it cannot, we inject
`auth_config={}`, causing the SDK to send the minimal "{}" header that
satisfies the daemon while leaving authenticated pushes unchanged.

Drop this addition when [2] is fixed.

[1] https://github.com/moby/moby/pull/50371
[2] https://github.com/docker/docker-py/issues/3348

Closes-Bug: #2119619

Change-Id: I7a2f3fce223afd74741b40bf62836b325fca5b19
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-08-06 11:50:39 +02:00
Bartosz Bezak
f25cf12455 update debian release in support matrix
it was omitted in Caracal cycle

Change-Id: I913208b09771bc18ad3214d7518a837d762f6c33
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-08-04 14:24:24 +02:00
Zuul
9f24ce63d0 Merge "change erlang arm64 repo to rhel based" 2025-07-28 12:01:26 +00:00
Bartosz Bezak
ac1969542d change erlang arm64 repo to rhel based
centos stream diverged too much
nothing provides libcrypto.so.3(OPENSSL_3.4.0)(64bit)
needed by erlang-26.2.5.14-1.el9.aarch64

Change-Id: I3a0aa82d0903b341156c2fce68393cc4031e7728
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-07-25 11:10:03 +00:00
Michael Still
4f98cf5ba9 Remove temporary fix for skyline-apiserver.
skyline-apiserver's Dockerfile has a comment around removing a line when
I2dababab7c79e7c37983c1702178419c88e014a5 merges. Given the
referenced change has now merged, remove the TODO and the temporary
fix.

Change-Id: If2b9aff8f1900fb98e038972e775c3eddaad373f
Signed-off-by: Michael Still <mikal@stillhq.com>
2025-07-25 20:04:16 +10:00
Bartosz Bezak
7591bb27c6 CI: Bump ansible-lint to <26
to be in sync with kolla-ansible
also add pin to ansible-core

Change-Id: Idf35af1b776d0e908fd328f0ec5eb825f1f2ca9c
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-07-23 11:56:47 +02:00
Grzegorz Koper
a4d8efeba3 [base/rhel] Disable docker-ce repository in base file
Enabling repo should be handled by enable_extra_repos macro

Closes-bug: #2117249
Change-Id: I92af980a4fd63540297b6bde0d52b2dfd02f72ce
Signed-off-by: Grzegorz Koper <grzegorzk@stackhpc.com>
2025-07-18 14:44:50 +02:00
Zuul
5d2dfc0eb9 Merge "Move to CentOS Stream 10" 2025-07-17 11:54:34 +00:00
Michal Nasiadka
9e36b89766 Move to CentOS Stream 10
Known missing packages:
- mod_auth_mellon - missing SAML support in Keystone/Horizon - built in Kolla COPR
- glusterfs-fuse in manila-share - built in Kolla COPR
- collectd/telegraf - no opstools repository
- redis - needs a switch to valkey
- python3-ethtool - not required for neutron-mlnx-agent since 6 years [1]

Building packages in Kolla COPR is a temporary solution until these show up
in EPEL10.

[1]: Id2cae3ac9ff049e9fc8225551f99e1e99a87fc65

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

Change-Id: I7074fabcf95184fcfd2561648ae1e05acfb0bc11
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-07-16 14:05:50 +00:00
Michal Nasiadka
edd9933fde masakari: Ensure log files are owned by masakari user
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/954903

Change-Id: Icc2fe528956a0fb47dd66344d414c81212705480
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-07-14 08:10:11 +00:00
Michal Nasiadka
b0714b2e98 heat: Ensure log files are owned by heat user
Change-Id: I4567aaf352f1f590af2fa7d067768799adad64d1
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-07-14 07:37:03 +02:00
Michal Nasiadka
ba2b4bb564 CI: Drop publishing to DockerHub
Change-Id: I9d1f24b98f1d7c8f29b0dba45105b0263f961ca5
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
2025-07-11 09:42:58 +02:00
Zuul
7aef10849b Merge "ovn: Fix log permissions" 2025-07-10 14:31:08 +00:00
Zuul
d2d9c9b3b6 Merge "rabbitmq: fix Erlang pin in Debian/Ubuntu" 2025-07-04 15:00:49 +00:00
Zuul
2bb2281896 Merge "Enable EPEL repo for Ceph deps in glance and gnocchi" 2025-07-04 14:36:25 +00:00
Zuul
605f64b2e2 Merge "CI: add kolla-ansible zun job to tests" 2025-07-04 14:36:21 +00:00
Zuul
cb6ae7b6c5 Merge "zun: add wsgi script to use module paths" 2025-07-04 12:06:35 +00:00
Bartosz Bezak
512d8928c4 rabbitmq: fix Erlang pin in Debian/Ubuntu
Previous apt preference missed the epoch and sub-packages, so no
pinning was applied.

Closes-Bug: #2115893

Change-Id: I5c765db0508a2ffec90ba149bb5ea9b90dd31bc8
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-07-04 10:32:41 +00:00
Bartosz Bezak
62a69190cb Enable EPEL repo for Ceph deps in glance and gnocchi
Ceph Reef client dependencies now require EPEL repo on EL9.
See thread here [1].

[1] https://lists.centos.org/hyperkitty/list/devel%40lists.centos.org/thread/BZM3RO2LNAMB47FBT2QO3ZOSGBHPCO3V/

Closes-Bug: #2115448

Change-Id: I87e4135425e721f2f750402b3fcc6404643a3bd3
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-07-04 10:31:31 +00:00
Bartosz Bezak
fb7a43b1d1 CI: add kolla-ansible zun job to tests
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/954100

Change-Id: I528a141e1a3ff09e820be803c3467952d77b13c6
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-07-04 10:31:23 +00:00
Bartosz Bezak
bba9c3dd55 zun: add wsgi script to use module paths
zun has moved to module paths [1].

[1] https://review.opendev.org/c/openstack/zun/+/953551

Change-Id: I81ad9c5bc404adfdc31eb50fd98e636ae5312eef
Signed-off-by: Bartosz Bezak <bartosz@stackhpc.com>
2025-07-04 10:01:14 +02:00
Zuul
4c1ffa93ac Merge "docs: Update contributor guide" 2025-07-04 05:44:42 +00:00
Zuul
b56331ca8e Merge "Fix glance-api: add missing lsscsi package" 2025-06-27 16:27:29 +00:00
Michal Nasiadka
5121ff7679 ovn: Fix log permissions
ovn is running as root, and fluentd can't read it's log files,
so we need to precreate these.

Closes-Bug: #2115244

Change-Id: Icb0e47cf95a67cb4585c71f863e542bc59ff5009
2025-06-27 05:48:23 +00:00
Zuul
fa20e57464 Merge "keystone: Remove ARGS to support uwsgi" 2025-06-25 08:11:37 +00:00
Zuul
466fbc53e6 Merge "rabbitmq: Improve healthcheck script output" 2025-06-23 13:55:19 +00:00
Zuul
c840d4dc62 Merge "Remove the OVN exporter for Prometheus" 2025-06-23 11:00:38 +00:00
Zuul
1d2decfa42 Merge "Fix kolla-set-configs --check to detect state mismatch" 2025-06-23 09:02:21 +00:00
Michal Arbet
cf3c65fef7 Fix kolla-set-configs --check to detect state mismatch
If a configuration file is tracked in the state file
but no longer appears in config.json, it should either be
restored or removed.

This patch introduces a new exception StateMismatch and
updates execute_config_check() to detect such cases. If
any destination path is present in the defaults state but
missing from config.json, we now raise StateMismatch.

A dedicated unit test has been added to verify
this behavior.

Closes-Bug: #2114173

Signed-off-by: Michal Arbet <michal.arbet@ultimum.io>
Change-Id: I6e0b4aaa5722990e3ac647578023f474db3d4381
2025-06-19 14:23:35 +02:00
Michal Nasiadka
2a941f8268 docs: Update contributor guide
Remove references to blueprints and kolla-ansible-core Gerrit group.

Change-Id: I56dbc9f8599075b7cc87726f0507c63e74723e0f
2025-06-19 10:57:49 +02:00
Maksim Malchuk
bc018d398b
Add rsync package to the nova-ssh container
This change fixes the issue with absent rsync package when
'remote_filesystem_transport = rsync' is enabled in nova_compute.

Closes-Bug: #2113926
Change-Id: Ie6719928e4ec2901d661f44c9f259add35afa269
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2025-06-13 18:45:41 +03:00
Michal Arbet
0d2429af23 Copy aodh's api-paste to /etc as default
Normally, for other images, we simply copy
etc/*, but Aodh has its api-paste located
elsewhere. This patch copies the default
Aodh api-paste into /etc/aodh/.

Signed-off-by: Michal Arbet <michal.arbet@ultimum.io>
Change-Id: I5eccc1b994c537e1d1adea21520d045674a9d41c
2025-06-11 17:31:22 +02:00
Michal Nasiadka
bbe23bd107 rabbitmq: Improve healthcheck script output
We've seen multiple occassions of all these healthcheck commands
not being able to be executed in 30s after the switch to RMQ 4.1.
Let's put more information in the Docker/Podman healthcheck logs.

Change-Id: I4b1b54983144f5514a6703c255d2cb4fa052a0fb
2025-06-11 13:25:39 +00:00
Zuul
2319d12145 Merge "Remove dibbler from neutron-l3-agent" 2025-06-10 16:31:20 +00:00
Michal Nasiadka
fb0ebb2380 collectd: Deprecate support
Change-Id: I26550599b8ea7ea17687475154b3070aaed659e9
2025-06-09 17:00:47 +00:00
Michal Nasiadka
e36dd064a9 telegraf: Deprecate support
Change-Id: Ib95fc21ed380d0eccc5ee3434cebc348c1088352
2025-06-09 18:42:03 +02:00
Michal Nasiadka
d1b54b5214 keystone: Remove ARGS to support uwsgi
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/952093

Change-Id: I38688e442b995d38e9826fbb545b6ab09e06bdf5
2025-06-09 08:56:33 +00:00
Doug Szumski
0aaefd2dfe Remove the OVN exporter for Prometheus
Since this exporter is no longer developed, and is not used in Kolla
Ansible, remove it immediately. A replacement has been proposed in
change #951971.

Change-Id: Ie47aed221d04bbb2b50ccfbd7c398e6ab6022442
2025-06-06 17:40:23 +01:00
Zuul
a90a8893c8 Merge "Revert "[release] Use RDO's Epoxy packages"" 2025-06-05 22:28:18 +00:00
Alex-Welsh
6a1d383c48
Remove dibbler from neutron-l3-agent
The dibbler-client package has been removed from upstream Rocky repos,
breaking neutron-l3-agent container image builds on RL9. Since the
2025.1 release, package is no longer used in Neutron has been removed
because the project is stale and functionality was untested [1].

This change removes the package from the image build for all
distributions.

[1] https://review.opendev.org/c/openstack/neutron/+/934283

Closes-Bug: #2112575
Change-Id: I35b233a499c6bf1861b376fc441dc8081cfaf5d6
Signed-off-by: Alex Welsh <alex@stackhpc.com>
2025-06-05 16:25:43 +01:00
Michal Arbet
b643e8f9fd Fix ProxySQL rule sanity check to support username-based routing
Kolla Ansible now generates ProxySQL query rules not only based on
the schema name (schemaname), but also on the username. This is
needed to properly route queries that are executed before a database
schema is selected, such as `SET AUTOCOMMIT` or `ROLLBACK`.

To support this, the ProxySQL config sanity check must correctly
deduplicate rules based on both `schemaname` and `username`, and
avoid false positives when both types are used simultaneously.

This change adjusts the logic in `kolla_proxysql_config_sync` to:
- recognize rules by key `schema:<schemaname>` or `user:<username>`
- assign unique rule IDs only to truly distinct rules
- log and skip exact duplicates with appropriate context

This fix is required to support the Kolla Ansible patch below.

Needed-By: https://review.opendev.org/c/openstack/kolla-ansible/+/951599

Change-Id: I99acd1984ee555a5b6c731e6ee460a33677060d0
2025-06-04 10:24:54 +02:00
Zuul
9a5315e9d2 Merge "Update OpenSearch and OpenSearch Dashboards to version 3.x" 2025-06-03 14:21:44 +00:00
Zuul
627c451ebe Merge "Bump proxysql to 3.0.x" 2025-06-03 09:54:07 +00:00
Zuul
7db1ac8f6d Merge "rabbitmq: Update to 4.1" 2025-06-02 23:16:00 +00:00
Zuul
cea5658fdb Merge "kolla-toolbox: Fix apt_preferences_rabbitmq.ubuntu link" 2025-05-31 05:25:47 +00:00
Zuul
475f81f62d Merge "debian: Use bookworkm suite for rabbitmq APT repo" 2025-05-31 00:27:04 +00:00
Zuul
e589707953 Merge "debian: Use Epoxy extrepo" 2025-05-31 00:25:57 +00:00
Zuul
4a81f224b8 Merge "[base] Ensure full control over APT sources for Ubuntu" 2025-05-31 00:25:53 +00:00
Zuul
ba805a4989 Merge "[mariadb] Fix incremental backup using correct base dir" 2025-05-31 00:23:37 +00:00
Dr. Jens Harbott
2b42c958ef zuul: make failing job temporarily non-voting
We have multiple CI issues currently, make the
kolla-ansible-debian-upgrade job non-voting so that we can merge fixes
in order.

Signed-off-by: Dr. Jens Harbott <harbott@osism.tech>
Change-Id: I2d7137f3d01eb28f7693113fb690069e2760820f
2025-05-30 20:35:52 +02:00
Piotr Milewski
bf86273caf Update OpenSearch and OpenSearch Dashboards to version 3.x
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/949478

Change-Id: I4507fb60d361ea504459a4b502d6f6c42a327064
2025-05-30 18:07:48 +02:00
Michal Arbet
a4f68e1889 Bump proxysql to 3.0.x
This patch bump proxysql 2.7.x to 3.0.x

Change-Id: I30d5093c1997b1ac99a762983248b8d29e677ba3
2025-05-30 18:07:48 +02:00
Michal Arbet
c930c9fb9c debian: Use bookworkm suite for rabbitmq APT repo
Change-Id: Ifd664de82a81830eeda8ccc019b22ee93768635e
2025-05-30 18:07:48 +02:00
Michal Nasiadka
ede71c02c4 debian: Use Epoxy extrepo
Change-Id: I1ba004df309667460aa152928f789aaf6be6051f
2025-05-30 18:07:48 +02:00
Michal Arbet
b5849adc45 [base] Ensure full control over APT sources for Ubuntu
Ubuntu images were occasionally failing to build due to
unavailability or slowness of the official Ubuntu security
repositories. Although Kolla uses `mirror://` URLs to
leverage Ubuntu mirror infrastructure, the original
`/etc/apt/sources.list.d/ubuntu.sources` file was still
present, causing the system to fallback to default sources.

This commit aligns Ubuntu behavior with Debian by
explicitly removing the distro `.sources` file and relying
solely on the sources configured by Kolla. This ensures
consistent and reproducible builds both in CI and
on local environments.

Closes-Bug: #2112140

Change-Id: I00bcb30662bb12ed8711b28a64ef1941dcce893a
2025-05-30 18:07:48 +02:00
Michal Arbet
bcf37e5016 [mariadb] Fix incremental backup using correct base dir
The original script used --incremental-history-name and compressed
full backups as gzip streams. This failed because mariabackup expects
an actual decompressed base directory for incremental backups.

This patch:
- Decompresses the latest full backup into a temporary directory
- Uses that as --incremental-basedir
- Aligns the backup flow with official Mariabackup documentation:
  https://mariadb.com/kb/en/incremental-backup-and-restore-with-mariabackup/

This makes the incremental process reliable and fully supported.

Closes-Bug: #2111620

Change-Id: I562ce5e54752015863a20bf113bce74a69e02331
2025-05-30 18:07:48 +02:00
Joachim de Groot
aa2e504a70 Fix glance-api: add missing lsscsi package
Closes-Bug: #2111828
Change-Id: I8e20c77a8f1538162fc1dac9dc92c837348a09f4
2025-05-30 12:56:31 +02:00
Zuul
32d2f1719a Merge "Drop environments for nose" 2025-05-27 07:34:44 +00:00
Takashi Kajinami
2666f1929b Drop environments for nose
... because stestr is now used instead of nose.

Also drop the VIRTUAL_ENV environment which is now automatically set
by tox.

Change-Id: Ied6e20f5b1dc5de384f29d317bec998e86f26efa
2025-05-27 16:04:20 +09:00
Michal Nasiadka
ff373463c4 CI: Drop centos9/rocky9 testing
We'll readd it later when introducing centos10 and rocky10.

Change-Id: I555deccfd7b58c05d0b62d7d200dcec97b2e6f7d
2025-05-22 17:57:21 +02:00
Michal Nasiadka
e13801b4a1 Fix mock_open() expectations for Python 3.13+
Python 3.13 introduces a behavior change in unittest.mock.mock_open(),
which now calls close() when exiting the context manager
as described in bpo-44185 [1]. This causes additional mock calls to appear,
breaking strict mock_calls assertions.

This patch fix tests and add compatibility for Python 3.13.

From mock documentation [2]:
  "bpo-44185: unittest.mock.mock_open() will call the close() method
   of the file handle mock when it is exiting from the context manager.
   Patch by Samet Yaslan."

[1] https://bugs.python.org/issue44185
[2] https://mock.readthedocs.io/en/latest/changelog.html

Change-Id: Ib8e2a8a20a828c4c69deedd307c9b726f51489f8
2025-05-21 14:58:57 +02:00
Michal Arbet
0006320d98 Fix lines in documencation [trivial]
Change-Id: I5295bba1e11f84217bb2b28ea4d92cb47812b778
2025-05-20 18:54:46 +02:00
Michal Nasiadka
c9b665fa8a rabbitmq: Update to 4.1
Change-Id: I4f852176918531ea19210961fd1b4fa63bc0ecca
2025-05-20 13:50:52 +02:00
Michal Nasiadka
be41ef297f kolla-toolbox: Fix apt_preferences_rabbitmq.ubuntu link
Change-Id: I1f9bc50b71f55dd5f579d1536a7ab63d5d554d1e
2025-05-20 13:50:27 +02:00
Zuul
8af831c75a Merge "Revert "mariadb: pin to 10.11.11"" 2025-05-18 11:22:56 +00:00
Michal Nasiadka
431b4ae3e9 Revert "mariadb: pin to 10.11.11"
This reverts commit 535b2f270f.

Reason for revert: 10.11.12 is revoked upstream

Change-Id: I0a8cdc232e5b46cb47e4a3e1b0af7b2402103690
2025-05-15 05:08:37 +00:00
Michal Nasiadka
d21cab3a1e Revert "[release] Use RDO's Epoxy packages"
This reverts commit 64f171ccfa.

Reason for revert: Let's switch to master

Change-Id: I28f474015ffd000a3c2cf4c461c3c2f2b8959b0b
2025-05-14 14:04:38 +00:00
OpenStack Release Bot
d430850a90 Update master for stable/2025.1
Add file to the reno documentation build to show release notes for
stable/2025.1.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2025.1.

Sem-Ver: feature
Change-Id: I4842c6c95633743dc949e3d19d6c5e295c89af33
2025-05-09 14:12:27 +00:00
Michal Nasiadka
a01e339edc CI: Set upgrade jobs back to voting
Change-Id: Ida32d4fc0b182ef24a694ed08c7f032976eedcd5
2025-05-08 20:26:31 +02:00
Zuul
e7bd46dad0 Merge "CI: Fix pip mirror multiline" 2025-05-08 07:45:26 +00:00
Michal Nasiadka
535b2f270f mariadb: pin to 10.11.11
Temporarily disable upgrade jobs to get epoxy rc1
branched this week.

Closes-Bug: #2110122

Change-Id: If301b9ebd7d0dc38bea4d60467e8e80a7a49825d
2025-05-07 19:21:28 +00:00
Zuul
02c54efb42 Merge "Allow specification of a key type" 2025-05-06 07:54:18 +00:00
Zuul
03f4951077 Merge "bifrost: fix creation of python3 lib symlink" 2025-05-06 07:54:14 +00:00
Zuul
e0b7cb9d8b Merge "Enabling support for Thales Luna user id and group id." 2025-05-06 07:45:46 +00:00
Michal Nasiadka
06ac69bd87 CI: Fix pip mirror multiline
Change-Id: Ic75fdaedfa62816fae0cc0b7924425b574feb1ee
2025-05-06 06:06:59 +00:00
Zuul
acbaec3ee1 Merge "neutron: Add agents wrappers in the neutron-base image" 2025-05-05 17:18:13 +00:00
Michal Nasiadka
a101add561 neutron: Add agents wrappers in the neutron-base image
These scripts have been based on TripleO version of the
same feature.

Unfortunately due to the fact that Neutron/python is
stripping env vars when it's running dnsmasq/haproxy/etc
processes - we need to do the ,,config'' handling in
copy-wrappers script.

Change-Id: I679ac66186d457ae53f89469fe22c5662089019a
2025-05-05 07:29:58 +00:00
Pierre Riteau
e33902c30c bifrost: fix creation of python3 lib symlink
When {{ venv_path }}/lib/python3 already exist and we run the ln
command, we end up with:

    /var/lib/kolla/venv/lib/
    ├── python3 -> python3.9
    ├── python3.12
    │   └── site-packages
    └── python3.9
        ├── python3.12 -> python3.12
        └── site-packages

Instead, it should be:

    /var/lib/kolla/venv/lib/
    ├── python3 -> python3.12
    ├── python3.12
    │   └── site-packages
    └── python3.9
        └── site-packages

Remove the existing link first to ensure it is created properly.

Change-Id: I42dd2490d14070074fe1fa7ae9e0a4cbf095b06f
2025-05-02 20:11:38 +02:00
Mauricio Harley
d85bc282b9 Enabling support for Thales Luna user id and group id.
The new client software version requires the use of a specific group
called "hsmusers", and for consistency reasons, we are specifying both,
the user id and the group id, and inserting the Barbican username inside
of such a group.

More information can be found on
https://www.thalesdocs.com/gphsm/luna/7/docs/pci/Content/install/client_install/linux_install.htm

Change-Id: Ib7d0c879b3741ca472cd0bbf3a9a88a0fee25cac
Signed-off-by: Mauricio Harley <mharley@redhat.com>
2025-05-02 10:20:00 +00:00
Zuul
aa44d7a9d1 Merge "Fix preparation of /tftpboot for ironic-pxe" 2025-04-28 11:29:56 +00:00
Zuul
2d4305737e Merge "opensearch: remove example certs and securityadmin_demo.sh" 2025-04-28 09:38:35 +00:00
Jay Jahns
f1248fe58a Allow specification of a key type
Letsencrypt allows using a specific key type for certificates. If
the user has an internal letsencrypt mechanism, such as Vault Acme,
then they have to provide a specific key type as the default is
not supported.

This change will allow a user to specify a key type and use the lego
default in the event that they don't specify it.

Partial-Bug: 2087860
Change-Id: I83e618a861b4d51b6a7893f79c50fdfc35228891
2025-04-24 08:10:08 -05:00
Zuul
e9d3176144 Merge "Upgrade Prometheus to v3" 2025-04-24 08:36:06 +00:00
Zuul
4203f2531d Merge "Remove deprecated AngularJS plugins from Grafana" 2025-04-22 19:18:03 +00:00
Piotr Parczewski
ac79bc9b67 Upgrade Prometheus to v3
Needed-by: https://review.opendev.org/c/openstack/kolla-ansible/+/945611

Change-Id: I4113976db743d3c5c4ff62f2876e224888f05a36
2025-04-22 16:32:38 +00:00
Michal Nasiadka
3eb606a36e opensearch: remove example certs and securityadmin_demo.sh
Change-Id: Iceb16a5cf2ebc64effe30bbc9144144cdffebab0
2025-04-18 08:43:03 +00:00
Jack Hodgkiss
bd42e9d435 Update prometheus alertmanager to newest available version
* prometheus-alertmanager: 0.28.0 -> 0.28.1

Change-Id: Iec5b936ae77f2d8298803fbfe50f55b2ed69f4b3
2025-04-17 23:17:20 +01:00
Zuul
a0af54161e Merge "rabbitmq: Bump to 4.0" 2025-04-11 08:35:39 +00:00
Michal Nasiadka
74843405de rabbitmq: Bump to 4.0
Change-Id: If15ba52acfd305aa9bbae382fe7429c11041e93f
2025-04-10 16:52:45 +02:00
Matt Anson
80d931982a Fix preparation of /tftpboot for ironic-pxe
Copy aarch64 snponly.efi to /tftpboot during bootstrapping
of Centos- and Rocky-based ironic-pxe.

Don't use $KOLLA_BASE_ARCH when symlinking to
/tftpboot/ipxe.efi, because an aarch64 variant of this
binary doesn't exist, just x86_64.

Change-Id: Ie19fcb441a2e54a60762e5c8483487b713a29ddd
2025-04-08 21:04:04 +01:00
Zuul
e7391f65bd Merge "bifrost: bump Ansible version to 11" 2025-04-04 01:06:22 +00:00
Grzegorz Koper
c8fdb5550b bifrost: bump Ansible version to 11
Depends-on: https://review.opendev.org/c/openstack/kolla-ansible/+/945498
Change-Id: I0e7ce418508f6684a20539c6b6129a134f91c71c
2025-04-02 10:30:46 +02:00
Zuul
72e0d38bff Merge "Add libnetfilter-log to l3 agent container" 2025-04-01 01:31:51 +00:00
Zuul
92d787628d Merge "Added libvirt dependency to nova-libvirt debian based containers" 2025-04-01 01:31:48 +00:00
Zuul
92f4325486 Merge "Add support for aarch64 ipxe to ironic-pxe image" 2025-03-31 11:42:45 +00:00
Zuul
78c5638f37 Merge "neutron: Add docker clients for ML2/OVS improvement" 2025-03-28 20:23:14 +00:00
Zuul
ec782ff297 Merge "CI: Sort alphabetically zuul templates" 2025-03-27 13:52:08 +00:00
Zuul
cba22d4235 Merge "Change Bifrost Python upper-constraints source" 2025-03-27 13:12:48 +00:00
Matt Anson
16b3223d8c Add support for aarch64 ipxe to ironic-pxe image
Support aarch64 ipxe only when using Ubuntu and Rocky
Linux base images, as the Debian ipxe package does not
provide a suitable aarch64 ipxe binary.

Change-Id: If5610148fc80acf13d4eb79fef78349764f08a17
2025-03-27 11:33:13 +00:00
Zuul
0b3945ad1b Merge "Deprecate bifrost" 2025-03-26 15:31:28 +00:00
Zuul
e5e308f034 Merge "Switch to 2025.1 sources" 2025-03-26 14:05:01 +00:00
Michal Nasiadka
6da05fc6d5 neutron: Add docker clients for ML2/OVS improvement
Docker does not support running a container in a given
network namespace (netns) so we need a client installed
in the Neutron container images.

Related-Bug: #1891469

Change-Id: I5349449183dbb7f4ec2042a21526076fb42591b3
2025-03-26 06:16:00 +00:00
Zuul
7cbcfb3337 Merge "Opensearch and opensearch-dashboard image size reduction" 2025-03-25 21:10:02 +00:00
Michal Nasiadka
0733a13d7b Switch to 2025.1 sources
Change-Id: If0cd6444e5d0c898d199a98204588f8ffa4351b9
2025-03-25 17:58:33 +00:00
Michal Nasiadka
a09ba2027c Deprecate bifrost
It has long been sort of an abomination of the container world,
let's use this deprecation notice as a motivation to work out
a kolla-ansible mechanism utilising regular ironic container
images to deploy standalone ironic.

Change-Id: I6b4e6edc110eebb524396138d24b873cb4ea6726
2025-03-25 18:48:06 +01:00
Zuul
71fd3920f7 Merge "kolla-toolbox: Bump ansible-core to 2.18" 2025-03-25 16:38:58 +00:00
Michal Nasiadka
057e7ad604 CI: Sort alphabetically zuul templates
Change-Id: I0c001c77bae17eace8c9ca9d94828d04101752fe
2025-03-25 17:29:12 +01:00
Zuul
7667e24931 Merge "Remove swift container images" 2025-03-24 14:07:09 +00:00
Piotr Milewski
47a6ad020d Opensearch and opensearch-dashboard image size reduction
When building an image, the RUN command grants
permissions which causes the previous layer
to be copied.

During the test, the image was reduced from 2.84GB to 1.57GB

Closes-Bug: #2104007

Change-Id: I7d2367d4c277287f4db2885f5720a35d934f94b7
2025-03-24 12:37:43 +00:00
Bartosz Bezak
dc0fbd20a1 CI: Switch aarch64 builds to native platform
Change-Id: I18cea367e94ff2433346c1b388d606e41b1831ad
2025-03-24 08:20:06 +00:00
Bartosz Bezak
9c6f6ae2d9 tests: Add cross-arch test for etcd
Ensure that when building etcd with --base-arch aarch64, Kolla
uses the arm64 tarball instead of amd64.

Related-Bug: #2103810

Change-Id: I6248cb6646b2b0c7af1c29f9a0a244cef1c4cf05
2025-03-21 17:06:48 +00:00
Bartosz Bezak
915189d10b fix sources.py based cross-arch builds
Derive debian_arch from base_arch by default when not set by the user.
This ensures that cross-architecture builds correctly download
the appropriate binaries, while preserving any explicit user override.

Closes-Bug: #2103810

Change-Id: I11b7e19ac3a12147138a98fc1e030767f70b44c9
2025-03-21 17:06:14 +00:00
Zuul
ad300f6dae Merge "Add mtools package to ironic-conductor image" 2025-03-21 15:34:35 +00:00
Michal Nasiadka
f2fba3842c Remove swift container images
Change-Id: I05a96f27b47a0f87bcf435872dd08ec0927232e3
2025-03-21 09:37:17 +00:00
Michal Nasiadka
7a0c639da3 nova/aarch64: Fix qemu-efi build failures
It probably has been omitted in Ubuntu 24.04 introduction since
aarch64 build jobs have not been stable.

Removing from nova-compute since it's already in nova-base,
nova-libvirt's parent is base - so updating to qemu-efi-aarch64

Change-Id: Idae2e87bfc8a556a090085e46f96d11279080f0f
2025-03-20 12:34:16 +00:00
Grzegorz Koper
e1fff62525 kolla-toolbox: Bump ansible-core to 2.18
Change-Id: I0bdef4252d4f2850d2b1a40feac3c373e5c453e7
2025-03-20 12:56:36 +01:00
Zuul
830a109225 Merge "Ironic: Add ESP image for UEFI virtual media" 2025-03-20 11:00:36 +00:00
Zuul
d25e9a7a70 Merge "debian: Use Dalmatian extrepo release" 2025-03-19 20:32:39 +00:00
Bartosz Bezak
5025ab688b Ironic: Add ESP image for UEFI virtual media
UEFI virtual media boot requires an ESP image [1].

[1] https://docs.openstack.org/ironic/2024.2/admin/drivers/redfish.html#virtual-media-boot

Change-Id: Ie8485a7098743e1d736145e8fd9441cf13c929d7
2025-03-19 14:35:58 +01:00
Zuul
9a4eeaab59 Merge "CI: Add qemu-user-static back" 2025-03-19 12:48:39 +00:00
Michal Nasiadka
c6700a4045 debian: Use Dalmatian extrepo release
Change-Id: I954106dc32b4c08604d5c40e00fe53e5bb18b266
2025-03-17 16:10:39 +01:00
Michal Nasiadka
4c9113f964 CI: Add qemu-user-static back
It was misssed when moving kolla-build-deps to a role

Change-Id: Ic342d9d96dfd8ea03f89cdf04ff28e4a7070a54c
2025-03-13 16:01:09 +01:00
Grzegorz Koper
64f171ccfa [release] Use RDO's Epoxy packages
Change-Id: I86a894398f5a41e996735f06fe170fc5e305abbf
2025-03-13 15:33:19 +01:00
Mickael Razzouk
09f706bc2e Added libvirt dependency to nova-libvirt debian based containers
fix: added mdevctl to nova-libvirt debian based containers, mdevctl is an
optional dependency of libvirt needed in 2024.2 for nova vGPU feature.

Closes-Bug: #2088055
Change-Id: Ifa92999672ed267ce877c492c9140fbee271b8b3
2025-03-13 14:19:05 +00:00
Dr. Jens Harbott
d2837d8538 Add mtools package to ironic-conductor image
In certain deployments ironic-conductor needs to create floppy images to
mount in virtual media. This needs the mtools package installed.

Change-Id: I00ccc47f7a993f13e2b2feb3f6a2565dad32b80c
2025-02-26 12:57:11 +01:00
Grzegorz Koper
9efdcc01ca [release] Use UCA Epoxy
Change-Id: I6c15cf0fd7b8f1cc3339936c58ad8a8581cfc570
2025-02-25 10:55:38 +01:00
Zuul
48423b908f Merge "CI: Use ansible-lint for CI roles and playbooks" 2025-02-21 17:02:12 +00:00
Michal Nasiadka
498b793c86 CI: Add rocky support to process_build_logs.py
Change-Id: I57e05a235359547a4477dc869e92047818dc5c15
2025-02-21 11:59:16 +01:00
Michal Nasiadka
af632db5d1 CI: Use ansible-lint for CI roles and playbooks
Removing dbus-python deps because now a-c-k handles that.

Depends-On: https://review.opendev.org/c/openstack/ansible-collection-kolla/+/942179

Change-Id: I97a97da73a7ccb27789e979656867e4adfe8a633
2025-02-20 10:59:30 +00:00
Michal Arbet
405f950193 Remove Git remote origin after cloning sources
When kolla is cloning a Git repository during the build
process, the `.git/config` file retains the remote
origin URL, which may expose sensitive credentials if
authentication tokens are embedded in the URL.

This fix ensures that the remote is removed after cloning
to prevent unintended exposure of credentials.

Closes-Bug: #2098904
Change-Id: Iec21fc2363e03133ec77326da7392bc25b40132a
2025-02-19 23:43:19 +01:00
Zuul
6d44736756 Merge "CI: Move pre tasks into roles" 2025-02-18 13:53:44 +00:00
Andriy Kurilin
cfa266a3a2 Allow to use configure_user macro for external templates
Commit 79a2342395 introduced an ability to
build 'in-house'/'not-built-in' projects with Kolla.

This commits extends this feature with an ability to use configure_user
macro for 'not-built-in' users.
The implementation is done the same way as for 'sources', i.e. engine
after registers new section structure as soon as it finds unknown
'<project>-user' section.

In addition, the documentation and CI are extended to cover
``--docker-dir`` option.

Change-Id: I690d9f3829083f2493bf286a1c45764b9699219b
2025-02-18 09:41:17 +01:00
Michal Nasiadka
96d6a94278 CI: Move pre tasks into roles
Change-Id: If5aa7371d14041d6e0efca866341be2894fd6f87
2025-02-17 13:52:34 +00:00
Zuul
2941ea2c7a Merge "Add ovn-sb-db-relay image with newer ovn-ctl" 2025-02-14 17:06:11 +00:00
Zuul
d332efe210 Merge "Adds missing nvme package in cinder-backup" 2025-02-11 11:38:46 +00:00
Michal Arbet
ed7c8399c4 Fix permissions for ironic metrics
This patch adds creation of metrics folder, set
permissions  and  SetGID bit.

Closes-Bug: #2097098
Change-Id: Ic46b895775edf5e5fb2b637be49e2de1eb4adf36
2025-02-07 08:49:31 +00:00
Michal Arbet
13d6a664f0 Install pycadf from pypi package
Previously, the `pycadf` package did not include
configuration files, so they were manually installed
from source. However, this was fixed in pycadf's upstream
in [1], allowing us to rely on the package itself.

Additionally, the `ceilometer_api_audit_map.conf` file
has been removed, as it was dropped in pycadf's upstream
commit here [2]

[1] https://review.opendev.org/c/openstack/pycadf/+/936741
[2] https://review.opendev.org/c/openstack/pycadf/+/930971

Change-Id: I022aa4c403f08385beb83b5d0c81f8abb42eb4a7
2025-02-06 13:43:24 +01:00
Seunghun Lee
4cab35b1a8 Change Bifrost Python upper-constraints source
Users can override the upper-constraints.txt by setting the source of
openstack-base in kolla-build.conf.

However, bifrost-base Dockerfile so far doesn't pass overridden
upper-constraints file to Bifrost install playbook resulting the
playbook not acknowledging it and just use upstream one.

This change sets the source of Bifrost upper-constraints to use
upper-constraints of openstack-base for consistency among all Kolla
images

With this, change the environment variable UPPER_CONSTRAINTS_FILE is
only affecting kolla-toolbox image.
Therefore, moved UPPER_CONSTRATINS_FILE variable example to the
``kolla_toolbox_pip_conf`` block of kolla-toolbox Dockerfile.

Additionally, updated 'Python packages build options' section of
documentation to represent latest method of changing Python package
related options (including this change).

Change-Id: I0a9c782ca1177ef84e4323cb1e5bfac0fb3f383c
2025-02-05 15:36:52 +00:00
Zuul
dbdc53fa8f Merge "Prometheus update all exporters to the latest versions" 2025-02-02 16:28:31 +00:00
Michal Arbet
ff55c29259 Bump pycadf version to 4.0.1
This patch also removing copy of
ceilometer_api_audit_map.conf file as it is
now removed [1].

[1] https://review.opendev.org/c/openstack/pycadf/+/930971

Change-Id: I7c086ed5da0e3713ac15aaeaceb38f4a05b84bf0
2025-01-31 15:47:38 +01:00
Piotr Milewski
0f5c679dc9 Prometheus update all exporters to the latest versions
prometheus-alertmanager: 0.27.0 -> 0.28.0
prometheus-blackbox-exporter: 0.24.0 -> 0.25.0
prometheus-cadvisor: 0.49.1 -> 0.49.2
prometheus-elasticsearch-exporter: 1.7.0 -> 1.8.0
prometheus-memcached-exporter: 0.14.2 -> 0.15.0
prometheus-mtail: 3.0.0-rc54 -> 3.0.8
prometheus-mysqld-exporter: 0.15.1 -> 0.16.0
prometheus-node-exporter: 1.7.0 -> 1.8.2
prometheus 2.50.1 -> 2.55.1

Co-authored-by: Piotr Parczewski <piotr@stackhpc.com>

Change-Id: I9359df23a41a600dd46dbc1812a54be57fd33f71
2025-01-30 14:27:02 +00:00
Zuul
5e24daa332 Merge "cinder: Fix log dir permission" 2025-01-29 14:23:50 +00:00
Zuul
aa0cf0216a Merge "swift: Deprecate for removal in 2025.2" 2025-01-24 17:00:18 +00:00
Zuul
1db94519c3 Merge "Fix genconfig" 2025-01-24 15:32:07 +00:00
Michal Nasiadka
21b6d87bcb swift: Deprecate for removal in 2025.2
Change-Id: Ie62060b806c3d66653901bf6f2b5ea8941e7a6be
2025-01-24 15:12:09 +00:00
Michal Nasiadka
f82b9e3b18 Add ovn-sb-db-relay image with newer ovn-ctl
We need newer ovn-ctl with [1] - for now download that from
ovn-org/ovn@master - once 25.03 is branched we should
get that the normal way.

[1]: 2ecba75432

Change-Id: I429f00ed4bdcd24409d14453ab53c5fa11fdb00b
2025-01-24 08:47:46 +00:00
Michal Nasiadka
d3bb06d5ce Fix genconfig
Currently tox -e genconfig fails with stevedore issues,
because tox is not doing sdist.

Closes-Bug: #2051575

Change-Id: Idfc26fe380a546d0fd712a531e5913090b01d808
2025-01-24 06:48:38 +00:00
Zuul
e70c58e35d Merge "Update Let's Encrypt lego version" 2025-01-20 10:08:59 +00:00
Zuul
f86849dcbe Merge "openvswitch: Fix logs dir permission" 2025-01-13 18:40:42 +00:00
Michal Nasiadka
a9c94abf53 openvswitch: Fix logs dir permission
Closes-Bug: #1795609

Change-Id: Iedfb2df027c0cefc45668a76d45ce62193aba9ef
2025-01-13 15:21:16 +00:00
Michal Nasiadka
ac2bbcc9f1 ironic: Fix dnsmasq.log permissions
Closes-Bug: #2093881
Change-Id: I3f45178c07a9cd054e572ff80d0e19fb014d69d3
2025-01-13 14:24:30 +01:00
FelipeAFV
4a7af468b6 Adds missing nvme package in cinder-backup
The package moved to the cinder-base image since it already added to
the cinder-volume in I84c7633765749a5e9ced983505ef290c32154ccc.

Closes-Bug: #2089587
Change-Id: I06e61ab388d9ecfa78e5d1fe1ae9cb8602d1cd36
Signed-off-by: FelipeAFV <ffigueroa@whitestack.com>
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2025-01-13 16:10:24 +03:00
Zuul
744ba3b98e Merge "[letsencrypt] Rename script for updating certificates" 2025-01-10 15:27:03 +00:00
Zuul
c781c66d2b Merge "neutron-dhcp-agent: change dnsmasq.log rights" 2025-01-07 14:21:59 +00:00
Michal Nasiadka
0f5e399542 neutron-dhcp-agent: change dnsmasq.log rights
Fixes /var/log/kolla/neutron/dnsmasq.log rights so
fluentd can read logs from that file.

Closes-Bug: #1693712
Change-Id: I57e36ef07e8840eead2efde77e0ab9dfd4842931
2025-01-07 10:40:56 +00:00
Zuul
aa3e06cd33 Merge "Time mismatch in /etc/localtime and /etc/timezone" 2025-01-02 11:01:29 +00:00
Zuul
e3a33aae3a Merge "Remove setuptools pin" 2024-12-30 12:11:00 +00:00
Michal Nasiadka
969cbc7367 cinder: Fix log dir permission
In order to add support to uwsgi (which is opening the log file
after dropping privileges) we need to set proper permissions
for /var/log/kolla/cinder directory

Change-Id: I46da8fad93febbc462cbe42a0d96ef7d423b8965
2024-12-23 12:36:40 +01:00
Zuul
3cb7bea93b Merge "Move uwsgi installation to openstack-base" 2024-12-19 09:01:02 +00:00
Michal Arbet
36ef420f82 [letsencrypt] Rename script for updating certificates
This patch renames the update-haproxy-cert script to
update-loadbalancer-cert to make the name more generic.
The change is necessary because support for ProxySQL
will be introduced in the next patch, requiring a name
that reflects broader applicability.

To keep the diff in the following patch clean and easier
to review, this patch focuses exclusively on the rename.

Change-Id: I15f9b5cf3976f4298cdc7da4530f2d7d09614e88
2024-12-18 13:13:55 +00:00
Piotr Parczewski
7c9b560f83 Update Let's Encrypt lego version
Change-Id: I979df16dea4499b470ce7a4e23df7927a5952aa7
2024-12-17 10:30:28 +01:00
Zuul
b1be326178 Merge "magnum: Add helm binary for magnum-cluster-api" 2024-12-16 16:07:30 +00:00
Zuul
3087808329 Merge "Fix EAB support in letsencrypt" 2024-12-16 12:10:23 +00:00
Dawud
3575d7d8bd
Remove deprecated AngularJS plugins from Grafana
Change-Id: Id81ce23fed7c19211aa8b15abce185d990be8389
2024-12-13 19:13:08 +00:00
Michal Nasiadka
592f341dd2 magnum: Add helm binary for magnum-cluster-api
Closes-Bug: #2091608

Change-Id: I52105f6cbf7529ce107cabf8a38a10525be7435c
2024-12-13 11:11:00 +00:00
Zuul
27f31009cb Merge "Revert "CI: Pin requests to <2.32 for publish jobs"" 2024-12-12 10:01:05 +00:00
Michal Arbet
6698a072d0 Fix EAB support in letsencrypt
This patch fixes recently merged [1] patch.

 - Original patch added params function args
   eab, hmac, key_id, but then
   EXTERNAL_ACCOUNT_BINDING_OPTS var is passed
   into obtain_or_renew_certificate which
   can't work

 - This patch correctly set EXTERNAL_ACCOUNT_BINDING,
   HMAC, KEY_ID defaults and then call obtain_or_renew_certificate
   function with them. This will ensure that arguments are always
   set, so we can write if condtional correctly and process.

[1] https://review.opendev.org/c/openstack/kolla/+/916617

Needed-By: https://review.opendev.org/c/openstack/kolla-ansible/+/933924
Change-Id: I406ff10edec9dc94b1a3de005080e149ee3ab3f2
2024-12-11 18:55:47 +00:00
Michal Nasiadka
7ae7815613 Remove setuptools pin
Change-Id: I7d08ebb65e2de82e3edba7bd9307b2b6ac8cb7a8
2024-12-11 12:14:33 +00:00
Zuul
da7562c73f Merge "Revert "[release] Use Dalmatian sources by default"" 2024-12-11 10:07:33 +00:00
Zuul
33f5eb260b Merge "Revert "CentOS/Rocky: use CentOS Cloud SIG repo instead of Delorean (Dalmatian)"" 2024-12-11 10:05:02 +00:00
Michal Nasiadka
f33c1ef176 Revert "CI: Pin requests to <2.32 for publish jobs"
This reverts commit 428f371249.

Reason for revert: Should be fixed now

Change-Id: Ife393e7f1b00fa37921e7822668d6a40dd467d5b
2024-12-11 07:41:28 +00:00
Michal Nasiadka
795e347853 Revert "[release] Use Dalmatian sources by default"
This reverts commit 5af5febf50.

Reason for revert: Epoxy cycle is on

In addition to the revert skyline-apiserver aiosqlite u-c
is removed until [1] is merged, designate rootwrap.conf.sample
file has been renamed to rootwrap.conf and pycadf is bumped to 4.0.0.

[1]: https://review.opendev.org/c/openstack/skyline-apiserver/+/935604

Change-Id: I1265633f0913b7927955564fac911a682615004a
2024-12-10 20:22:51 +00:00
Zuul
f57457f906 Merge "Add Python 3.12 classifier" 2024-12-10 19:33:59 +00:00
Zuul
8b7254af1f Merge "CI: Stop using LABEL for ephemeral0" 2024-12-10 00:17:46 +00:00
Zuul
51ed557385 Merge "Update release-management doc with openstack-manuals step" 2024-12-09 17:50:35 +00:00
Piotr Milewski
2d8e98ec7b Time mismatch in /etc/localtime and /etc/timezone
Python3-pip installs the dependent package tzdata
and blocks the mount of the /etc/localtime file in docker.

After deleting the symbolic link docker correctly mounts
the external localtime file.
Applies only to ubuntu 24.04, in previous versions
of ubuntu there was no such problem

Closes-Bug: #2091161
Change-Id: I733a50b5ca455cfa4b248dc324500d78c17c817b
2024-12-09 16:29:21 +00:00
Michal Nasiadka
a6a15966aa CI: Stop using LABEL for ephemeral0
For some reason it doesn't work in raxflex, i.e. the created filesystems
label is not seen.

Change-Id: I9c805b866ee359d2da150438ca78be25b1462988
2024-12-09 14:23:01 +00:00
Zuul
681cb1b26d Merge "Add Let's Encrypt EAB support" 2024-12-05 11:52:47 +00:00
Piotr Parczewski
4adc9a1035 Add Let's Encrypt EAB support
Needed-By: https://review.opendev.org/c/openstack/kolla-ansible/+/935656

Change-Id: I0b20d82a0061062f8aa9dfe179b1d02708ad610e
2024-12-05 08:21:14 +00:00
Pierre Riteau
45ddb71947 Add Python 3.12 classifier
Change-Id: I56cf5a869e854f760874d207802173c89b04c0df
2024-12-02 14:28:58 +01:00
Roman Krček
d22245c711 Change copy-cacerts behaviour
So far, the certificates were not part of config.json
files for containers. With future patches that will remove
container restarts based on triggers from config and
service-copy-cert, it is important that all files that change
during config are specified in config.json so that
kolla-set-configs --check can detect those changes and based
on that restart the container. This patch provides prerequisite
for future patch in kolla-ansible.

Comments from kevko:

The script also takes into account whether review [1] is
merged or not, ensuring that it will function correctly in
both cases thanks to review [2], because using the state
file, we can effectively verify whether the config.json that
copies CA certs to /var/lib/kolla/share is being used or not.

If we didn’t handle it this way, we would have to rely on
checking whether the directory /var/lib/kolla/share exists or
some another magic, which is insufficient because various
states and combinations of Kolla image and Kolla-Ansible
versions could result in certificates always being copied.
This method provides a clear and definitive distinction.

[1] https://review.opendev.org/c/openstack/kolla-ansible/+/924651
[2] https://review.opendev.org/c/openstack/kolla/+/915440

Change-Id: I5120f1874f25a9ca8326e6db8b12dee4c81feb56
Signed-off-by: Roman Krček <roman.krcek@tietoevry.com>
Co-Authored-By: Michal Arbet <michal.arbet@ultimum.io>
Needed-By: https://review.opendev.org/c/openstack/kolla-ansible/+/924651
2024-12-02 06:54:21 +01:00
Michal Nasiadka
08a97807be Revert "CentOS/Rocky: use CentOS Cloud SIG repo instead of Delorean (Dalmatian)"
This reverts commit db0f87d3c8.

Reason for revert: Epoxy cycle is on

Change-Id: Ie2a747223b33039684650bede8863af0c8906d2f
2024-11-29 11:14:05 +00:00
Michal Nasiadka
23519e6d88 CI: Use debian/ubuntu images from quay mirror
Change-Id: I3fab494e939478458c2c299303f5c2c91943e0ec
2024-11-28 09:45:07 +00:00
Michal Nasiadka
1df09532d7 Move uwsgi installation to openstack-base
Change-Id: I581ff79993d011b421d69295a6552cb14b8e2e66
2024-11-21 20:35:57 +01:00
Zuul
dca8462bc4 Merge "Add mechanism for patching files in containers" 2024-11-15 12:09:58 +00:00
Michal Arbet
11f65c6c1d Add mechanism for patching files in containers
This patch adds a way to patch files in a Docker
image built by Kolla. This is very useful for several
reasons, specifically:

- Custom modifications
- The stable branch of some library has a fix but no pip
  package has been released
- Eliminates the need to package your own pip packages
- Eliminates the need to invent your own versioning to prevent
  upstream versioning
- Eliminates the need to manage a pip server
- In other words, it eliminates the need to get a wheel into
  the image and install it manually using any method not
  previously mentioned

It is also highly desirable because, although Kolla can replace
the source for a service with a custom URL for a tarball or its
own Git repo, it cannot do this for dependencies pulled from pip.

I would also like to point out that this is a feature with its own
code path and works only if the user "inserts" a patch into the folder
patches/docker-image/something.patch and creates an analogous series
file for patch source code.

Simply said, this code will never interfere with the upstream build process
since this feature is not intended for use in upstream.
It is rather meant for downstream users who know what they are doing.
Now they just have an option to patch their images.

Everything works on all layers of the Docker image and stores a report
of applied patches which can then be seen in /etc.

This mechanism is similar as debian patch quilt.

Change-Id: I61d0790c5d4d070b7ea9e8c99c0a76ff5d22bf9d
2024-11-15 08:04:30 +00:00
Zuul
68fa7d3020 Merge "CI: Add reno linting" 2024-11-08 13:53:17 +00:00
Michal Nasiadka
d930fca08c CI: Add reno linting
Change-Id: I799d6bf7a381c377dee565c13b1732f7313520f4
2024-11-08 11:28:21 +00:00
Dr. Jens Harbott
ba90788167 Update release-management doc with openstack-manuals step
After a release is made, kolla docs need to be added to the docs index.

Change-Id: I204c288399992b66682415b4ccb4845cfa9ea064
2024-11-08 11:04:58 +01:00
Michal Arbet
36c12676ff Fix handling configs in base image
This commit restructures the handling of configuration
files in set_configs.py, introducing functions for managing
default configuration files first.

Closes-Bug: #2060855
Change-Id: If91e0330dc149143c82d2183b8ddf6fa9f68d80e
2024-11-06 17:37:31 +01:00
Michal Arbet
8eaf4149b1 Enhance logging format for better readability
Added timestamp with milliseconds, log level, and custom
date format to improve clarity and make logs more useful
for debugging.

Change-Id: Ice2d601eddb54bbb0e7e3be6f03ba6db58256c1f
2024-11-05 19:13:04 +01:00
OpenStack Release Bot
ee7fe59f7b Update master for stable/2024.2
Add file to the reno documentation build to show release notes for
stable/2024.2.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2024.2.

Sem-Ver: feature
Change-Id: Ib8db1e811fc8bae9600730536a48b6358cbcf76d
2024-10-28 15:34:00 +00:00
Zuul
fcff57b200 Merge "CentOS/Rocky: use CentOS Cloud SIG repo instead of Delorean (Dalmatian)" 2024-10-25 08:12:05 +00:00
Zuul
7ee20ff110 Merge "[release] Use Dalmatian sources by default" 2024-10-24 18:59:04 +00:00
Bartosz Bezak
5af5febf50 [release] Use Dalmatian sources by default
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/933312

Change-Id: I9a671d63dc6c6919609b667704bc3ce6d91fa22b
2024-10-24 15:46:02 +02:00
Michal Nasiadka
db0f87d3c8 CentOS/Rocky: use CentOS Cloud SIG repo instead of Delorean (Dalmatian)
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/933312

Change-Id: I0ce9e907594fd160a08ad7929d5bc4bca9abf536
2024-10-24 13:45:49 +00:00
Michal Nasiadka
1864231693 CI: bump hacking
Change-Id: I5f2177b7c2edc0e35ed2e8e9bdfc4be2f262309f
2024-10-24 13:39:20 +00:00
Zuul
830500bb55 Merge "etcd: Bump version to v3.5.16" 2024-10-24 12:16:51 +00:00
Zuul
71d7edd615 Merge "Fix missing tss user in Ubuntu/Debian nova containers" 2024-10-22 15:05:52 +00:00
Rafal Lewandowski
757cf4c147 Fix missing tss user in Ubuntu/Debian nova containers
Closes-Bug: #2067050
Change-Id: Ife426c073048ff27bdfd9f3af30aaaab8c2e4497
2024-10-22 09:15:14 +02:00
Michal Arbet
ec4c4310dd Add way to backup from MariaDB replica server
ProxySQL reports its version to MySQL clients,
causing the backup process to fail when ProxySQL is used.

This patch adds a new script that handles backups from
the replica server directly, without modifying the original
backup script. The new script retrieves the server address
via the load balancer and connects directly to the replica
server to execute the backup.

Moreover, this reduces the risk that the backup will be inconsistent
or that it will block OpenStack MySQL clients, because they are
connected to a different server, and no one is connected to the replica,
or that it will overload the load balancer (such as ProxySQL or HAProxy)
which listens on the VIP.

Closes-Bug: #2080818
Change-Id: Ibf7e40e8b059d733e114963022df06180249c650
2024-10-09 11:47:01 +02:00
Zuul
068790cddc Merge "Bump proxysql to 2.7.x" 2024-10-07 12:30:39 +00:00
Zuul
5f07585e0b Merge "[release] Change RDO's DELOREAN_DEPS repo to Dalmatian" 2024-10-07 09:21:31 +00:00
Bartosz Bezak
7b4913e6f8 aarch64: Exclude syslinux from ironic conductor packages
The 'syslinux' package is not available on aarch64, so it is only
included in the ironic conductor packages for x86_64 systems.

Related-Bug: #1749780
Change-Id: I3eea308a0a70e47dd3b185eece106185b25616f5
2024-10-03 13:28:57 +00:00
Bartosz Bezak
672601a3e6 aarch64: fix name of rabbitmq copr repo
it should be the same as in repos.yaml

Change-Id: Ieb413f7a4bd1989d7f29309368b6b218d1395e0b
2024-10-03 11:26:57 +00:00
Michal Nasiadka
39d328da32 CI: Fix aarch64 builds on x86 after switching to role
bf04bd90a15e7d3949214d15a8b8e25f2050bb65 omitted the --platform
option

Change-Id: I4febdf6b391bb7320ea30e1ca71fed81e332021d
2024-10-03 13:25:05 +02:00
Zuul
01515cdff1 Merge "erlang/aarch64: Move to openstack-kolla owned COPR" 2024-10-02 15:12:44 +00:00
Michal Nasiadka
2480da6d98 erlang/aarch64: Move to openstack-kolla owned COPR
Change-Id: I219418411470bdeae9af84277f5150a623c05e69
2024-10-02 12:18:09 +02:00
Michal Nasiadka
91c3014857 etcd: Bump version to v3.5.16
Change-Id: Ic7cb4e97deb04a82fd73238adbe5b4b74a6a50a0
2024-10-02 08:05:31 +00:00
Michal Nasiadka
20cdc32537 CI: Move image building to a role
This role can be then used in kolla-ansible instead of setup_gate.sh

Change-Id: Ibf04bd90a15e7d3949214d15a8b8e25f2050bb65
2024-10-02 07:37:29 +00:00
Michal Arbet
046ad524eb Bump proxysql to 2.7.x
This patch bump proxysql 2.6.x to 2.7.x

Change-Id: I6e726d8ebf9dbc6d019dd72d6d0be9d9957a3f22
2024-10-01 17:43:26 +02:00
Michal Nasiadka
9b10b7d235 CI: Fix aarch64 publish jobs on x86
Change-Id: I5c69d288a427d708b42deadac872a3a7368181e3
2024-10-01 16:05:04 +02:00
Michal Nasiadka
602a6f7d4e Revert "CI: Disable CentOS/Rocky/Ubuntu aarch64 jobs"
This reverts commit fd4f1a8a82.

Reason for revert: Switching to builds on x86

Change-Id: If615c27f3cdf779b773f333845419d09a552aa9b
2024-10-01 11:16:47 +00:00
Michal Nasiadka
5f9850c5ed Switch to Ubuntu 24.04 LTS
Add setuptools because Python3.12 dropped distutils

Needed-By: https://review.opendev.org/c/openstack/kolla-ansible/+/925581
Change-Id: Ie12c43dc1de122c203edc28181366457ccd67834
2024-09-30 23:13:43 +02:00
Michal Arbet
55168f909d Added systemd-standalone-sysusers package for Debuntu
This package provides a standalone sysusers binary with
minimal dependencies, designed for use in non-systemd
environments.

This package simply ensures that all packages that want
to install systemd as dependency will have to settle for
this one because the systemd package breaks
systemd-standalone-sysusers, as it is an alternative.

[1] https://packages.debian.org/bookworm/systemd-standalone-sysusers
[2] https://packages.ubuntu.com/noble/systemd-standalone-sysusers

Change-Id: I3ba85069c265844bd2f8b5e6d2b14f32e4898cfd
2024-09-30 23:13:34 +02:00
Zuul
694cb421b5 Merge "CI: Build aarch64 images on x86" 2024-09-30 15:14:15 +00:00
Zuul
533bd2125d Merge "pyinotify is no longer needed" 2024-09-30 14:09:27 +00:00
Michal Nasiadka
af3a4bbf60 CI: Build aarch64 images on x86
Since aarch64 OpenDev nodes currently have issues
that cause builds to time out (and we can't extend
over 3 hours since that's OpenDev maximum).

Change-Id: I20d8b7b6de007866f73c41272682f4532987c9e7
2024-09-27 15:57:15 +00:00
Zuul
382a467f3b Merge "Revert "Pin OpenSearch Dashboards to 2.15"" 2024-09-27 12:15:39 +00:00
Bartosz Bezak
c862b076f7 Revert "Pin OpenSearch Dashboards to 2.15"
This reverts commit 3c49991a86.

Reason for revert: bug fixed upstream https://github.com/opensearch-project/OpenSearch-Dashboards/pull/8097

Change-Id: Icc810554dc877c9dedaf26609d59a93059a38ba7
2024-09-27 09:11:28 +00:00
Michal Nasiadka
0644a5df86 dev-mode: Run kolla_install_projects using sudo
Since packages are installed using root during image build - we
need to use sudo when updating those packages when using dev-mode.

Change-Id: Idf14e334d50abeb1719563b1733af0b8425b3b55
2024-09-26 13:40:32 +02:00
Rafal Lewandowski
8f0a3b5871 Add missing iso packages to ironic-conductor
Closes-Bug: #2067133
Change-Id: I097ad8988a4707173c19006d83b4d76cec5d0940
2024-09-23 14:07:31 +02:00
Zuul
46b82a2a77 Merge "Switch to Dynamic Python Version Detection" 2024-09-23 10:01:57 +00:00
Zuul
a7135c9e15 Merge "Fix state checking via kolla_set_configs" 2024-09-20 08:36:34 +00:00
Michal Arbet
1cda1acc7f Switch to Dynamic Python Version Detection
This commit removes the hardcoded KOLLA_DISTRO_PYTHON_VERSION
and replaces it with dynamic Python version detection during
container images build. Dockerfiles and scripts now use general
python3 references, simplifying maintenance and ensuring
compatibility with future Python versions.

Test cases relying on distro_python_version were also cleaned up.

Change-Id: I891749598247a5e951ed4a873b16acfd0566f59c
2024-09-19 12:22:16 +02:00
Michael Chapman
d389964ce2 Add libnetfilter-log to l3 agent container
neutron-fwaas requires libnetfilter-log1 when fwaas_v2_log is
enabled on l3 agent.

As this package isn't easily available via rpm, this is only
added for deb platforms.

Partial-Bug: #2079775
Change-Id: I22d05d1a1c6ab92ed5507d6c90b8c2281abfc7af
2024-09-19 12:58:23 +10:00
Zuul
015fd8d42a Merge "Fix cinder-backup: add missing sysfsutils,lsscsi package" 2024-09-17 12:14:48 +00:00
Bui Doan Dang
546084b0a8 Fix cinder-backup: add missing sysfsutils,lsscsi package
Closes-Bug: #2078886
Change-Id: Ia678484c001c66a9db675035dbb4505b0448bf58
Signed-off-by: Bui Doan Dang <doandang27052000@gmail.com>
2024-09-17 01:55:11 +00:00
Zuul
0b390c35ae Merge "Gnocchi: Bump to 4.6.4" 2024-09-16 21:44:33 +00:00
Michal Arbet
ea198170ba Fix state checking via kolla_set_configs
Kolla checks the status of its configurations
using kolla_set_configs --check. However, this
doesn't work for the command block in the config.json
file. This means that if only the command value changes,
but not the config_files block, which is common practice
in Kolla-Ansible btw, the container will not report the
changes.

This is undesirable and important to fix, especially
considering the planned rework of notifiers in
Kolla-Ansible [1].

[1] https://review.opendev.org/c/openstack/kolla-ansible/+/773243/14

Closes-Bug: #2080861
Change-Id: I2a290da38ea34b05ce3da8fb8b39b6252bf2da47
2024-09-16 21:23:39 +02:00
Zuul
7b860abb69 Merge "Removal of deletion of the proxysql database" 2024-09-16 14:10:51 +00:00
Matus Jenca
88b7ee1c2a Gnocchi: Bump to 4.6.4
This makes Gnocchi work with Redis Sentinel + TLS [1][2].

[1] https://github.com/gnocchixyz/gnocchi/releases/tag/4.6.3
[2] https://github.com/gnocchixyz/gnocchi/releases/tag/4.6.4

Change-Id: Icbd001f1f487b25c4bfd6f6a78106a7f0ed1c8c8
2024-09-14 09:31:42 +02:00
Michal Nasiadka
896b50f57b [release] Change RDO's DELOREAN_DEPS repo to Dalmatian
Change-Id: Ie135a8e678cdd408311001e8fb33e17f6c08e64e
2024-09-13 17:21:30 +02:00
Zuul
6c5a443efe Merge "rabbitmq: Switch to Cloudsmith mirrors" 2024-09-13 12:48:32 +00:00
Zuul
8bc94e6dca Merge "openvswitch: Drop ovs_ensure_configured.sh" 2024-09-13 08:33:51 +00:00
Michal Arbet
8fde7db3f5 Removal of deletion of the proxysql database
It seems that at the time of implementing proxysql,
it did not have the --reload parameter, or I overlooked
it back then. In any case, it is available now, and this
patch just removes the deletion of the proxysql database
and keeps it there. The deletion was in the extended start
precisely because proxysql ignored changes in the configuration
file, so the internal database was always rebuilt during
a restart. However, this now works with the --reload parameter.

Change-Id: I47848bb1e9847821c9b5fa25f0d817ef00358dd6
2024-09-12 15:30:42 +00:00
Matt Crees
528b7eef16 rabbitmq: Switch to Cloudsmith mirrors
PackageCloud is discontinued as of August 18th [1].

Also corrects the versions docs for RabbitMQ and Erlang.

Use new RMQ Cloudsmith repo URLs, these now use
*.rabbitmq.com domains [2].

1. https://www.rabbitmq.com/blog/2024/08/11/package-repository-updates#packagecloud-will-be-discontinued-on-aug-18th-2024
2. https://www.rabbitmq.com/blog/2024/08/11/package-repository-updates#mirrors-now-use-rabbitmqcom-domains

Change-Id: I2cce3dd2540c878878ff0aae80ee5a7e0f455da7
2024-09-12 15:09:56 +00:00
Zuul
c4b12b1ace Merge "Pin OpenSearch Dashboards to 2.15" 2024-09-06 12:24:52 +00:00
Roman Krček
8ae55dd0b8 Refactor dev mode
Provides mechanism for future work to fix bug where when package file
manifest changes, the changes were not reflected in to devmode-enabled
container.

It changes the strategy of installing projects in dev mode in containers.
Instead of bind mounting the project's git repository to the venv
of the container, the repository is bind mounted to
/dev-mode/<project_name> from which the it is installed using pip
on every startup of the container using kolla_install_projects script.

Related-bug: #1814515
Change-Id: Ia1bdff87cba73587a03124ab78a56b21c6176373
Signed-off-by: Roman Krček <roman.krcek@tietoevry.com>
2024-09-04 06:37:09 +00:00
Tony Breeds
a65ede6ded pyinotify is no longer needed
This library was used by oslo.log but isn't now.  It's being removed
from global-requirements so let's drop it from openstack-base.

Depends-On: https://review.opendev.org/c/openstack/requirements/+/917831
Change-Id: Ie91b533047d59e19bdd56f3a999e377d49a745a8
2024-09-04 01:21:34 +00:00
Zuul
c63961fdbe Merge "Fix symlinking of openstack-base source" 2024-09-03 08:22:18 +00:00
Zuul
1fb183ad98 Merge "keystone: Fix requests-kerberos installation" 2024-09-03 05:51:49 +00:00
Zuul
57dd38f365 Merge "Drop prometheus-msteams container images" 2024-09-02 20:56:03 +00:00
Seunghun Lee
978a2864f9 Fix symlinking of openstack-base source
Original symlinking works fine with a tarball source for the
requirements repo.

However, when user supplies git type source of it, we cannot
guarantee that the source direcotry name contains ``requirements``.

This patch fixes it by moving plugins directory outside of
openstack-base directory, which ultimately allow us to use simpler
symlinking as openstack-base-archive would be the only directory
inside.

Closes-Bug: #2074075
Change-Id: I5a9162a30b23cfabb64dabe5c12c226fa8627abd
2024-08-29 23:38:29 +00:00
Michal Nasiadka
082d90cca0 keystone: Fix requests-kerberos installation
Since it was bundled with plugins installation, and we did not
have any plugins in keystone container - it was not installed
at all.

Adding in libkrb5 dependencies for requests-kerberos.

Closes-Bug: #2078305
Change-Id: I51c69d0673280e351daa410d943f769d33a10d6c
2024-08-29 08:20:56 +02:00
Zuul
779a9a33f4 Merge "Revert "[release] Change RDO's DELOREAN_DEPS repo to Caracal"" 2024-08-28 17:04:19 +00:00
Zuul
35b69f033e Merge "Remove incorrect reno" 2024-08-28 16:33:57 +00:00
Zuul
e7eff35e42 Merge "Revert "Add support for checking incoming RabbitMQ version"" 2024-08-28 15:50:58 +00:00
Matt Crees
423a73d9d1 Revert "Add support for checking incoming RabbitMQ version"
This reverts commit 36a7cd053d.

Reason for revert: feature not needed anymore, see here:
https://review.opendev.org/c/openstack/kolla-ansible/+/926146/comment/e593d721_7c48143b/

Change-Id: Ic0f9521c66240f13ff5b7fc94480dbbb76498339
2024-08-28 11:05:50 +00:00
Michal Nasiadka
ece67cd2ae Check if archive is tarfile
Change-Id: I802267d848c1dee722015b0d379bd9210f6c103e
2024-08-27 20:20:32 +00:00
Bartosz Bezak
a8c7df6ea8 Remove incorrect reno
The cAdvisor update change [1] mistakenly added a reno to the wrong
folder. Moving it back to the correct folder would accidentally add it
to the master branch. Therefore, the reno is being removed.

[1] https://review.opendev.org/c/openstack/kolla/+/704018

Change-Id: I876f3c88c5bcd3c0a7c776796e9870c8512f90e2
2024-08-27 10:20:40 +02:00
Michal Nasiadka
fd4f1a8a82 CI: Disable CentOS/Rocky/Ubuntu aarch64 jobs
Since Linaro shut down their nodepool provider - OpenDev infra
is left with OSUOSL cloud with max 15 instances running - let's
not put any additional strain on CI (especially that it seems
there are some I/O or similar issues that cause our jobs to
time out).

Change-Id: I7f0f723b37e552c4ea01bf51b6354209608d904a
2024-08-26 17:17:23 +02:00
Zuul
ccb13b672d Merge "bifrost: bump Ansible version to 8 (rpm) and 9 (deb)" 2024-08-23 17:09:51 +00:00
Zuul
26f9d8f580 Merge "nova: drop dmidecode" 2024-08-23 17:05:30 +00:00
Zuul
fd1e4501e3 Merge "nova: Drop xen remnants" 2024-08-23 16:59:42 +00:00
Zuul
fe00de50c4 Merge "Add support for checking incoming RabbitMQ version" 2024-08-23 16:44:33 +00:00
Michal Nasiadka
cd26b72658 bifrost: bump Ansible version to 8 (rpm) and 9 (deb)
This is used by bifrost in setup script [1].

[1]: 1c95336154/scripts/env-setup.sh (L9)

Change-Id: Ia2721dd7459a11324726910c99ea4c357047631e
2024-08-23 13:57:31 +00:00
Bartosz Bezak
a2c07b3c2b Drop prometheus-msteams container images
The prometheus-msteams project is no longer maintained [1]. As a result
we are removing its associated container images from our repository.
Users are encouraged to switch to the native Prometheus Alertmanager
integration with Microsoft Teams [2], which offers ongoing support and
features.

[1] https://github.com/prometheus-msteams/prometheus-msteams/issues/343
[2] https://prometheus.io/docs/alerting/latest/configuration/#msteams_config

Change-Id: I66421b14668722607b58865a2ad100204fd387f7
2024-08-23 11:10:53 +02:00
Michal Nasiadka
29fc6a8bc2 nova: drop dmidecode
It's basically noop since dmidecode is in libvirt deps
in all distributions for a long time.

Change-Id: I48251e0a96f22a3ca6e1cc2523b81e3e1aa1ae71
2024-08-23 07:49:12 +00:00
Michal Nasiadka
c19f210ad3 Revert "[release] Change RDO's DELOREAN_DEPS repo to Caracal"
This reverts commit 8102d02782.

Reason for revert: Let's switch back to master

Change-Id: Ia1142a5d67009c28ab820652785deb45263a548b
2024-08-23 07:00:35 +00:00
Zuul
8f6bc332bf Merge "Add exclude for permissions in kolla config.json file" 2024-08-21 17:18:55 +00:00
Zuul
fe1aefd67f Merge "Configure Apache services to use correct locale" 2024-08-21 15:10:03 +00:00
MinSun
07d0b12efd
Add exclude for permissions in kolla config.json file
When using recursive mode to set permissions for a directory as
defined in kolla config.json, all the subdirectories and files will
receive the same permissions. This change adds the option to exclude
specific files or directories - either a name or a regular expression
can be used.

Closes-Bug: #1931294
Closes-Bug: #1972168

Co-Authored-By: Jakub Darmach <jakub@stackhpc.com>
Change-Id: If2f39736e2af34cd91d0976051ff66f06e96ab42
2024-08-21 14:43:12 +02:00
Mark Goddard
3c49991a86 Pin OpenSearch Dashboards to 2.15
OpenSearch Dashboards 2.16.0 discover page hangs after initial
deployment due to an upstream bug [1].

This change fixes the issue by pinning OpenSearch Dashboards to 2.15.

Note that it seemed safer not to pin OpenSearch to fix this issue, to
avoid breaking deployments that have already deployed 2.16.

[1] https://github.com/opensearch-project/OpenSearch-Dashboards/issues/7626

Closes-Bug: #2077319
Change-Id: I0de9928b2657ab5f31580325e866bff28f2b5510
2024-08-21 09:53:28 +01:00
Michal Nasiadka
56de572119 nova: Drop xen remnants
Xen support in Nova has been dropped cycles ago.

Change-Id: Ieb52291529eb0d94206b3f30195c4d2527c9dc52
2024-08-19 17:16:52 +02:00
Matt Crees
36a7cd053d Add support for checking incoming RabbitMQ version
Will be used to check if the current RabbitMQ version is high enough
before upgrading to the new one.

Change-Id: Ie133d6efc2e4c00002b8f0724e0183eaab35d1c5
2024-08-12 16:08:43 +01:00
Maksim Malchuk
2caa64df67 Configure Apache services to use correct locale
Closes-Bug: #2076453
Change-Id: I6af9baf09a19a7dbcaf98585870aa44ff79398d3
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2024-08-12 09:55:35 +00:00
Michal Arbet
44acae3894 Fix build of prometheus-ovn-exporter
This patch fixed build of prometheus-ovn-exporter
when building with --image-name-prefix option.

Closes-Bug: #2076249
Change-Id: I5ba67d6e4bbe1b6d6caa842715b56720a027dc76
2024-08-07 16:43:07 +02:00
Zuul
3c130f290e Merge "toolbox: Bump ansible-core to 2.17" 2024-07-24 21:50:37 +00:00
Michael Still
ec64f299bf Fix codespell on master
codespell, now part of pep8, was failing on master. Also remove
the codespell version pin in tox.ini as it is no longer required.

Change-Id: I309e558a445c0a96f16fd002b8ca232d94620b5a
2024-07-23 19:44:39 +10:00
Zuul
f63594bdc1 Merge "[docs] remove not working dev setup" 2024-07-17 11:55:05 +00:00
Michal Nasiadka
e5d19ffca5 toolbox: Bump ansible-core to 2.17
And also python3.11 to python3.12 on rpm distro side

Change-Id: I000e2f2aacb011618a0b3c7b41fe286b3680614f
2024-07-16 17:54:50 +02:00
Zuul
2f28e30912 Merge "fix: apple silicon architecture selection" 2024-07-16 14:39:21 +00:00
Tadas Sutkaitis
8b98145f23 fix: apple silicon architecture selection
Closes-Bug: #2073256

Change-Id: I9fdccbe3bde07a7f9a1e6ac82b1096a024e1b0ee
2024-07-16 11:02:52 +00:00
Zuul
139851087e Merge "Pass rabbitmq apt preferences into kolla-toolbox" 2024-07-09 14:49:31 +00:00
Zuul
b4972ebec9 Merge "Revert "[release] Use Caracal sources by default"" 2024-07-02 15:01:52 +00:00
Zuul
603f58cac5 Merge "Change logic for plugins in grafana image build" 2024-06-28 18:23:49 +00:00
Michal Arbet
7aec372480 Trivial fix letsencrypt base image
Replace cinder -> letsencrypt typo in
letsencrypt-base image.

Change-Id: Ia21f81d9cb0850e37882dd6155b4d2d6ba774a05
2024-06-28 15:52:07 +02:00
Dawud
077e0003d4
Change logic for plugins in grafana image build
Co-authored-by:  Will Szumski <will@stackhpc.com>
Change-Id: I2b1c95395aeefb2ccb1d8edf415eee0f98c52190
2024-06-28 01:19:10 +01:00
Bartosz Bezak
f36e45382e add kayobe to release management doc's Launchpad admin section
Kayobe moved away from Storyboard some time ago

Change-Id: I9e57150645aebf4b684c609b9b356b8921aa7333
2024-06-24 11:47:49 +02:00
Sven Kieske
bdf5dae433
[docs] remove not working dev setup
also add the command to clone the repository
and use the pip-install `--editable` option in
it's long form so it's immediately clear what it does.

Change-Id: I00403f967c06af6d8c718ed1245aaa01f1218add
Signed-off-by: Sven Kieske <kieske@osism.tech>
2024-06-21 10:45:33 +02:00
Maksim Malchuk
9cd907cacd Revert "[release] Use Caracal sources by default"
This reverts commit 0fb24ceefc.

Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
Change-Id: I568dc94bea394feb5fed157b8209429813ed06fd
2024-06-19 16:16:53 +03:00
Bartosz Bezak
428f371249 CI: Pin requests to <2.32 for publish jobs
Periodic jobs are failing because Zuul Ansible executor runs with
Ansible 8 which uses community.docker collection that needs requests<2.32.
Revert this patch when Zuul supports Ansible 10, and/or Ansible 9 gets
fixed community.docker collection. [1]

[1] https://github.com/ansible-collections/community.docker/issues/868

Related-Bug: #2066364
Change-Id: I1dda73b0bc9a9f57ec8fda3f2234449b04906410
2024-06-11 11:07:42 +00:00
Matt Crees
006ccee101 Pass rabbitmq apt preferences into kolla-toolbox
If the latest and targeted rabbitmq-server dependencies mismatch,
kolla-toolbox will fail to build.

Closes-Bug: #2066171
Change-Id: I64e9442545d98364585e3c632ae9142cd6b4f9bf
2024-06-04 10:21:43 +00:00
Michal Nasiadka
968711579f Drop packaging requirement and unpin docker-py
Change-Id: I11d306be5e5bb3d5b05b50dd8ee64ac9424854a1
2024-05-28 08:19:28 +00:00
Michal Nasiadka
91f91e1cc2 CI: pin codespell to <2.3.0
Change-Id: I403d933b029e846e682fd41a62ada4fc73cdfd12
2024-05-26 12:05:26 +00:00
Michal Nasiadka
c66a2cd63b openvswitch: Drop ovs_ensure_configured.sh
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/901695
Change-Id: I9c723b666897883bf5b3343fe92e06aaa0c89d81
2024-05-15 06:34:00 +00:00
Michal Nasiadka
25f357ecc8 collectd: Mark unbuildable on rocky
Since Rocky 9.4 release - delivered libpqos is 5, not 4 - and
CentOS Stream 9 OpsTools packages have not been rebuilt.

Related-Bug: #2065362
Change-Id: Ic0929becd44f25a9fb8d6d789b8169f41c95a226
2024-05-10 06:46:53 +02:00
OpenStack Release Bot
ba0ebf4931 Update master for stable/2024.1
Add file to the reno documentation build to show release notes for
stable/2024.1.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2024.1.

Sem-Ver: feature
Change-Id: Ibd705bc99c018d5d03d00486c10bd65fea13996f
2024-05-08 10:12:00 +00:00
Zuul
45ee2b4952 Merge "Refine release notes before kolla 2024.1 release" 2024-05-07 15:17:05 +00:00
Bartosz Bezak
76a470ca1d Refine release notes before kolla 2024.1 release
Change-Id: I7bdc670851f028238b083188384905947d51c0c1
2024-05-07 14:57:02 +00:00
Bartosz Bezak
655ef15571 Debian: use caracal repos
Change-Id: Id1c028e0650c1fd3aa4c0a7b311a61b26057179c
2024-05-06 09:31:05 +00:00
OpenStack Release Bot
26d95c182c reno: Update master for unmaintained/zed
Update the zed release notes configuration to build from
unmaintained/zed.

Change-Id: I884e73dff445026138bfb398032e0d51afad43db
2024-04-29 13:31:46 +00:00
Michal Nasiadka
de7939a975 nova-compute: Remove duplicate openvswitch package
openvswitch package is already installed in nova-base from
CentOS NFV SIG repos - and in nova-compute we don't enable this
repo - so we get openvswitch installed from RDO packages.

Closes-Bug: #2064098
Change-Id: If39e045357563111219a008fa7a81a82ef906627
2024-04-29 11:44:25 +02:00
Zuul
c4225f35ee Merge "Move apt_prefs pins to respective images" 2024-04-26 17:24:26 +00:00
Michal Nasiadka
e47e24c946 Drop Vitrage
It has been deprecated in Antelope cycle.

Change-Id: Ie9cc529d186b74ea3d07b0082f9c965d4aa054e9
2024-04-24 17:55:48 +02:00
Zuul
7837a069ea Merge "kolla-toolbox: Use py311 on rpm distros" 2024-04-24 14:48:42 +00:00
Zuul
d6047b2986 Merge "horizon/neutron: Add FWaaS plugin" 2024-04-24 14:15:03 +00:00
Zuul
f833798cd3 Merge "swift-base: fix rsync missing for rpm installs" 2024-04-24 13:47:57 +00:00
Zuul
e5024911f1 Merge "Nova: fix swtpm and swtpm-tools missing from deb installs" 2024-04-24 11:24:44 +00:00
Zuul
179c57af51 Merge "Revert Deprecation of Masakari" 2024-04-24 09:53:07 +00:00
howardlee
e988eef195 horizon/neutron: Add FWaaS plugin
Change-Id: Id64c04ef38bd3084dec05bf58ec10b93344f68ec
2024-04-24 09:45:51 +00:00
Sven Kieske
7766abb439 swift-base: fix rsync missing for rpm installs
Closes-Bug: 2062072

Change-Id: Id6e4bbe0aab2360c4e7e5f74fff6170bcc71080b
Signed-off-by: Sven Kieske <kieske@osism.tech>
2024-04-24 09:41:38 +00:00
Pierre Riteau
26831edeb0 Replace meeting time by link to the meetings page
Change-Id: I472845503634900114d0f7aa96229e699f74d97e
2024-04-23 09:55:20 +02:00
Michal Wyszkowski
abb969502f Nova: fix swtpm and swtpm-tools missing from deb installs
Closes-Bug: 2062572
Change-Id: I456a5b8f66aa88a82fb54938e8df7195d127d9cd
2024-04-22 13:03:38 +02:00
Mark Goddard
f7c84c21c0 Revert Deprecation of Masakari
This partially reverts commit fe1a74da98
for Masakari only.

Reason for revert: Masakari CI is working

Change-Id: I486b261acefb90f9e442c7d1746a98bebf2f2aca
2024-04-19 08:58:43 +01:00
Michal Nasiadka
fa2591d327 kolla-toolbox: Use py311 on rpm distros
ansible-core 2.16 requires py3.10+ on the host running
ansible-playbook - let's use Python 3.11 on RPM distros
to have the same version of ansible-core used on all
distributions.

Change-Id: I2caf2c972cd0283889fadde01bdd6a53e5f66ed9
2024-04-18 09:19:16 +00:00
Zuul
52183ab561 Merge "Revert "CI/Master only: pin opensearch{-dashboards}"" 2024-04-17 15:39:56 +00:00
Zuul
253379f699 Merge "prometheus: use inovex/prometheus-libvirt-exporter" 2024-04-17 12:35:23 +00:00
Zuul
081590b63b Merge "kolla-toolbox: Bump ansible-core to 2.16" 2024-04-17 12:25:13 +00:00
Zuul
bdb4a3ccdb Merge "Fix OpenSearch file ownership issues" 2024-04-17 09:16:23 +00:00
Michal Nasiadka
6efbc371f0 kolla-toolbox: Bump ansible-core to 2.16
2.15 patch was 2023.2 only - because we missed it last cycle [1]

ansible-core 2.16 requires python3.10 which is not the default
python in Rocky Linux 9 - therefore we use 2.15 there for now

[1]: https://review.opendev.org/c/openstack/kolla/+/910148

Change-Id: Ic8cc29230d82f4d1f07a3c97c3dcbcd14ac76074
2024-04-17 06:20:36 +00:00
Christian Berendt
986293e9d4 prometheus: use inovex/prometheus-libvirt-exporter
The Tinkoff/libvirt-exporter is archived. Latest release in December
2022. The inovex/prometheus-libvirt-exporter is an active fork that will
most probably become a prometheus community exporter in the future [1].

Unfortunately this exporter is not 100% compatible with Tinkoff exporter
that we are using currently [2].

[1]: https://github.com/prometheus-community/community/issues/50
[2]: https://github.com/inovex/prometheus-libvirt-exporter/issues/22

Change-Id: Icc8a3651d601ab45d448c9d252ca6155219d21cf
2024-04-17 06:19:11 +00:00
Michal Nasiadka
6e1ddf5a7b Move apt_prefs pins to respective images
Change-Id: I9eb51e079fee1322bcaaf9d481cd7890aeb77696
2024-04-16 18:43:18 +00:00
Michal Nasiadka
340350a387 Revert "CI/Master only: pin opensearch{-dashboards}"
This reverts commit 19a004e0a5.

Reason for revert: Fixed

Change-Id: I5491adef46fe0cec013a597cb05018d8d7e862f0
2024-04-16 18:33:55 +00:00
Zuul
c9e46b16e8 Merge "[release] Use Caracal sources by default" 2024-04-16 18:21:30 +00:00
Michal Nasiadka
7c098bdd3c Fix OpenSearch file ownership issues
Since 2.13 OpenSearch and OpenSearch-Dashboards packages
install files in /usr/share/opensearch and
/usr/share/opensearch-dashboards with root:root ownership
instead of using opensearch/opensearch-dashboards user.

Closes-Bug: #2061877

Change-Id: I3831d8ab76c8c7136ce7869db3d0d1e05b4ba8f8
2024-04-16 18:05:03 +00:00
Zuul
e5208303af Merge "Drop Freezer" 2024-04-16 16:31:00 +00:00
Zuul
b852738908 Merge "Drop Solum" 2024-04-16 16:16:40 +00:00
Zuul
9efdd6d151 Merge "Drop Sahara" 2024-04-16 16:06:11 +00:00
Zuul
bc30edef90 Merge "Drop Senlin" 2024-04-16 14:14:02 +00:00
Michal Nasiadka
0fb24ceefc [release] Use Caracal sources by default
Change-Id: Ib973325bb3ad04e1646b71595fa43903604d9b20
2024-04-16 12:22:47 +00:00
Michal Nasiadka
c69284fd8b Drop Freezer
It's inactive and hasn't produced a 2024.1 release [1].
There are some efforts to restore Freezer, but let's remove it for now.

[1]: https://governance.openstack.org/tc/reference/emerging-technology-and-inactive-projects.html#current-inactive-projects

Change-Id: If2d034789d8c1128597c9072b4e82d14f72492e0
2024-04-16 12:22:41 +00:00
Michal Nasiadka
a9bde9b1ac Drop Solum
It's inactive and hasn't produced a 2024.1 release [1].

[1]: https://governance.openstack.org/tc/reference/emerging-technology-and-inactive-projects.html#current-inactive-projects

Change-Id: I387e5c345cd5ea45e9231b9ce5baf58a8d74caf9
2024-04-16 12:22:36 +00:00
Zuul
cdc89a75f6 Merge "CI: Add codespell for spell checking" 2024-04-16 12:12:59 +00:00
Michal Nasiadka
4d9379ecc8 Drop Sahara
It's inactive and hasn't produced a 2024.1 release [1].

[1]: https://governance.openstack.org/tc/reference/emerging-technology-and-inactive-projects.html#current-inactive-projects

Change-Id: I7b5b032a4175c5390c9b7ff3fbd4c672adcb5325
2024-04-15 16:55:14 +00:00
Michal Nasiadka
d79c07effb CI: Add codespell for spell checking
Fix existing spell checking

Change-Id: Ief7b8f2d427b2557c84fda9b3774ed85ceb105f4
2024-04-15 14:56:34 +00:00
Michal Nasiadka
14a2e37f00 Drop Senlin
It's inactive and hasn't produced a 2024.1 release [1].

[1]: https://governance.openstack.org/tc/reference/emerging-technology-and-inactive-projects.html#current-inactive-projects

Change-Id: Iad4d850ba8f8b8446591cab883d2ad6243576926
2024-04-15 13:44:15 +00:00
Michal Nasiadka
813035ba8f Drop Murano
It's inactive and hasn't produced a 2024.1 release [1].
In addition to that, there's a CVE that hasn't really been patched [2].

[1]: https://governance.openstack.org/tc/reference/emerging-technology-and-inactive-projects.html#current-inactive-projects
[2]: https://lists.openstack.org/archives/list/openstack-announce@lists.openstack.org/thread/4FYM6GSIM5WZSJQIG4TT5Q3UBKQIHLWX/

Change-Id: Ie715eac24247c38b21382c735eb00a9b3b56f145
2024-04-15 13:44:06 +00:00
Michal Nasiadka
7e95ffb098 gnocchi: Bump to 4.6.2
This fixes werkzeug breakage [1].

[1]: https://github.com/gnocchixyz/gnocchi/releases/tag/4.6.2

Change-Id: I5d0659c9dffd6b7a3004696440d2879d60f327ea
2024-04-15 15:42:19 +02:00
Sven Kieske
19a004e0a5
CI/Master only: pin opensearch{-dashboards}
pin opensearch and opensearch-dashboards to 2.12. for now
Closes-Bug: #2060668
Related-Bug: #2060306

Change-Id: I3df4823d78474d94e138ff73f0f577bd247bdad0
Signed-off-by: Sven Kieske <kieske@osism.tech>
2024-04-12 15:51:05 +02:00
Zuul
3e502dc34d Merge "Update prometheus-mysqld-exporter to version 0.15.1." 2024-03-28 21:58:14 +00:00
Zuul
05f4826826 Merge "Updated letsencrypt-lego to version v4.15.0." 2024-03-28 19:55:27 +00:00
Zuul
eff04430c6 Merge "Update prometheus-mtail to version 3.0.0-rc54." 2024-03-28 19:50:01 +00:00
Zuul
7613d35c02 Merge "Update prometheus-memcached-exporter to version 0.14.2." 2024-03-28 16:35:14 +00:00
Zuul
84043757f5 Merge "Update prometheus-elasticsearch-exporter to version 1.7.0." 2024-03-28 16:35:09 +00:00
Zuul
61122050ab Merge "Upgraded prometheus-alertmanager to version 0.27.0." 2024-03-28 16:35:05 +00:00
Zuul
2f4715b4cc Merge "Update prometheus-v2-server to version 2.50.1." 2024-03-28 16:33:42 +00:00
Zuul
af3c70c5f7 Merge "Update prometheus-cadvisor to version 0.49.1." 2024-03-28 16:31:05 +00:00
Zuul
cf53c60aff Merge "Revert "openstack-base: Pin tooz to 5.0.0"" 2024-03-28 16:31:03 +00:00
Zuul
95a671b00d Merge "add: cross-compile support" 2024-03-28 16:29:14 +00:00
Marius Wernicke
4e0a68665b Updated letsencrypt-lego to version v4.15.0.
Also added a releasenote.

Change-Id: I30ee6ed32c536d0e3e90d0933d6049b316ad1263
2024-03-28 15:55:31 +01:00
Zuul
2576fbde00 Merge "Bump proxysql to 2.6.x" 2024-03-26 13:11:27 +00:00
Zuul
8f236dc8f4 Merge "openvswitch: Add ovs_wrapper for handling TERM" 2024-03-26 12:22:15 +00:00
Zuul
2aa8d9544e Merge "openvswitch: Move db conversion from kolla-ansible" 2024-03-26 10:36:53 +00:00
Zuul
b014b86deb Merge "[release] Change RDO's DELOREAN_DEPS repo to Caracal" 2024-03-26 07:51:13 +00:00
Maksim Malchuk
8102d02782 [release] Change RDO's DELOREAN_DEPS repo to Caracal
Change-Id: Ia7bb63dd799d13d8ca53d1a81db7ccda057b1559
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2024-03-25 11:43:36 +00:00
Michal Nasiadka
426744a271 openvswitch: Add ovs_wrapper for handling TERM
Partial-Bug: #2048130
Change-Id: I81eba2644eda6edd38c541f798bead04c2fa6578
2024-03-23 15:10:16 +00:00
Michal Nasiadka
e8a6a45721 openvswitch: Move db conversion from kolla-ansible
Partial-Bug: #2048130
Change-Id: I2f6c9045aa990b36716bb18d9f2eb699a35ee51a
2024-03-23 14:40:55 +00:00
Maksim Malchuk
1ccccec9b9 [release] Use UCA Caracal
Change-Id: Ib0e78581e6c34be650e59d8a044fe21b06ab45a9
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2024-03-20 20:37:10 +00:00
Michal Arbet
2bfdf4e7c9 Bump proxysql to 2.6.x
This patch bump proxysql 2.5.x to 2.6.x

Change-Id: I26e6c04ad0ba15ad4aa90f95259dc41cad439e73
2024-03-18 20:32:20 +01:00
Zuul
ff798d757b Merge "mariadb-clustercheck: Add a script handling signals" 2024-03-18 11:39:59 +00:00
Marius Wernicke
9193a96715 Update prometheus-v2-server to version 2.50.1.
Also add reno.

Change-Id: I719888dde26127ba9ab1a833d2c20a969cb89944
2024-03-18 08:05:54 +00:00
Marius Wernicke
85c0af5d40 Update prometheus-cadvisor to version 0.49.1.
Also add reno.

Change-Id: Id951e3cd4b91bcd604df57113841b1ca25bc80bb
2024-03-15 14:28:58 +00:00
Marius Wernicke
737624c780 Update prometheus-mysqld-exporter to version 0.15.1.
Also add reno.

Change-Id: Iec2cc1421e9e145714f45599712ef062d715477b
2024-03-15 13:16:04 +01:00
Marius Wernicke
f2cf1ef597 Update prometheus-mtail to version 3.0.0-rc54.
Also add reno.

Change-Id: I2b45abc65d4e4d65a9f07a16a64d4e7cf57b54b5
2024-03-15 13:12:33 +01:00
Marius Wernicke
ec8b04b454 Update prometheus-memcached-exporter to version 0.14.2.
Also add reno.

Change-Id: I01170e91b867e80fdb49eba021b36dd0ed86522a
2024-03-15 13:03:11 +01:00
Marius Wernicke
e3bc02751f Update prometheus-elasticsearch-exporter to version 1.7.0.
Also add reno.

Change-Id: I934af8fae9bc9b6442bc6b4be803cfb1a32f6676
2024-03-15 12:57:01 +01:00
Marius Wernicke
cc40ba6a18 Upgraded prometheus-alertmanager to version 0.27.0.
Also added a reno.

Change-Id: Ibd2836eb1e17ab1e3d9a8daf023d66e2683ffdff
2024-03-15 12:10:00 +01:00
Michal Nasiadka
4b44da75f0 Revert "openstack-base: Pin tooz to 5.0.0"
This reverts commit 15c37ab76d.

Reason for revert: Merge once tooz 6.0.2 is in u-c

Change-Id: I2c0ef876517a26965ba5b528c0ca260dcc93d248
2024-03-11 18:24:00 +00:00
Michal Nasiadka
a0e22caa8a Bump rabbitmq to 3.13
Pinning Erlang to 26.2.* (max supported version as per [1]),
so we don't break this in future when Erlang 26.3 becomes
available.

[1]: https://rabbitmq-website.pages.dev/docs/which-erlang

Change-Id: I1fd03a67914386129d7b0bb9be6aca86982f98f3
2024-03-11 15:11:54 +00:00
Zuul
f18b9142ad Merge "openstack-base: Pin tooz to 5.0.0" 2024-03-11 14:35:47 +00:00
Zuul
2023ad9413 Merge "Fix aarch64 builds" 2024-03-11 13:22:17 +00:00
Michal Nasiadka
3795887e5f Fix aarch64 builds
Those are failing now due to fixed setting of debian_arch variable
that was omitted in the general patch.

This patch also adds a validation on debian_arch cfg option

Change-Id: I372fe0bce4fc502eacce214d24c5bddd198bc33f
2024-03-11 09:34:14 +00:00
Michal Nasiadka
15c37ab76d openstack-base: Pin tooz to 5.0.0
tooz 6.0.0 is now in u-c and it broke redis, see [1].
tooz 6.0.1 did not help and 6.0.2 is in the works, see [2].

[1]: https://review.opendev.org/c/openstack/tooz/+/911648
[2]: https://lists.openstack.org/archives/list/openstack-discuss@lists.openstack.org/thread/HHNJ3XZR3DLSFIWXK2TZ3R7QSMMFFVPU/

Change-Id: If9ecf4a7fe703cfb87d4559790b39a5703ae49c4
2024-03-11 09:30:31 +00:00
Zuul
4b32dd50ab Merge "Remove calls to libvirt repo" 2024-03-01 16:15:31 +00:00
Zuul
a699013a6a Merge "Use openstack-exporter 1.7.0" 2024-02-29 13:24:56 +00:00
Michal Nasiadka
66e27b3b0a Remove calls to libvirt repo
It does not exist in repos.yaml since [1].

[1]: Id585c7744ba130ad1dfc28138fb0f9e6eeae771d

Change-Id: Ic74eba44fc6e5508976de24cf20a5039f3292731
2024-02-26 13:04:19 +01:00
Zuul
5448da7e36 Merge "Install ironic-inspector in bifrost" 2024-02-26 11:54:00 +00:00
Christian Berendt
4196f8d9fb Use openstack-exporter 1.7.0
Change-Id: I5570e405815d5f1fd0eeb017875cd2fa2ffed6bc
2024-02-22 20:42:01 +01:00
Will Szumski
832a6381c3 Install ironic-inspector in bifrost
Bifrost has moved to use the native in-band inspection support in
Ironic[1]. Some features are missing (such as introspection rules), so
it may still be desirable to use ironic-inspector for these use cases.
It also requires changes to the inspection interface of the ironic nodes
(ironic-inspector -> agent), so it also desirable to support
ironic-inspector for backwards compatability reasons. We should consider
dropping ironic-inspector once the native interface reaches feature
parity.

This will install ironic-inspector into the image, but will still
require configuration in bifrost.yml to use it.

[1] dcbf1d98b9

Change-Id: I3cc8455647339c67ba51620d5aff8a3acbf58dab
Partial-Bug: #2054685
2024-02-22 15:43:36 +00:00
Zuul
0246b32d70 Merge "Move curl sources to sources.py" 2024-02-22 13:43:09 +00:00
Michal Nasiadka
756ee984c3 opensearch: set OPENSEARCH_INITIAL_ADMIN_PASSWORD
Since 2.12 OpenSearch requires setting initial admin password,
that is not trivial/weak.

Closes-Bug: #2054586

Change-Id: I6b6ef656bc2009a2dc3cdfcb01956d50fba4b7b9
2024-02-21 15:37:07 +00:00
Michal Nasiadka
750a137815 Move curl sources to sources.py
Move most curl sources to sources.py, so it can be automatically
updated in future.

This also makes overriding the versions/locations/sha256 easier.

Change-Id: Ib3497fe96162ae190e5c113cacaaa3ef8334f590
2024-02-21 08:26:52 +00:00
Doug Szumski
b276a9cdb5 Remove the Prometheus HAProxy exporter image
- The source code is no longer maintained [1]
- HAProxy provides its own Prometheus metrics source [2]
- In Kolla Ansible, we have merged support for using the built in
  metrics source [3]

For these reasons, particularly the first, we should remove it immediately.

[1] https://github.com/prometheus/haproxy_exporter
[2] https://www.haproxy.com/blog/haproxy-exposes-a-prometheus-metrics-endpoint
[3] https://review.opendev.org/c/openstack/kolla-ansible/+/877118

Change-Id: Ia30e0fc367841df3726562b57b57df0f6fbb3a81
2024-02-15 15:57:52 +00:00
Bartosz Bezak
5f604316bf docs: update monthly stable releases loop
Change-Id: I72907f54d9392c8d1627e4dab724df9bb5e55330
2024-02-14 13:30:16 +00:00
Zuul
48c6352b70 Merge "ceph: Update EL9 version to Reef, adapt docs" 2024-02-09 17:32:09 +00:00
Zuul
9ad6332b13 Merge "Rework horizon image to support local_settings.d" 2024-02-08 13:34:31 +00:00
Michal Nasiadka
1edd9b38b6 ceph: Update EL9 version to Reef, adapt docs
Change-Id: I736fcfd766a378783dbfe06ab8ac58858e84aba7
2024-02-08 13:10:58 +01:00
Tadas Sutkaitis
3ee1a82d87 add: cross-compile support
The main goal is to be able to build ARM
images on standard x86 hardware. Add simple
functions supported by python-py and
podman-py to enable creation of container
images on emulated architectures.

Change-Id: I1526b460f6e271c2ec63ab3a3b1dc348d742e96d
2024-02-08 02:16:05 +02:00
OpenStack Release Bot
410fafa8f0 reno: Update master for unmaintained/yoga
Update the yoga release notes configuration to build from
unmaintained/yoga.

Change-Id: I148a5069041cc27a7f1afc6a10959348c49afa80
2024-02-05 16:07:07 +00:00
Michal Arbet
fde9264e66 Rework horizon image to support local_settings.d
The local_settings.py config is rendered by kolla-ansible
orchestration, which is not a good approach because upstream
local_settings.py can be changed anytime and that can be a problem,
as it was shown recently with the new version of horizon.

Fortunately, horizon supports local_settings overrides in
local_settings.d directory and moreover it's preffered
way how to configure horizon as per doc [1].

This patch just change the structure of files to support it.

[1] https://docs.openstack.org/horizon/latest/configuration/settings.html

Change-Id: Ib0c060adffe5287d786ba9247c6b962732cdb5e0
2024-02-05 12:30:48 +01:00
Zuul
e024397e9a Merge "toolbox: Improve retry loop for ansible-galaxy" 2024-02-03 11:15:19 +00:00
Zuul
f4edc7e1c1 Merge "[follow-up] Use full binary path when invoking ip" 2024-02-02 15:34:36 +00:00
Michal Nasiadka
94bd013ed5 toolbox: Improve retry loop for ansible-galaxy
Currently if it somehow fails for 5 times - we get exit code 0.

Closes-Bug: #2052293
Change-Id: I2bdeb77e3133123053b05adcbde3a426c60f3304
2024-02-02 14:58:49 +00:00
Zuul
d7a03105bf Merge "Use full binary path when invoking ip" 2024-01-31 13:27:20 +00:00
Michal Arbet
f73c6b4c75 [follow-up] Use full binary path when invoking ip
Patch [1] fixed invoking of ip command in
one script but forgot to fix on another place
in another script.

This patch is follow-up path and fix the same
issue in those script.

[1] https://review.opendev.org/c/openstack/kolla/+/906516

Change-Id: I5e41a550e438fb3e4008a9e6b8df35c4775c5c30
2024-01-31 13:42:36 +01:00
Zuul
20da26637d Merge "Revert "Fix gnocchi and skyline after requirements change"" 2024-01-26 14:13:16 +00:00
Zuul
bfea6052df Merge "trivial: fix typos in let's encrypt status logs" 2024-01-25 11:41:26 +00:00
Piotr Parczewski
c3eb169e6c Use full binary path when invoking ip
Closes-bug: #2051111
Change-Id: I2a4df6121236379d88d0d7f2f7a888feab273003
2024-01-24 13:23:52 +01:00
Dr. Jens Harbott
bf61b39013 Revert "Fix gnocchi and skyline after requirements change"
This partially reverts commit 76d78b50c0.

Reason for revert: skyline-api got fixed [0]

[0] https://review.opendev.org/c/openstack/skyline-apiserver/+/906357

Change-Id: I350524800ef8bd879791c6b7f32cd7ca1b99ceeb
2024-01-24 08:27:35 +01:00
Michal Arbet
76d78b50c0 Fix gnocchi and skyline after requirements change
Global-requirements changed upper-constraints in [1].
Because of that change skyline and gnocchi build is now failing.

This patch fixes upper-constraints for those projects.

[1] https://review.opendev.org/c/openstack/requirements/+/900435

Change-Id: I09cc2635cd422a859ccded887affb58dfbdc60ad
2024-01-23 08:44:53 +01:00
Piotr Parczewski
fc70184a0c trivial: fix typos in let's encrypt status logs
Change-Id: Icb158d296989ba7c99ba108e7697ca71176f07db
2024-01-20 20:53:09 +01:00
Zuul
1580d77821 Merge "Stop removing missing /run/nologin in RPM images" 2024-01-19 12:14:45 +00:00
Michal Arbet
7f5a904e98 Fix openstack CADF audit maps and installation
This patch fixes missing pycadf's audit maps
for services and change the way how pycadf
is installed.

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

Closes-Bug: #2047941
Change-Id: I9b43d1a9990ad8aa7381ea81b0f2d692967be949
2024-01-17 11:52:20 +00:00
Michal Nasiadka
dd3e46cd83 mariadb-clustercheck: Add a script handling signals
Since socat does not rewrite SIGTERM to exit 0 (see [1]) - let's fix it in a
different way.

[1]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=809633

Change-Id: If27d93c509496651f8aa5e49a7d63b24eda91a8e
2024-01-09 16:19:38 +00:00
Ghanshyam Mann
0eddd35da5 Update python classifier in setup.cfg
As per the current release tested runtime, we test
till python 3.11 so updating the same in python
classifier in setup.cfg

Change-Id: I462764b6ff8f8da0270daba82f2d6937070ba3c7
2024-01-08 20:21:53 -08:00
Pierre Riteau
fa3e5f444a Stop removing missing /run/nologin in RPM images
This code was valid for centos:8 and centos:stream8, but is not required
for centos:stream9 or rockylinux:9 which do not include this file.

Change-Id: I50f78d73afe0944dd91998ab9799fa2f36cc46a3
2024-01-08 22:39:33 +01:00
Zuul
9ebd51f799 Merge "Revert "CentOS/Rocky: use CentOS Cloud SIG repo instead of Delorean (Bobcat)"" 2024-01-03 15:58:27 +00:00
Zuul
5b49f4b10a Merge "Revert "[release] Use Bobcat sources by default"" 2024-01-03 15:24:32 +00:00
Zuul
73848851c6 Merge "Bump gnocchi version to 4.6.1" 2023-12-27 16:33:13 +00:00
Zuul
c58c590fe9 Merge "rabbitmq: Use timeout in healthcheck script" 2023-12-26 03:55:12 +00:00
Zuul
f908694e59 Merge "Sync only local cell in nova bootstrap & upgrade" 2023-12-21 17:43:20 +00:00
Zuul
a21a7a89d6 Merge "Summary JSON file" 2023-12-21 15:45:11 +00:00
Michal Nasiadka
9e261178ed Revert "[release] Use Bobcat sources by default"
This reverts commit 033286f4c1.

Reason for revert: Let's get back to master

Change-Id: I635d2bc20d897d037739702bf15cbb2e2bdcb0b1
2023-12-21 12:58:55 +00:00
Dr. Jens Harbott
b7c6ed79bf Bump gnocchi version to 4.6.1
Gnnochi has made a new patch release, let's use it.

Change-Id: I6a56639d9b61944cf2ea5efd1063ebd3c8950113
2023-12-21 13:54:50 +01:00
Alex-Welsh
de1487f051 Sync only local cell in nova bootstrap & upgrade
Added the --local_cell argument to nova db sync commands during
bootstrap and upgrade.

This was previously thought to have no effect [1], but has since been
discovered to fail when rotating the nova database password.

[1] https://opendev.org/openstack/kolla-ansible/src/branch/master/ansible/roles/nova/tasks/bootstrap_service.yml#L2-L3

Closes-Bug: #2045558
Change-Id: Ic64eb51325b3503a14ebab9b9ff2f4d9caec734a
2023-12-21 09:46:59 +00:00
Michal Nasiadka
559955d5a6 Revert "CentOS/Rocky: use CentOS Cloud SIG repo instead of Delorean (Bobcat)"
This reverts commit 2ed66effa6.

Reason for revert: Let's use RDO trunk

Change-Id: I3945fe5fd0aef2e12a7f6c60d714e69ea496083b
2023-12-20 17:05:25 +00:00
Michal Nasiadka
316bafaf07 CI: Use newer podman/buildah on Ubuntu Jammy
Change-Id: Ifce506b49571950ee16e26aae06f20aa94567722
2023-12-14 08:08:03 +00:00
Michal Nasiadka
8f863beb45 CI: Pin docker installation to <7
Docker 7.0.0 introduced a pre build check for tag regex, that is most
probably the culprit - see [1] and [2].

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

[1]: a9b5494fd0
[2]: https://github.com/docker/docker-py/issues/3195

Change-Id: I147c9715eb922abb6675a2786beaec85971718a8
2023-12-12 12:35:25 +00:00
Michal Nasiadka
4c8298de9a Revert "Disable build of Gnocchi containers"
This reverts commit 5505cd000c.

Closes-Bug: 2039051

Reason for revert: Builds properly now

Change-Id: I8fbe01340e539949d867a87a3d20326fc1a2b1b0
2023-12-04 14:06:27 +00:00
Michal Nasiadka
fb94f3aff7 bifrost: Don't use env-setup
env-setup script removes epel-release and this
breaks our CI template overrides.
It is also more geared towards using in opendev
CI - let's just install proper Ansible version
instead.

Change-Id: I68f645bef05dd15eba41479e3ef6713100fb87d0
2023-12-04 10:54:26 +00:00
Michal Nasiadka
2c2e601e78 CI: Add bifrost jobs for bifrost changes
Change-Id: I4d006701f696140e7d073c3d693141ad18ce6796
2023-12-03 08:13:39 +00:00
OpenStack Release Bot
f43e1e9757 Update master for stable/2023.2
Add file to the reno documentation build to show release notes for
stable/2023.2.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2023.2.

Sem-Ver: feature
Change-Id: I6ae1d206ec742105f5a3a53a81053757d0626b98
2023-12-01 11:55:38 +00:00
Zuul
e90d69644a Merge "bump td-agent lts from v4 to v5" 2023-11-30 22:01:07 +00:00
Zuul
1095ae25b9 Merge "Deprecate masakari, sahara, vitrage" 2023-11-30 13:31:20 +00:00
Zuul
8039fb60b7 Merge "Fix formatting of release notes" 2023-11-30 13:30:27 +00:00
Michal Nasiadka
fe1a74da98 Deprecate masakari, sahara, vitrage
Similar as in Kolla-Ansible [1], [2].

[1]: https://review.opendev.org/c/openstack/kolla-ansible/+/881555
[2]: https://review.opendev.org/c/openstack/kolla-ansible/+/901193

Change-Id: I9a5af7415889269d8ae009ad6427c9096776dfae
2023-11-30 13:01:27 +00:00
Sven Kieske
c0aee4adb6 bump td-agent lts from v4 to v5
notice that the td-agent command got renamed to fluentd.
see also the upgrade notes at[0].

for more details, refer to the changelog[1].

[0]: https://web.archive.org/web/20231006084137/https://www.fluentd.org/blog/upgrade-td-agent-v4-to-v5
[1]: b4b7017c09/CHANGELOG.md (release-v500---20230729)

Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/901509
Change-Id: I5e95363c6c180e330945fe3d98e97c7049bbd6f7
Signed-off-by: Sven Kieske <kieske@osism.tech>
2023-11-30 07:07:31 +00:00
Michal Nasiadka
30fd4b00ee fluentd: Add labels for transition to v5
Change-Id: Ibe0eb9ada69db3ef8042306fdec44bfda1dd9ce0
2023-11-29 18:08:08 +00:00
Michal Nasiadka
0cfc5c7c09 podman: install "rich" dependency
This dependency was added to podman-py in version 4.8.0, but not added
properly to their requirements. Install it explicitly for our tox
and integration testing as a workaround.

[0] https://github.com/containers/podman-py/issues/350

Change-Id: Ic0d9b2c26fe5474f579b72d6779243b7ad39b420
2023-11-29 19:07:31 +01:00
Zuul
54e05af7e5 Merge "Drop docker-py from requirements.txt" 2023-11-29 10:19:49 +00:00
Zuul
5c7c9b5a81 Merge "Handle the case where docker is not available" 2023-11-29 10:19:47 +00:00
Mohammed Naser
f5134a1894 Add magnum-cluster-api driver to Kolla images
Change-Id: I6b8780c2b869929a02b624bfb8c6087d5a82c74a
2023-11-28 17:53:00 +00:00
Michal Nasiadka
5a259fdafe Drop docker-py from requirements.txt
Since addition of podman - users need to install only one from docker|podman

Change-Id: I622eefad3b2e93f334028d9c0775a2cca558a39c
2023-11-28 11:08:01 +00:00
Bartosz Bezak
ef4bd9bbcd Handle the case where docker is not available
Change-Id: I473ea1c68d2fd7f15fa0545d77892276b1accfeb
2023-11-28 11:07:42 +00:00
Pierre Riteau
af0362b62c Fix formatting of release notes
Change-Id: Iddc0ac31aff06010c0c4017ff36737d52e90e2d6
2023-11-28 11:59:56 +01:00
Bartosz Bezak
81dc7a6b74 import packaging only for docker container engine
Change-Id: If4e0c0e5d6ed5c79ca7d8a3c8f16bfa665f6968f
2023-11-28 11:39:05 +01:00
Zuul
a9b4c5361f Merge "Swift: Remove unused rootwrap" 2023-11-26 20:05:53 +00:00
Takashi Kajinami
d7e497ce52 Swift: Remove unused rootwrap
Swift does not use oslo.rootwrap. Thus the command and its config file
is just useless.

Change-Id: If4e346c2db841aad9b2ddac049dbbbc1ba5782ec
2023-11-27 00:11:41 +09:00
Zuul
a19852598e Merge "Update Prometheus services to latest releases" 2023-11-25 10:20:14 +00:00
Zuul
3042a7e5ae Merge "CI: drop temporary vars for Bookworm switch" 2023-11-24 14:09:36 +00:00
Bartosz Bezak
773c6963e2 Update Prometheus services to latest releases
blackbox_exporter 0.22.0 -> 0.24.0
elasticsearch_exporter 1.5.0 -> 1.6.0
haproxy_exporter 0.13.0 -> 0.15.0
memcached_exporter 0.10.0 -> 0.13.0
mysqld_exporter 0.14.0 -> 0.15.0
node_exporter 1.4.0 -> 1.7.0
ovn_exporter 1.0.6 -> 1.0.7
prometheus 2.38.0 -> 2.48.0
prometheus_alertmanager 0.24.0 -> 0.26.0
prometheus_cadvisor 0.45.0 -> 0.47.2
prometheus_mtail v3.0.0-rc50 -> v3.0.0-rc52
prometheus_msteams 1.5.1 -> 1.5.2

Change-Id: If3f6ff059bedba5c92d97442d77e44aeecef71c4
2023-11-24 13:54:39 +00:00
Zuul
4e95910a82 Merge "Update Ceph repo name for dnf config-manager command" 2023-11-22 15:51:51 +00:00
Pierre Riteau
33c988a6ce Update Ceph repo name for dnf config-manager command
Since change I1bc19f8198da3f9ab2ae2a8864c3349b21b0249e we install the
centos-release-ceph-reef package as a dependency, but some code was
still expecting the quincy package.

Change-Id: I8ebcf815d80f3bead25e0078d69b34e17ad013bd
2023-11-22 10:06:39 +00:00
Michal Nasiadka
88bf4ba384 CI: drop temporary vars for Bookworm switch
Change-Id: Ic34a150282b0e77282c31ad03e6a9839b6636cc1
2023-11-22 06:49:04 +00:00
Michal Nasiadka
36df37be31 rabbitmq: Use timeout in healthcheck script
Currently we don't set timeout and the default is infinity.

Change-Id: Id1a87995a36e202fc0aaf82daf022ec10d78e37d
2023-11-22 06:48:07 +00:00
Pierre Riteau
c96965dc6e Fix documented OpenSearch version
We install the latest package available in the 2.x repository.

Change-Id: Ie63a7ce4b746dbe1a9649ac990904f2664920ad2
2023-11-21 14:48:16 +00:00
Zuul
d86cba116e Merge "CentOS/Rocky: use CentOS Cloud SIG repo instead of Delorean (Bobcat)" 2023-11-18 11:40:10 +00:00
Zuul
88589df599 Merge "Add rsync to nova-compute" 2023-11-18 11:39:45 +00:00
Zuul
adca3d1798 Merge "Adding db sync script for venus" 2023-11-17 19:01:29 +00:00
Zuul
587c70f761 Merge "etcd: update to v3.4" 2023-11-17 18:49:38 +00:00
Pierre Riteau
38e77b6015 Add missing newline at end of file
Change-Id: If0ab5696af19d2865b475d37d96cb0cbc3a619b2
2023-11-13 13:41:20 +01:00
Michal Nasiadka
2ed66effa6 CentOS/Rocky: use CentOS Cloud SIG repo instead of Delorean (Bobcat)
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/900536

Change-Id: I1bc19f8198da3f9ab2ae2a8864c3349b21b0249e
2023-11-09 18:11:16 +01:00
Zuul
9da8fd53f9 Merge "CI: Move ephemeral disk config to a role" 2023-11-09 16:46:54 +00:00
Michal Nasiadka
213e53e18a CI: Move ephemeral disk config to a role
Change-Id: Ieee71aa22f4ec45fe03f50fd697c85dda952b4d0
2023-11-08 09:57:32 +00:00
Michal Arbet
7fe6696c20 Fix letsencrypt-lego logging
This patch fixes formatting of letsencrypt, so
it will be easier to parse via fluent.

Change-Id: I8a403e14819df4351e28d53c676571a3ad0c14be
2023-11-07 18:20:35 +01:00
howardlee
772de9662c Adding db sync script for venus
The script for database synchronization is missing in the venus-api image,
which makes it impossible to create the required database tables during
venus deployment.

Closes-Bug: #2029915
Change-Id: Ibbf75fa73b8397ea3686b42cec6cad6d8f6d3858
2023-11-07 08:36:02 +00:00
Zuul
beed4b68e8 Merge "[docs] add instructions for optional dependencies" 2023-10-30 15:09:33 +00:00
Zuul
100b8b9aba Merge "Rework letsencrypt" 2023-10-30 09:51:05 +00:00
Zuul
5e7e80fd88 Merge "debian: use erlang and mariadb from respective repos" 2023-10-26 17:17:26 +00:00
Zuul
80a16bfc6e Merge "CI: speed up podman on el9" 2023-10-25 17:52:19 +00:00
Zuul
e770021469 Merge "Revert "CentOS/Rocky: use CentOS Cloud SIG repo instead of Delorean"" 2023-10-24 16:16:23 +00:00
Jan Gutter
c4b56a4b84
CI: speed up podman on el9
Before this commit the following warning message appeared
in the podman log:
  Not using native diff for overlay, this may cause degraded
  performance for building images: kernel has
  CONFIG_OVERLAY_FS_REDIRECT_DIR enabled

It appears that the default mount options for the overlay
graph driver is badly optimised for Kolla builds on el9:
* Enable native overlay diff
  https://mikeshade.com/posts/docker-native-overlay-diff/
  09480532cf
  https://github.com/containers/podman/blob/main/docs/tutorials/performance.md

Things that did not appear to make a difference:
* volume mounting /var/lib/container
  https://github.com/containers/buildah/issues/3666#issuecomment-1351992335
* enable transientStore
  https://www.redhat.com/sysadmin/speed-containers-podman-raspberry-pi
  note: currently incompatible with debian

Change-Id: I002e88b4b6162f6732e622fd97639d543c66784c
2023-10-24 09:37:43 +01:00
Jan Gutter
bd2b69e6f8 CI: fix podman info log collection
* capture podman config
* podman info needs sudo permissions
* before this fix, the podman info command failed with:
  Error: cannot set up namespace using "/usr/bin/newuidmap":
  should have setuid or have filecaps setuid: exit status 1

Change-Id: Ib3fe039a8c35421b56eedbd2d5197217b4a15a9a
2023-10-24 00:26:24 +01:00
Jeffrey Zhang
92cedcd2b1 Add rsync to nova-compute
when configure `remote_filesystem_transport` to rsync, rsync binary is
required.

Change-Id: I07be614846be9305f0775df22a6d931ceab1720a
2023-10-22 15:41:30 +08:00
Zuul
3ffa439fa3 Merge "Adds TAAS Neutron plugin to support OVS port mirrors" 2023-10-20 12:10:23 +00:00
FelipeAFV
5f35e578d8 Adds TAAS Neutron plugin to support OVS port mirrors
Related-Bug: #2022375
Depends-On: I7b48770709bd0fb9ea5072ce6c8673074c39ab2b
Change-Id: I8afb1ccddaa527378b7fd833bd51fb9bb9c4c58c
Signed-off-by: FelipeAFV <ffigueroa@whitestack.com>
2023-10-18 13:02:56 +00:00
Zuul
2f83de5325 Merge "[release] Use Bobcat sources by default" 2023-10-17 11:36:28 +00:00
Zuul
ab25bf485d Merge "Fix an issue with zun-cni-daemon building images in aarch64" 2023-10-16 10:42:05 +00:00
Dr. Jens Harbott
033286f4c1 [release] Use Bobcat sources by default
Change-Id: Iced4520e4cd8811c0e16227e130e094f5eba23e8
2023-10-12 11:53:04 +02:00
Sven Kieske
e4df04e961
mark gnocchi-base as unbuildable
Related-Bug: 2039051

Change-Id: If374f086e54be5b9799db7661c88b0204c4f507c
Signed-off-by: Sven Kieske <kieske@osism.tech>
2023-10-11 15:27:16 +02:00
Michal Arbet
a1261160da Debian: Switch from antelope to bobcat APT repository
Change-Id: Ife390597433fcededf15ecc09db626983e1b8cfd
2023-10-05 12:04:32 +02:00
Michal Nasiadka
43d50b7c8b Revert "CentOS/Rocky: use CentOS Cloud SIG repo instead of Delorean"
This reverts commit 881e3925c7.

Reason for revert: switch back to master, to be followed by switch to bobcat when available

Change-Id: Ib8fdad41a669fc8404b8de2de5361db9547c4ea2
2023-10-05 09:57:38 +00:00
Zuul
050418a2d4 Merge "Followup notes after 896616" 2023-09-30 10:36:01 +00:00
Zuul
366abde6be Merge "rabbitmq: use launchpad as erlang source for Ubuntu" 2023-09-29 22:46:40 +00:00
Michal Nasiadka
cc3948d40a Followup notes after 896616
Change-Id: Ia1e1183d9ff1e58e7ae910ed53a5f23bdf6e2fa8
2023-09-29 13:41:00 +00:00
Michal Nasiadka
abd9829343 CI: Remove Zun jobs
Following I6a2a4ffdcaf1c4fab1097e94d5f255ffb9a2947d

Change-Id: I3b32c15abd10b256f57e54a08f0b6e485ba2c123
2023-09-29 15:26:57 +02:00
Michal Nasiadka
5ef06be743 rabbitmq: use launchpad as erlang source for Ubuntu
Launchpad is not traffic constrained, so let's better use that,
instead of the community mirror.

Change-Id: Ie9e0f574c8e3a61e67736caa3faedb8602a5adde
2023-09-29 12:46:18 +00:00
Zuul
226d3c554d Merge "Fix build errors missing podman/docker module" 2023-09-29 11:18:43 +00:00
Zuul
29fbfbe5c4 Merge "rabbitmq: Use novemberain repos for Debian/Ubuntu" 2023-09-29 10:11:42 +00:00
Michal Nasiadka
19354d69d7 debian: use erlang and mariadb from respective repos
Change-Id: I48caa7516a6fe8803a5bb6a451355d7981400074
2023-09-29 09:10:14 +00:00
Michal Nasiadka
1d204e759a Fix build errors missing podman/docker module
Example:
Traceback (most recent call last):
  File "/home/ubuntu/kolla/kolla/image/build.py", line 79, in run
    task.run()
  File "/home/ubuntu/kolla/kolla/image/tasks.py", line 144, in run
    self.builder(self.image)
  File "/home/ubuntu/kolla/kolla/image/tasks.py", line 424, in builder
    if isinstance(e, podman.errors.exceptions.BuildError):
NameError: name 'podman' is not defined

Change-Id: I947c77750b3ccfb975e010c2042a3716e3e46bde
2023-09-29 04:59:16 +00:00
Michal Nasiadka
47b593d1e5 rabbitmq: Use novemberain repos for Debian/Ubuntu
CloudSmith is over budget, see [1].

As mentionedin in [2] - we're using amd64 packages on aarch64,
since the community mirror does not mirror aarch64 - and the packages
should be really marked as noarch.

[1]: https://github.com/rabbitmq/rabbitmq-server/discussions/9526
[2]: https://github.com/rabbitmq/rabbitmq-server/discussions/9553

Closes-Bug: #2037469

Change-Id: I83179ce5d53fed6cfe7f5fcbf6fdecd7199baa36
2023-09-29 04:58:34 +00:00
Zuul
fcfa3278c1 Merge "create parent dir of jobs_dir for freezer-scheduer" 2023-09-28 13:15:45 +00:00
Zuul
95a191e207 Merge "[docs] fix docker best practice link" 2023-09-26 11:01:16 +00:00
Zuul
91dcdeffb8 Merge "Drop openvswitch-netcontrold" 2023-09-22 14:22:23 +00:00
Sven Kieske
db0a389945
[docs] add instructions for optional dependencies
Change-Id: Iac6617a6755a8271f1cd423c50e79a82bc75e67b
Signed-off-by: Sven Kieske <kieske@osism.tech>
2023-09-21 14:42:26 +02:00
Michal Nasiadka
dbc9b1193e Drop openvswitch-netcontrold
Closes-Bug: #2027668

Change-Id: Ib8cd2356c6e4cdf7b2108a7fdedcb5a4b02768ca
2023-09-21 12:04:35 +00:00
Sven Kieske
28fd851210
[docs] fix docker best practice link
the old link redirects to this one

Change-Id: I9c5cd94ae98e54d7db23edfe89724a3c9747bcd7
Signed-off-by: Sven Kieske <kieske@osism.tech>
2023-09-21 13:44:40 +02:00
Michal Arbet
899545f4e9 [CI] Add podman build
Change-Id: I41b89ec87a4849668102ca9c9cc79f0ef9944b85
2023-09-21 11:01:21 +02:00
Michal Arbet
b76bd4c6ef Add podman for image building
Add podman as an option to choose for container engine
for kolla-build (--engine podman)

Signed-off-by: Konstantin Yarovoy <konstantin.yarovoy@tietoevry.com>
Co-Authored-By: Michal Arbet <michal.arbet@ultimum.io>
Change-Id: I068c906df97745e397408d8c3ef6af47ee037638
2023-09-21 11:01:21 +02:00
Michal Arbet
4871ca4d6b Lower limit for open files when installing fluent gem
Podman has default ulimit set to 1024, because
of that fluent build is failing.

Change-Id: I105351b58c530841e17fcba331fc4300eb8296f2
2023-09-21 11:01:21 +02:00
renliang
0eed86bb02 Fix an issue with zun-cni-daemon building images in aarch64
In the aarch64 image build,
use debian_arch to determine packages of different architectures.

Closes-Bug: #2036874
Change-Id: Ic86e6c22840f658bb68387aac688918d4db1f766
2023-09-21 06:45:47 +00:00
Zuul
3d703b60e6 Merge "toolbox: Add sleep script handling signals" 2023-09-18 18:36:17 +00:00
Michal Arbet
3213dccb8c Rework letsencrypt
This patch is adding "API layer" to letsencrypt
images which is represented by set of scripts inside.

This scripts are called by kolla-ansible orchestration.

Change-Id: I61b70fb4e12ba03b96e79004e735d2ead0f52319
2023-09-18 11:26:22 +02:00
Michal Arbet
299f1d6bdd Fix stderr logging when image build fail
Change-Id: Ie8730ae44cc26b87bd7eac93c8aac8dce8c7c5fc
2023-09-14 12:31:23 +02:00
Zuul
64098b209c Merge "Revert "macros/pip: revert to old setuptools way"" 2023-09-13 22:33:41 +00:00
Michal Nasiadka
f778b61c5c Revert "macros/pip: revert to old setuptools way"
This reverts commit 497b40fe5a.

Reason for revert: Should be fixed?

Change-Id: I524a4e1e34473fed523070eeeb9d0f3d0b1de26c
2023-09-12 19:41:27 +00:00
Zuul
e183e9a21e Merge "build: distutils.StrictVersion() is deprecated" 2023-09-11 20:04:00 +00:00
Zuul
7b020af8ab Merge "remove unused crmsh EL7 repo" 2023-09-11 19:43:51 +00:00
Sven Kieske
0a9da95183
remove unused crmsh EL7 repo
Change-Id: I1967202e23405ad713fd0d54337754d46566156d
Signed-off-by: Sven Kieske <kieske@osism.tech>
2023-09-11 09:18:55 +02:00
Zuul
3faa409173 Merge "Add python 3.10 to setup.cfg metadata" 2023-09-08 10:35:20 +00:00
Marcin Juszkiewicz
fd5ec1ca18 build: distutils.StrictVersion() is deprecated
kolla/tests/test_build.py::MainTest::test_run_build                                                                                                                                 [65/1834]
  /home/marcin/devel/linaro/kolla/kolla/kolla/image/build.py:117: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.
    StrictVersion(docker.__version__)

Change-Id: I2ebc8b0e35c67bf893deb89ea7fa0146dedd4640
2023-09-08 05:45:27 +00:00
Zuul
6759636058 Merge "Use latest tagged version from gnocchi again" 2023-09-06 19:56:37 +00:00
Zuul
78d3240b2b Merge "openstack-base: add block for overriding global upper constraints" 2023-09-06 08:59:54 +00:00
Zuul
fab86165eb Merge "Improve kolla-toolbox offline support." 2023-09-06 07:21:45 +00:00
Dr. Jens Harbott
d16f182998 Use latest tagged version from gnocchi again
In [0] we switched to using gnocchi from master, since we were needing a
fix that had not been released yet. Now gnocchi has release 4.6.0 with
the fix, switch back to using that tagged version.

[0] I3ca4e10508c26b752412789502ceb917ecb4dbeb

Change-Id: I22b39914b58ead7fa7addb1a1265353567d92476
2023-09-05 13:36:18 +02:00
Sahid Orentino Ferdjaoui
8243df271a openstack-base: add block for overriding global upper constraints
Introduces a new block `openstack_base_override_upper_constraints` to
provide users with the capability to globally override version
constraints for services.

This enables more flexible dependency management across all services.

Change-Id: I0d627487973311de8b23dd1519d41a0cab622fac
Signed-off-by: Sahid Orentino Ferdjaoui <sahid.ferdjaoui@industrialdiscipline.com>
2023-09-04 12:06:35 +02:00
Matt Crees
ec40b9de28 Document KOLLA_UPGRADE_CHECK environment variable
Adds docs for the KOLLA_UPGRADE_CHECK variable, introduced here:
https://review.opendev.org/c/openstack/kolla/+/878744

This feature currently hard-codes the Nova upgrade check, but should be
extended in the future to support the other services that have upgrade
checks. (Placement, for example:
https://docs.openstack.org/placement/latest/cli/placement-status.html)
The docs reflect this intention.

Change-Id: I0e9d482b1b26d3e4deddbf6d4a6c83bd8e021269
2023-09-01 09:28:33 +00:00
Zuul
c8625600a5 Merge "Add server-status handler to Rocky/Centos Apache conf" 2023-08-30 16:08:15 +00:00
Zuul
051049ea50 Merge "Add ironic-prometheus-exporter" 2023-08-29 16:58:30 +00:00
Zuul
9a97600b0c Merge "Add comprehensive checks for container restarts" 2023-08-29 16:12:56 +00:00
Robin Klostermeyer
f54fb018b0 Add ironic-prometheus-exporter
This commit adds the ironic-prometheus-exporter, following the
conventions used by the previously integrated exporters. '[The] Ironic
Prometheus Exporter is a Tool to expose hardware sensor data in the
Prometheus format through an HTTP endpoint.'[0]

[0] https://opendev.org/openstack/ironic-prometheus-exporter

Change-Id: If833f1f4a33c27cdc941dcc7cd5bbb06b26e1eaf
2023-08-29 12:40:24 +00:00
Zuul
1357391488 Merge "Transition to DockerClient" 2023-08-29 09:11:34 +00:00
Zuul
9ec5a76dea Merge "Add venus-dashboard into horizon image." 2023-08-28 15:30:18 +00:00
Zuul
19e140e6a5 Merge "Fix missing grafana opensearch datasource" 2023-08-28 15:09:43 +00:00
Michal Nasiadka
c9af85c584 Transition to DockerClient
Change to use docker.DockerClient instead of the low level
docker.APIClient.

Signed-off-by: Konstantin Yarovoy <konstantin.yarovoy@tietoevry.com>
Change-Id: I88842c17d8e6ddbe89b984c7b5e0367ed356fa50
2023-08-28 13:56:30 +00:00
howardlee
709d27ba37 create parent dir of jobs_dir for freezer-scheduer
Commit [1] deletes the relevant operation permission of the
/etc/freezer directory, causing the freezer-scheduler to have
no permission when creating the jobs_dir directory in the
/etc/freezer directory. This patch creates partent dir of
jobs_dir for freezer-scheduler, so that, freezer-scheduler
process can startup successfully.

[1] https://review.opendev.org/c/openstack/kolla/+/722102

Related-Bug: #2031953
Change-Id: I9c7fea3e0f70ff2e15394e99e26d21c548b95b16
2023-08-24 08:45:31 +00:00
Michal Nasiadka
8c5b6dc5bd toolbox: Add sleep script handling signals
Closes-Bug: #2031692

Change-Id: I8b69869cca98d83d3b1be3f4add88ff83b22b4a1
2023-08-23 08:55:34 +00:00
Zuul
4c31f7a3f2 Merge "debian: add mariadb bookworm repo" 2023-08-22 14:46:48 +00:00
Zuul
66f6478180 Merge "docs: we moved UNBUILDABLE_IMAGES to separate file" 2023-08-22 13:22:31 +00:00
Maksim Malchuk
daf9fdd3a6 Add server-status handler to Rocky/Centos Apache conf
This added to make Rocky/Centos similar to Ubuntu/Debian
to provide /server-status handler for local monitoring of the Apache.
Since I3ec1af6353c3ecc64589599abe375b0ae9b14d5c is merged it safe
to add this change.

Change-Id: I14ba7e0319b7eb0390361d397d4baad0e9a3f0b1
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2023-08-22 13:02:46 +00:00
Michal Nasiadka
08c0a47409 CI: move debian jobs to bookworm
Change-Id: Iecea40e3fb60cca2a15c592872e325576ad9a1b1
2023-08-22 13:51:39 +02:00
Michal Nasiadka
100e712481 debian: add mariadb bookworm repo
Change-Id: I1003edccbbe16b3c26f8754c17e0d83395ec33ca
2023-08-22 13:47:09 +02:00
howardlee
21c82c2be6 Add venus-dashboard into horizon image.
Change-Id: Idbb16f373260735e9650be57042952258a2ee3f9
2023-08-22 07:55:59 +00:00
Dawud
a97a561bab Fix missing grafana opensearch datasource
The grafana opensearch datasource was missing from the docker image.
This commit installs the datasource plugin.

Change-Id: Ia3a39c975abf815a66765f2f98c4789d6cec33d7
2023-08-21 16:26:10 +00:00
Zuul
999cabd6e0 Merge "Move to Debian 12 'bookworm'" 2023-08-21 15:11:35 +00:00
Michal Nasiadka
f000360c2d ubuntu: mark collectd and telegraf as buildable
Closes-Bug: #2019756
Change-Id: Ibf3983f49795eea1f75aa7efb120c812adab4c86
2023-08-18 12:47:11 +00:00
Marcin Juszkiewicz
7fa2ac132c Move to Debian 12 'bookworm'
We move to use some components from distribution instead of 3rdparty
repos. At least for now - this may/will change later.

Packages from Debian:
- Erlang 25.2
- MariaDB 10.11

Some Ubuntu/jammy repositories are used in places where there is not
(yet) Debian/bookworm one.

openvswitch-netcontrold image fails as it needs to be converted to use
virtualenv - added into unbuildable images for now.

See https://etherpad.opendev.org/p/kolla-bobcat-ptg#L199 for more information.

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

Change-Id: I45b5a5980fb2318f1aab23a3a6aaf0922563b171
2023-08-18 06:48:11 +00:00
Zuul
a004abbdc3 Merge "rabbitmq: bump version to 3.12" 2023-08-17 08:35:02 +00:00
Michal Nasiadka
63e5fc7fbb rabbitmq: bump version to 3.12
Erlang has been bumped to 26 as well.

Change-Id: I5a6e90790d9c3c148e118fdf2ce6089e0a6a343e
2023-08-16 06:55:45 +00:00
Marcin Juszkiewicz
d2c6a4e0ee docs: we moved UNBUILDABLE_IMAGES to separate file
Change-Id: I07ca5b82ecceda500e00260262c2a711c97b33bd
2023-08-14 09:06:54 +02:00
Sven Kieske
6ba4582e28
[release] Use UCA Bobcat
Change-Id: I0e6d16e96b85f133c49cbe49f815a285eddb6e33
Signed-off-by: Sven Kieske <kieske@osism.tech>
2023-08-10 10:37:15 +02:00
Jan Gutter
c3905e4b4c
etcd: update to v3.4
* Updates etcd to v3.4

Change-Id: I4da94a1725f563d8a957a064573323708fdc87df
2023-08-07 12:42:43 +01:00
Zuul
7f12d216dc Merge "Revert "Disable build of Gnocchi containers"" 2023-08-04 15:52:13 +00:00
Zuul
bd68acb60f Merge "Update stable branch management doc" 2023-08-02 13:16:15 +00:00
Maksim Malchuk
4e5e508282 Revert "Disable build of Gnocchi containers"
This reverts commit 5505cd000c.
Reason: Closed #1304 [1] as completed.
Also build from master until new tag releases since #1304 fixed
in master [2] only.

1. https://github.com/gnocchixyz/gnocchi/issues/1304
2. b52f7414d5

Change-Id: I3ca4e10508c26b752412789502ceb917ecb4dbeb
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2023-08-02 11:36:45 +03:00
Gaël THEROND (Fl1nt)
7f38e1df71 Improve kolla-toolbox offline support.
* Use structure that allow for custom package version and base URL.

Change-Id: I169e51c0f5c691518ada1837990b5bdd2a3d1481
Closes-bug: #2020761
2023-08-01 11:37:59 +00:00
Michal Nasiadka
1841cc852d mariadb: Add log for mariadb-upgrade
Change-Id: I7c01ba1127f3f0bbfddf373fa66cd2627e627415
2023-07-26 17:20:16 +02:00
Zuul
1c3b7cec67 Merge "Fix dockerhub secret name" 2023-07-26 08:40:56 +00:00
Dr. Jens Harbott
fb11fa2e8c Fix dockerhub secret name
In [0] the secret name was changed, but the references to it stayed
untouched.

[0] Ieceadb1f56908ce752f48b0884ed5cf764bc1ecd

Change-Id: I729b4c3ee9e91ee05b5d2413031669cd25d87156
2023-07-25 17:03:33 +02:00
Christian Berendt
77cfb749d1 octavia: bootstrap octavia_persistence database
Change-Id: I141dbf2f5338ce3ce8f66d0b948463a084b94f56
2023-07-14 17:37:09 +02:00
Dr. Jens Harbott
beab44f3a2 Update stable branch management doc
xena is now EM, add antelope instead.

Signed-off-by: Dr. Jens Harbott <harbott@osism.tech>
Change-Id: Icee5c1ad66171a72d4ec4c2373035a09382e08ff
2023-07-12 11:35:18 +02:00
Zuul
00cebc3cde Merge "base: Debian 12 uses new APT sources file" 2023-06-29 14:11:18 +00:00
Zuul
079e2f6a50 Merge "base: install adduser on Debian/Ubuntu" 2023-06-29 14:11:16 +00:00
Zuul
0fca84015a Merge "mariadb: Bump to current LTS (10.11)" 2023-06-29 10:37:09 +00:00
Michal Nasiadka
5bf088263c rabbitmq: Fix repo for ubuntu aarch64
That has been omitted in the original patch.

Change-Id: I9b69fff14507ad2d1838367bb8b81a3a73694071
2023-06-28 21:45:13 +02:00
Marcin Juszkiewicz
3e4d291b12 base: Debian 12 uses new APT sources file
For start we will use same APT sources.list format as we used in past
(and use with Ubuntu). But we need to remove what is in container to
make sure that CI jobs would use mirror only.

Change-Id: I82dd0e8667e44250d2892538819c12e6c775618b
2023-06-28 18:19:31 +02:00
Marcin Juszkiewicz
3de04436fa base: install adduser on Debian/Ubuntu
Debian:bookworm container does not have 'adduser' installed so
we need to do it before we touch /etc/adduser.conf file.

In Bookworm configuration file for adduser changed.

Change-Id: Ic06f3c0e42fb7854e5b198c9b868f10cd507cd24
2023-06-28 18:19:31 +02:00
Zuul
70f74eb641 Merge "Revert "neutron-mlnx-agent: pin pyzmq at 21.*"" 2023-06-28 03:14:49 +00:00
Zuul
40e40b9045 Merge "keepalived: remove legacy check_alive.sh entry" 2023-06-27 17:12:59 +00:00
Michal Nasiadka
89fafba669 keepalived: remove legacy check_alive.sh entry
Change-Id: I52c83428cf0c78b02e2ecd7921cf896acd6b0936
2023-06-27 11:00:59 +02:00
Michal Nasiadka
05f6fe8c30 mariadb: Bump to current LTS (10.11)
Depends-On: I2189dafca070accfd8efcd4b8cc4221c6decdc9f
Change-Id: I849608a8b90f48912e102ddab395b1a229346c5a
2023-06-26 08:48:14 +00:00
Michal Nasiadka
51675bb232 Use erlang-25 from copr on aarch64
Change-Id: I9f40167fed9412b3f33f82e2f97f353275431292
2023-06-26 10:37:10 +02:00
Michal Nasiadka
b33167972d opensearch: drop unnecessary workarounds
Change-Id: Id6db7ffb22b3f63e9a406455d52078b76071672f
2023-06-23 10:08:50 +00:00
Zuul
f89cb612e0 Merge "Revert "rabbitmq: pin to 3.11.16"" 2023-06-23 08:52:31 +00:00
Marcin Juszkiewicz
9abe6d7997 Revert "neutron-mlnx-agent: pin pyzmq at 21.*"
This reverts commit b2d5307a44.

Reason for revert: Bobcat uses 25+ version

Change-Id: I589a5ae43ccf52104b8cbce327ab13248d3bbde0
2023-06-22 11:49:50 +02:00
Marcin Juszkiewicz
d88074b623 config: switch OpenStack release back to master
2023.1 'Antelope' has stable/ branch so we can go back to master.

rocky/centos: mark bifrost unbuildable - EPEL issues - will be
fixed separately

Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/886395
Change-Id: I523e7465c3cf87ae4ee3fd16b3a79ddb0b707b37
2023-06-22 11:49:50 +02:00
Michal Nasiadka
1dba21d012 Revert "rabbitmq: pin to 3.11.16"
This reverts commit 600ed4f149.

Reason for revert: 3.11.18 is out with a fix

Change-Id: I4659bcd48ea32294b3ee84af9af94fae32b38bf3
2023-06-21 17:20:03 +00:00
Zuul
427c8b66aa Merge "rabbitmq: use erlang-25 ppa on Debian/Ubuntu" 2023-06-21 16:19:28 +00:00
Michal Nasiadka
0e881148d0 rabbitmq: use erlang-25 ppa on Debian/Ubuntu
RMQ team is now maintaining erlang-24, erlang-25 ppas, see [1].

[1]: https://github.com/rabbitmq/erlang-debian-package/discussions/33

Change-Id: I7e289bd5ce52319604717e0b319d0642a8e598db
2023-06-21 10:48:04 +00:00
wu.chunyang
8ccad439a4 Add python 3.10 to setup.cfg metadata
Add python 3.10 to setup.cfg
refer to https://governance.openstack.org/tc/reference/runtimes/2023.2.html

Change-Id: I008e32434e5046e3d7d2bd0cdf08ff3a37dc59b3
2023-06-21 09:36:55 +08:00
Michal Arbet
60603d240c Bump proxysql version
This patch bumps proxysql 2.4.x to 2.5.x

Change-Id: I6a67910965e38b53958fc6f8546fa6f665a47a16
2023-06-20 13:18:18 +00:00
Maksim Malchuk
11f90f3746 Fix cinder-volume: add missing nvme-cli rpm package
Closes-Bug: #2024390
Change-Id: I84c7633765749a5e9ced983505ef290c32154ccc
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2023-06-20 11:20:51 +00:00
Maksim Malchuk
5505cd000c Disable build of Gnocchi containers
Revert this commit when [1] is solved.

1. https://github.com/gnocchixyz/gnocchi/issues/1304

Change-Id: Iafeb9093340621d65a9c9cd126d65679d981dfb1
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2023-06-20 14:20:02 +03:00
Zuul
232e5c9b64 Merge "Fix cinder-volume: Add forgotten lsscsi rpm package" 2023-06-19 10:17:04 +00:00
Maksim Malchuk
2e2900e00b Fix cinder-volume: Add forgotten lsscsi rpm package
Closes-Bug: #2024018
Change-Id: I7eb97c6bfb65f26b044f26fece09521836ac5a3b
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2023-06-18 23:33:56 +03:00
Maksim Malchuk
b0804cd04c Fix Venus containers built from correct branch
Closes-Bug: #2023628
Change-Id: I76ac61604f5b0739ec27973a233a65e4c55c8c32
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2023-06-15 07:32:08 +00:00
Michal Arbet
4950c03e59 Fix rabbitmq image build
This patch is replacing ppa.launchpadcontent.net
by ppa1.novemberain.com.

Reason for replacement is that only latest erlang version
is available on the current ppa source.

Setting Debian ARM jobs non voting for now, since the new ppa
does not contain arm64 packages.

This repo is based on the official Erlang/OTP package
for Debian. The RabbitMQ team adapted the upstream package
to produce packages for more/different combinations of
Erlang/OTP, Debian and Ubuntu releases.

Change-Id: Iddec6ec555f98e13c2f199e5ca7dad7f4819b1a8
2023-06-14 21:28:05 +00:00
Mark Goddard
9035251443 mariadb-clustercheck: ensure /var/log/kolla/mariadb exists
If mariadb-clustercheck starts before mariadb, the directory may not
exist, and the command fails.

This is necessary for the refactored MariaDB restart in
I5a12670d07077d24047aaff57ce8d33ccf7156ff.

Change-Id: Ie1b36eb9a403611c2f86aa4c1d500d324e5291f3
2023-05-30 15:50:01 +00:00
Michal Nasiadka
600ed4f149 rabbitmq: pin to 3.11.16
Seems rabbitmq node drain got broken in 3.11.17

Related-Bug: https://github.com/rabbitmq/rabbitmq-server/issues/8414

Change-Id: I3a23670f85336344d8aebaded74dd65871837b82
2023-05-30 15:35:18 +00:00
Michal Nasiadka
878e9c0524 rocky/centos: mark bifrost buildable
Change-Id: I18d3ca8bd83a72dba15fc7e543270e260ae4dab0
2023-05-29 14:41:06 +02:00
OpenStack Release Bot
9e1b28022f Update master for stable/2023.1
Add file to the reno documentation build to show release notes for
stable/2023.1.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2023.1.

Sem-Ver: feature
Change-Id: I2e10f0aceb2eec74870d68311d14edd5672f702a
2023-05-26 08:40:37 +00:00
Michal Nasiadka
6786e4384c opensearch-dashboards: Fix permissions
Since we moved to using rpm/deb packages, the user has changed.

Related-Bug: #2020152
Change-Id: I2a5a0d761223b4e99c8df59f80261108380d5038
2023-05-23 14:27:51 +00:00
Michal Nasiadka
239f9adff7 CI: Move useful rocky/ubuntu jobs out of experimental
Change-Id: Id5de5ad70abd06b6d9ec81db9905786a282b7290
2023-05-23 15:11:55 +02:00
Zuul
58030f8677 Merge "ubuntu: use Antelope UCA" 2023-05-18 20:37:31 +00:00
Zuul
cfc05b7eb6 Merge "CentOS/Rocky: use CentOS Cloud SIG repo instead of Delorean" 2023-05-18 15:16:27 +00:00
Michal Nasiadka
665357248d ubuntu: use Antelope UCA
Skip using the mirror for now, given the OpenDev AFS
space issues.

Change-Id: I8e55c699e493494b3e5c908c7e8c370ce992fdf5
2023-05-18 14:54:56 +00:00
Zuul
704d521d62 Merge "prometheus: update ovn-exporter version to 1.0.6" 2023-05-18 12:03:35 +00:00
Zuul
c4ee8d88fe Merge "Fix docker version check after docker-py>=6.0.0" 2023-05-18 10:47:07 +00:00
Zuul
ac92a58d86 Merge "Revert "toolbox: pin ansible.posix to <1.5.4"" 2023-05-18 10:47:05 +00:00
Zuul
e444130fd4 Merge "antelope: tidy up renos" 2023-05-18 09:58:28 +00:00
Zuul
a3d30d5596 Merge "toolbox: use venv instead of virtualenv" 2023-05-18 06:37:13 +00:00
Michal Nasiadka
b923175744 antelope: tidy up renos
Change-Id: I09c26db52df26559d39a7506e6d67d0401548639
2023-05-18 07:15:50 +02:00
Zuul
ea95196955 Merge "mariadb: log bootstrap output to file" 2023-05-17 17:09:53 +00:00
Michal Nasiadka
881e3925c7 CentOS/Rocky: use CentOS Cloud SIG repo instead of Delorean
Antelope was released, landed in CentOS repo, time to use it.

Change-Id: I9fa8fd5dd9b75251363f1957d1e249e7cb4beb84
2023-05-17 16:44:33 +00:00
Michal Nasiadka
7aa6450491 toolbox: use venv instead of virtualenv
Change-Id: Id20394d06747b7f56e8745f129149c3f1c492ca7
2023-05-17 14:00:38 +00:00
Michal Nasiadka
a15e26ed8c Revert "toolbox: pin ansible.posix to <1.5.4"
This reverts commit d965b1b3da.

Reason for revert: Not required in master?

Change-Id: I03b8ed63687ed854a50d521043b04deaf76f7067
2023-05-17 11:55:01 +00:00
Michal Nasiadka
d965b1b3da toolbox: pin ansible.posix to <1.5.4
ansible.posix 1.5.4 has been released and it broke the way
we use JSON callback plugin (it requires play.path) - see [1] and [2].

[1]: 3bbf2e3cd5
[2]: https://github.com/ansible-collections/ansible.posix/issues/461

Change-Id: I2f879e59a64b9039a8a27c40bd462fde4df73f43
2023-05-16 12:35:14 +02:00
Michal Nasiadka
a5853f6a9e CI: Fix publish take 2 - add secret
Change-Id: I2ffdff2859576bb1346d81a6e17734e5255dc8b1
2023-05-10 09:22:19 +02:00
Michal Nasiadka
1cf4e75aaa CI: Fix visibility publish task
Change-Id: I41bab698e17254d8c92e621ba9b88b6fe20c2300
2023-05-08 13:02:17 +02:00
Michal Nasiadka
1cae428f95 mariadb: log bootstrap output to file
Depends-On: https://review.opendev.org/c/openstack/ansible-collection-kolla/+/882344

Change-Id: Id627edcc2a42643ad3ae6184d972aca760474634
2023-05-08 10:12:25 +00:00
Michal Nasiadka
050e26ed89 Fix docker version check after docker-py>=6.0.0
docker-py reworked their version function and now it does not
return a string [1].

Example:
>>> import docker
>>> docker.version
<module 'docker.version' from '/home/cloud-user/kolla-venv/lib64/python3.9/site-packages/docker/version.py'>

[1]: cd2c35a9b6

Closes-Bug: #2018559

Change-Id: I5ec0fbfdaf18cf53a6b5bf91236d3e040daa9d7e
2023-05-05 06:20:11 +00:00
Zuul
115b46f76f Merge "CI: Ensure quay repo is public on publish" 2023-05-04 10:38:18 +00:00
Mark Goddard
a5351473e0 Summary JSON file
Add support for writing the build summary to a JSON file. This is more
machine-friendly than the current approach of writing to standard output
at the end of the build.

The file is configured via [DEFAULT] summary_json_file.

Change-Id: I9868af5d00977750d0673fc48f8863a99f878dc8
2023-04-27 12:19:31 +00:00
Zuul
3be1b71948 Merge "opensearch: move to yum/apt repos" 2023-04-27 09:35:00 +00:00
Michal Nasiadka
6bd7898a1d opensearch: move to yum/apt repos
systemd-tmpfiles is needed otherwise opensearch
postinst on Debian/Ubuntu fails

Change-Id: I5aeb5796f8de7697a1c4a7404fe292ef9eb522ee
2023-04-25 11:38:49 +02:00
Dawud M
3efd8126bd Fix typo in set_configs
Change-Id: I62a62bf80a7d3c7708cb5e836dc81dd1364d5a40
2023-04-24 15:05:51 +00:00
Marcin Juszkiewicz
19e40f1608 docker: implement macros to alter upper-constraints.txt
upper_constraints_remove() macro allows to remove line
upper_constraints_version_change() allows to change versions

This way we have cleaner way to alter u-c in those images which need it.

Change-Id: I8fc354b8aa4d03fcd3ecfb9cbfe75de67492a0e3
2023-04-21 14:13:24 +02:00
Zuul
2b0a5f684b Merge "Update Stackalytics links" 2023-04-19 17:11:09 +00:00
Zuul
9a8a8aa1b3 Merge "docker: use python3-venv to create virtual env" 2023-04-18 15:52:14 +00:00
Zuul
ac86cb997b Merge "Glance-api fails due to absent multipath tools" 2023-04-17 15:35:16 +00:00
Maksim Malchuk
d23ace3fa6 Glance-api fails due to absent multipath tools
Closes-Bug: #2015500
Change-Id: Ifa095a4a5a4a2476b356b082b9b57b491c9e29db
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2023-04-13 14:07:48 +03:00
Zuul
bc2d3e4ef4 Merge "nova-libvirt: Fix for missing libvirt-daemon-driver-nodedev package" 2023-04-07 11:14:50 +00:00
Rafal Lewandowski
2783fb7107 nova-libvirt: Fix for missing libvirt-daemon-driver-nodedev package
Closes-Bug: #2012821
Change-Id: I989cedce7a9af3882b5510d3479b29150139e861
2023-04-06 13:14:06 +00:00
Michal Nasiadka
55ffa0caab [release] Use Antelope sources by default
Change-Id: Icd8abe99e5b4c006168f391596f5c784cd8882af
2023-04-06 09:41:12 +00:00
Zuul
32922bbbae Merge "Revert "rabbitmq: Pin to 3.11.11"" 2023-04-01 16:46:26 +00:00
Dr. Jens Harbott
dbde2a8cdc Revert "rabbitmq: Pin to 3.11.11"
This reverts commit dda3bf45b2.

Reason for revert: fixed in 3.11.13

Change-Id: Ia1288a7fecb2e4a96564bd9adb9ce9d8415c61ac
2023-04-01 07:59:59 +00:00
Michal Nasiadka
143765fb67 Fix test malicious tarball fail
Since I650fcbc8f773fad8116338f6fb0cf7b4f4f17b33 builds from git fails
on plugins with an exception: 'tarfile.ReadError: not a gzip file'
because the test checks only gzip compressed archives but plugins
created as plain tar files. This change fixes the issue using
transparent compression support and also adds some debug info.

Closes-Bug: #1990432
Change-Id: If0f9b4dd058a257d0653332d1b663e150c717304
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
Co-Authored-by: Michal Nasiadka <mnasiadka@gmail.com>
2023-03-31 12:35:42 +00:00
Michal Nasiadka
dda3bf45b2 rabbitmq: Pin to 3.11.11
Change-Id: I040b24c294e5daa07ece9f4a0f58fcab5cdf185f
2023-03-31 08:31:30 +00:00
Zuul
be15d6212f Merge "keystone: Fix for missing libldap-common package for debian" 2023-03-30 11:17:14 +00:00
Zuul
30cc9c58e0 Merge "Add support for running Nova upgrade checks" 2023-03-29 12:57:38 +00:00
Rafal Lewandowski
2050aa35db keystone: Fix for missing libldap-common package for debian
Closes-Bug: #2009484
Change-Id: I01578289e65010748bfaf6d6b81861764aa62368
2023-03-29 11:44:58 +02:00
Zuul
e559f2194b Merge "ovsdpdk: add libdpdk-dev" 2023-03-28 15:53:14 +00:00
Piotr Parczewski
2ddf0aeb20 Replace invisible unicode chars
They're believed to have no special meaning and were put by accident.

TrivialFix

Change-Id: I66ea5711810ed0060cf89192a780bfcc92e79770
2023-03-28 14:09:01 +02:00
Pierre Riteau
48b5980c63 Add support for running Nova upgrade checks
Related-Bug: #1957080
Change-Id: I6cbbdfcd40a8f486a3a636b41d704ee6ffafb812
2023-03-28 09:03:20 +02:00
Pierre Riteau
41c489715f docs: Rename Community maintained to Untested
This change was agreed during the Bobcat PTG to better reflect the
status of these projects in Kolla.

Change-Id: Ice2ff5eaa0991c65b6c534721f13182dbb27d14c
2023-03-27 17:10:59 +02:00
Zuul
be0e89d600 Merge "neutron-mlnx-agent: pin pyzmq at 21.*" 2023-03-27 14:23:40 +00:00
Zuul
503488d550 Merge "Cinder backup fails due to absent multipath tools" 2023-03-27 14:23:37 +00:00
Michal Nasiadka
58b265f46d CI: Ensure quay repo is public on publish
Change-Id: Ib49e7c51be552a9aad0526841e7cffe588189371
2023-03-27 12:19:08 +00:00
Vladislav Belogrudov
d98b480925 Cinder backup fails due to absent multipath tools
Closes-Bug: #2012508
Change-Id: I7d9c53297db1a9bd14e3e69b58867293014af69b
2023-03-22 15:27:01 +03:00
Michal Nasiadka
d7d43bed84 neutron: Add iproute-tc
Closes-Bug: #2000782
Change-Id: I5cf944c509f23d430665de458cbbdb2fd31db7bb
2023-03-22 10:59:34 +00:00
Zuul
bcfd77bae7 Merge "base: make curl retry on all errors" 2023-03-21 15:30:23 +00:00
Zuul
8d1db2eb52 Merge "gnocchi: bump to 4.5.0" 2023-03-21 15:09:16 +00:00
Zuul
32170b0085 Merge "Add Dockerfile for neutron-ovn-agent" 2023-03-21 11:00:51 +00:00
Marcin Juszkiewicz
b2d5307a44 neutron-mlnx-agent: pin pyzmq at 21.*
20.* fails to build so let us try version where upstream fixed packaging
issues.

Change-Id: I099b21872a12c2dccaba4065965d9227ee2e87bc
2023-03-20 21:11:18 +01:00
Rodolfo Alonso Hernandez
aa9d3b8e58 Add Dockerfile for neutron-ovn-agent
This patch adds support for the new OVN Neutron Agent [1]. This
new agent will include any needed OVN functionality not implemented
in ovn-controller. This agent will, in a future, include the
metadata service, superseding the OVN Metadata Agent.

[1]https://review.opendev.org/c/openstack/neutron-specs/+/868076

Related-Bug: #2000385
Related-Bug: #1998608
Change-Id: Ib15a89ce9ba7b1c5121a627da9d130dc5bf5a044
2023-03-20 19:09:47 +00:00
Marcin Juszkiewicz
ca16f7ae7d docker: use python3-venv to create virtual env
Debian 'bookworm' does not like when someone installs Python packages
into system directories. So instead of installing 'virtualenv' from pip
we move to use 'python3 -m venv' which we install from distribution
repositories (on Debian/Ubuntu as EL9 has it in base 'python3').

Change-Id: I7092b561d81c362ca24f84a3d753e777e5625ab3
2023-03-20 17:45:08 +01:00
Zuul
429d8456fc Merge "Remove ipxe code for Ubuntu Focal" 2023-03-20 16:42:51 +00:00
Pierre Riteau
516b7cd578 gnocchi: bump to 4.5.0
Change-Id: Iec4f243d6fe95dad4ea01225a651e86bd1a0428e
2023-03-20 13:21:16 +00:00
Michal Nasiadka
90e157e3e3 base: make curl retry on all errors
Change-Id: Icbf54154e4a2dffd840cfda9b6a863247d28c226
2023-03-20 09:19:06 +00:00
Michal Nasiadka
3d008b7f5e Test for unsafe files in tarfile.extractall
In addition to that, mark bifrost unbuildable since it's
failing on EPEL 9 enablement.

Closes-Bug: #1990432

Change-Id: I650fcbc8f773fad8116338f6fb0cf7b4f4f17b33
2023-03-17 09:09:35 +00:00
Piotr Parczewski
6789bf8d58 Update Stackalytics links
Change-Id: Ic7871c79d0916b99f3fd2243a0fa4f9d84aca37e
2023-03-14 09:49:17 +01:00
Dawud M
d9a6c5f390 Add comprehensive checks for container restarts
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
2023-03-09 18:03:58 +00:00
Michal Nasiadka
12d431e399 https: remove dhparams.pem before running gencerts
On EL9 the file exists and script errors with wrong
permissions to it.

Change-Id: Ib32baa3208e6bfc5520ff8537193c9a4d6cbada7
2023-03-07 12:01:58 +00:00
Zuul
9438509e9d Merge "Revert "bifrost: mark unbuidable for Ubuntu"" 2023-03-02 15:23:13 +00:00
Michal Nasiadka
575a090af2 toolbox: Increase galaxy timeout and retry download
Change-Id: I6e66aea5dc0af61fbc074b4c8ed3910435c98dbd
2023-02-28 14:38:10 +00:00
Zuul
35088cf281 Merge "Add a way to add other container engines" 2023-02-27 12:57:29 +00:00
Michal Nasiadka
48d44c286f Revert "bifrost: mark unbuidable for Ubuntu"
This reverts commit b2f747fbba.

Reason for revert: Fixed in bifrost

Depends-On: https://review.opendev.org/c/openstack/bifrost/+/874650

Change-Id: Id409c2b5423791d4ca9626e376de07ef7c1a8d8e
2023-02-24 09:09:23 +00:00
Zuul
a627713720 Merge "toolbox: use ansible-collections-openstack >2" 2023-02-23 21:20:12 +00:00
Michal Nasiadka
a83585d928 toolbox: use ansible-collections-openstack >2
Change-Id: I6564886f68a997b82b49b6f975283a6d95831ce6
2023-02-23 18:03:47 +00:00
Zuul
83cb88fdad Merge "[Doc] Add venus project in README.rst" 2023-02-22 13:58:37 +00:00
Zuul
7bbf36cca0 Merge "CI: Additional disk followup" 2023-02-21 17:39:17 +00:00
Zuul
c91513d3eb Merge "CI: update docker hub publish creds" 2023-02-21 17:26:37 +00:00
Zuul
fd952d8832 Merge "CI: Retry docker push on publish jobs" 2023-02-21 17:26:34 +00:00
Matthew N Heler
9e44184456 prometheus: update ovn-exporter version to 1.0.6
Change-Id: I1c5af7cd496803dcabed2fe14a20be00c61e54e6
2023-02-21 08:17:29 -06:00
Michal Nasiadka
5fe335d143 CI: Additional disk followup
state present only defines mount in /etc/fstab, does
not do the actual mount
Need to symlink /var/lib/docker to separate disk,
work-dir only templates out dockerfiles and downloaded
content

Change-Id: I06e262cd48d33ccfc0634589c82dcac80dff51af
2023-02-21 13:51:26 +00:00
wu.chunyang
8b987d289d [Doc] Add venus project in README.rst
trivial fix

Change-Id: Id0c31ba9f43af71afd26884ace3b0b26c0dbbe4c
2023-02-20 23:47:36 +08:00
Michal Nasiadka
a0d758019a CI: Configure additional disk when available
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.

Change-Id: I179c41032239f5f0ce6055c79295b32c33fe67a5
2023-02-20 13:24:06 +00:00
Michal Nasiadka
b2f747fbba bifrost: mark unbuidable for Ubuntu
Ubuntu packages have changed efi shim file name and bifrost is
failing.

Change-Id: I0d072ae6081a9427aebf4dc562501a0a6ef160d0
2023-02-20 11:35:25 +01:00
Michal Nasiadka
e43317bc4e CI: update docker hub publish creds
Change-Id: Ieceadb1f56908ce752f48b0884ed5cf764bc1ecd
2023-02-17 17:28:41 +00:00
Michal Nasiadka
0887d2e789 CI: Retry docker push on publish jobs
We have a high number of POST_FAILURE jobs failing on at least
one container push - let's fix that.

Change-Id: I0015dd4d3ffe5b3e1202ebcfde2b2c72c4655b41
2023-02-16 08:24:16 +01:00
Pierre Riteau
9da0d15189 Remove ipxe code for Ubuntu Focal
The ipxe package in Ubuntu Jammy includes snponly.efi [1]. Remove code
to handle Focal in which snponly.efi is absent from the ipxe package.

[1] https://packages.ubuntu.com/jammy/all/ipxe/filelist

Change-Id: I5f494de36e6400b5486c1fb786b73c9e1512a046
2023-02-15 14:00:30 +00:00
Michal Nasiadka
ca0238598a Pin setuptools=67.2.*
67.3.1 is out and it broke Horizon builds

Change-Id: Ie6c078a9c37f54d60f0d5a4aadb647e184489cb8
2023-02-15 11:25:38 +01:00
Zuul
c1cea309a4 Merge "Bump Opensearch and Opensearch Dashboards to version 2.5" 2023-02-10 10:48:29 +00:00
Zuul
84f5cc6616 Merge "CI: Add rocky9 upgrade jobs" 2023-02-08 12:58:49 +00:00
Zuul
7fe36abb4f Merge "CI: store only templated out Dockerfiles in work_dir" 2023-02-08 11:53:18 +00:00
Zuul
421fa62d0c Merge "rabbitmq: upgrade to 3.11" 2023-02-08 11:25:39 +00:00
Bartosz Bezak
4a79008c10 CI: Add rocky9 upgrade jobs
Depends-on: https://review.opendev.org/c/openstack/kolla-ansible/+/872317
Change-Id: I668de156d260370fd704b106a34790995dfb685b
2023-02-08 10:40:00 +01:00
Zuul
f3e5a90ca9 Merge "toolbox: bump ansible-core to 2.14" 2023-02-08 01:34:43 +00:00
Zuul
43e0b27c18 Merge "grafana: update urls" 2023-02-08 01:34:40 +00:00
Michal Nasiadka
c45a742e6f CI: store only templated out Dockerfiles in work_dir
Change-Id: I0832d7997536f5f0dc195d5038545b6cc220f0fa
2023-02-07 14:23:32 +00:00
Bartosz Bezak
3f19e4bb88 Bump Opensearch and Opensearch Dashboards to version 2.5
Depends-on: https://review.opendev.org/c/openstack/kolla/+/872557/
Change-Id: I2c71a6ecd114d84291e3564e07e7c3c160f53b33
2023-02-07 15:07:26 +01:00
Michal Nasiadka
16f27c5496 CI: Install Apparmor
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
2023-02-07 11:18:10 +00:00
Michal Nasiadka
d9f4c78e87 rabbitmq: upgrade to 3.11
Change-Id: I4836806c0434caaff1e6fd1646aa5566b0c3d7e1
2023-02-01 11:26:44 +01:00
Michal Nasiadka
61f649febe toolbox: bump ansible-core to 2.14
Change-Id: I17045980b6f73a0395b1bdfd3b1b6b63679284c9
2023-02-01 11:26:13 +01:00
Michal Nasiadka
9ea0725dac grafana: update urls
As per [1].

[1]: https://packages.grafana.com

Change-Id: I7087bafffc56b6e660ec77ebeadb9132525697bb
2023-02-01 08:42:35 +00:00
Zuul
5cc1f8c15e Merge "skyline: Add new dashboard" 2023-02-01 07:11:14 +00:00
Zuul
0c8ce111ba Merge "use underscore for unused variable in loop" 2023-01-31 07:13:31 +00:00
Michal Nasiadka
f7436ee602 ovsdpdk: add libdpdk-dev
Closes-Bug: #1980328
Change-Id: I29dde2696ff81f3f48effdd6821d94d0d84ff536
2023-01-31 07:41:29 +01:00
Zuul
ad3c8954de Merge "CI: Add work dir" 2023-01-31 06:29:30 +00:00
Zuul
483d3a9426 Merge "sahara: install netcat-openbsd on Debian/Ubuntu" 2023-01-31 05:42:22 +00:00
Michal Nasiadka
c8596ddda4 CI: Add work dir
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
2023-01-31 01:04:37 +00:00
yangshaoxue
9d4736820f skyline: Add new dashboard
Skyline is a new dashboard for openstack. It contains
skyline-apiserver and skyline-console.
We will build both skyline-apiserver and skyline-console
images for skyline.

Implements: blueprint skyline
Change-Id: I68a562f15bf4fdda82b86c446e14fc8b5594413a
2023-01-30 23:40:42 +00:00
Zuul
8f0d9226a8 Merge "CI: add ubuntu opensearch experimental job" 2023-01-30 17:10:55 +00:00
Hoai-Thu Vuong
b8ebae9e37 use underscore for unused variable in loop
Change-Id: If42a89642f0322c52bed44f402a8dcbb9c0a9bd6
2023-01-30 16:05:17 +00:00
wu.chunyang
1bb082d35a Switch trove-api to wsgi running under apache.
Drop 'USER trove' from trove-api, trove-api runs under
apache needs run as root

Change-Id: I8882484b32a3a3fbde52f58c1209e8c127ea9931
2023-01-30 13:34:49 +00:00
Michal Nasiadka
ab70c7618b influxdb: Update gpg key
Influx repo gpg key has been rotated as of of 2023-01-26 [1].

[1]: https://www.influxdata.com/blog/linux-package-signing-key-rotation/

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

Change-Id: I76b35bb20ddc0130ca15ff03942e1a97f5d36ff0
2023-01-30 13:10:27 +00:00
Michal Nasiadka
1371e4fc5b Add util-linux to centos base packages
Currently /usr/sbin/nologin is missing, because util-linux
is not installed in the image.

Change-Id: I717b4f2215054ef9135a1ac252ed26820bdcb1aa
2023-01-25 16:22:15 +00:00
Michal Nasiadka
1a9c1e8107 CI: add ubuntu opensearch experimental job
Change-Id: I46945f994c2e4d86989b35836604140329267e84
2023-01-23 08:39:38 +01:00
Marcin Juszkiewicz
42cf9c34ac sahara: install netcat-openbsd on Debian/Ubuntu
By default in both Debian:11 and Ubuntu:22.04 'netcat' means
'netcat-openbsd'.

Debian 'bookworm' 12 will not have such default. So let install proper
package.

Change-Id: I9795fca15aa3e9d59eb686ff749245bf618639cf
2023-01-20 19:09:08 +01:00
Michal Nasiadka
a16331de20 CI: Add rocky9 experimental jobs
Change-Id: I537edd2a4d5ad7107e6f40022ee99c0f72f18ab2
2023-01-20 15:45:21 +00:00
Michal Nasiadka
61594f653a CI: Rename jobs - drop source part
Also stop setting base_distro for rocky - it's done on k-a side.
Dropping prometheus-efk job as well.

Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/871080
Change-Id: I9e8140037fa9c676e67e3c7a0434833099a7f593
2023-01-19 16:16:34 +01:00
Michal Nasiadka
47a9a81859 grafana: remove SHA1 workaround
Change-Id: I08fe2827bc58baa95d396daf28de1079e3df4f77
2023-01-18 07:39:30 +01:00
Erik Panter
a840ac0d7c relay non-zero exit codes when creating openvswitch bridges
Calls to `ovs-vsctl` in `ovs_ensure_configured.sh` did not get checked
for errors.
This can cause false success statuses when
the script is run by automation tools such as ansible.

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

Closes-bug: #1999778
Change-Id: Iad83132b61efadbf09aa9aa2edf96235085764c6
2023-01-16 13:25:40 +00:00
Zuul
7b6206294c Merge "CI: drop kolla_python_version from Ubuntu jobs" 2023-01-11 13:39:43 +00:00
Zuul
9bd89f6d0d Merge "CI: CentOS/Rocky: revert Delorean repo url at the end" 2023-01-11 10:39:03 +00:00
Michal Nasiadka
629b1241fc CI: drop kolla_python_version from Ubuntu jobs
Change-Id: I757482e0c9df099197d0e5f388bbc8541aa4c651
2023-01-11 11:12:18 +01:00
Bartosz Bezak
1036d802f5 Remove install_type command line argument in Antelope cycle
Change-Id: Id2d9ded90b7c83e29782ddcf794d57f944ddccb4
2023-01-10 13:43:41 +00:00
Marcin Juszkiewicz
c9e60c0b21 CI: CentOS/Rocky: revert Delorean repo url at the end
We revert all repos to their normal versions. This change takes care of
forgotten Delorean repos.

Change-Id: I8bcddbd6ebf3119f4f56d86e47377f27b8671b1a
2023-01-10 13:34:09 +00:00
Michal Nasiadka
9fd6e3608e Drop skydive
The project is not maintained anymore, last commit is 8th Jan 2022.

Change-Id: Iefbc3481925156dd267c696c8ab8b306637f5564
2023-01-04 11:51:35 +01:00
Zuul
caed231ae4 Merge "CentOS: move gpg keys to repo files" 2023-01-03 19:48:50 +00:00
Zuul
9165807446 Merge "Do not use mistral user for mistral-api" 2023-01-03 15:38:50 +00:00
Arnaud Morin
52014a7805 Do not use mistral user for mistral-api
Mistral-api is started using wsgi and apache2 in the
container need to start with the root user, like nova-api.

Closes-bug: #2000915

Signed-off-by: Arnaud Morin <arnaud.morin@ovhcloud.com>
Change-Id: Icace8576dcf0085a5e51eb453cbad2ac89c7358e
2023-01-03 12:56:02 +01:00
Marcin Juszkiewicz
d73dc618aa CentOS: move gpg keys to repo files
Definition of 3rdparty repo can contain also url to gnupg key used to
sign files there.

DNF knows how to handle that so we do not need to import keys in base
image anymore.

Functionality stays as people may use own repos with own keys.

Change-Id: I88e8e86ca35ee1b6b6b5551c3ca8698f0ed814cb
2023-01-02 13:47:19 +01:00
Jason
d079dd67e3 Add locals_base option
This option allows you to define 'locals' style dependencies as relative
to a $locals_base variable, similar to how $tarballs_base works. This
can help you avoid defining the same hard-coded path in kolla-build, and
instead pass it to kolla via a flag.

Similar to $tarballs_base, this works via oslo_config's existing
interpolation functionality[1].

Example usage:
  [DEFAULT]
  locals_base = /opt/openstack

  [neutron-base]
  type = local
  location = $locals_base/neutron/neutron-stable-rocky.tar.gz

[1]:
https://docs.openstack.org/oslo.config/latest/reference/configuration-files.html#option-value-interpolation

Change-Id: I8670db4dde4dac26df28502637eadc6b854261cf
2023-01-02 08:52:02 +01:00
Zuul
8585495f45 Merge "Revert "[release] Change RDO's DELOREAN_DEPS repo to Zed"" 2022-12-29 19:50:29 +00:00
Zuul
6d9a56c97e Merge "Revert "[release] Use Zed sources by default"" 2022-12-29 19:50:26 +00:00
Zuul
96e9d13ed3 Merge "Change libvirt-exporter repo to Tinkoff" 2022-12-29 09:34:12 +00:00
Michal Nasiadka
6b3c64dce8 Revert "[release] Change RDO's DELOREAN_DEPS repo to Zed"
This reverts commit 206521af28.

Reason for revert: Reverting after Zed release

Change-Id: I84b4d006fba4aaedcdb324c24e42a9c0b441405f
2022-12-28 17:42:38 +00:00
Michal Nasiadka
b6bbd4c205 Revert "[release] Use Zed sources by default"
This reverts commit e1a4048041.

Reason for revert: Reverting after Zed release

Change-Id: Ie02f7e8be1acc3129564af54bef99a12f6275042
2022-12-28 17:42:26 +00:00
Michal Nasiadka
a313ed46dd CI: Fix tox 4 once again
Change-Id: I4d2f521b36ee4684a331e725787bfb56434d1d44
2022-12-28 18:30:32 +01:00
Mikhail Kraynov
62a55e2c14 Change libvirt-exporter repo to Tinkoff
libvirt-exporter repo has been moved from
AlexZzz (https://github.com/AlexZzz/libvirt-exporter)
to Tinkoff organization and is maintained by this organization
now. The old link redirects to the new one.
This commit prevents unnecessary redirect and adds clarity.

Change-Id: Ie810149de353e12655994ba9ef371c85dea7f7a8
2022-12-22 16:38:38 +03:00
Marcin Juszkiewicz
a0b9a9704d CI: do not check for error in binary images
There are no such anymore.

Change-Id: Icf7d1988aa7208cda1b6f70269b9b54cd201b730
2022-12-15 18:59:44 +01:00
Michal Nasiadka
9e06e70ebb Change default base from centos to rocky
Change-Id: I7f0c1a5abeab0143aa103b742319cfef863f9aa9
2022-12-14 08:46:08 +00:00
Michal Nasiadka
0ad5b8c50f CI: Add cover jobs
Let's make sure we don't decrease test coverage.

Change-Id: Ib102f3b58be71e1e3c35928f960eadd7d07ff318
2022-12-09 15:04:00 +01:00
OpenStack Release Bot
41875cee1a Switch to 2023.1 Python3 unit tests and generic template name
This is an automatically generated patch to ensure unit testing
is in place for all the of the tested runtimes for antelope. Also,
updating the template name to generic one.

See also the PTI in governance [1].

[1]: https://governance.openstack.org/tc/reference/project-testing-interface.html

Change-Id: Ice4b5ba33919f5c982fa798cf7984590581ead2e
2022-12-09 13:18:05 +00:00
OpenStack Release Bot
d3d266e5f9 Update master for stable/zed
Add file to the reno documentation build to show release notes for
stable/zed.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/zed.

Sem-Ver: feature
Change-Id: Icf2770f4b883cf4db1dc2da244395c576b11ee60
2022-12-09 13:18:04 +00:00
Dr. Jens Harbott
c291f3b827 Fix tox.ini for tox4
Use bash to call shell scripts instead of adding them explicitly to
allowlist_externals. Drop external command that is no longer being used.

Change-Id: I4f90fbcc3a679660c437e99a3aa1f81747b72054
2022-12-08 15:49:47 +01:00
Marcin Juszkiewicz
9c1d3ee16d [release]: polish another release notes
- fixed amount of quotes to make them work
- fixed Debian/Ubuntu rabbitmq/erlang info
- fixed syntax in Ansible update

Change-Id: I2730c6336ca3029c411e497b0851109eaec0e249
2022-12-08 13:07:51 +01:00
Zuul
d004ee5894 Merge "CI: cleanup kolla_python_version and remove centos from gating" 2022-12-08 08:34:17 +00:00
Zuul
69e8c4b6d9 Merge "base: add support for all Rocky Linux 9.x minor releases" 2022-12-07 15:49:13 +00:00
Michal Nasiadka
4f753d9d69 doc: Update support matrix after recent drops
ceph_versions needed an update also, because Ceph in Ubuntu doesn't
come from UCA anymore.

Change-Id: I0a523f7a6d670f74982f2fcc01054a5b95e387d8
2022-12-07 13:42:48 +00:00
Zuul
d5886bc3b8 Merge "Drop elasticsearch, kibana and logstash" 2022-12-07 13:30:25 +00:00
Michal Nasiadka
3c878de004 CI: cleanup kolla_python_version and remove centos from gating
Change-Id: I885cee9ad92e7a78b755caf590ccbb8adb2dd070
2022-12-07 14:14:41 +01:00
Zuul
74e0d0169f Merge "mariadb: update clustercheck branch to match db version" 2022-12-07 09:03:01 +00:00
Zuul
daf9383381 Merge "Remove monasca, kafka, storm and zookeeper." 2022-12-06 17:26:07 +00:00
Michal Nasiadka
e221ac8f27 Drop elasticsearch, kibana and logstash
Support has been dropped in kolla-ansible, the upgrade path is opensearch.

Change-Id: I6f32aacb4e0b7dd1eb7206e02425b16f5beae4f0
2022-12-06 15:57:51 +01:00
Zuul
2ed03e99da Merge "doc: update software version table" 2022-12-06 14:04:27 +00:00
Zuul
de2422f7c1 Merge "gnocchi: bump to 4.4.2" 2022-12-06 14:04:25 +00:00
Michal Nasiadka
52a53927f5 Remove monasca, kafka, storm and zookeeper.
Monasca, kafka, storm and zookeeper have been removed in kolla-ansible [1],[2].

[1]: https://review.opendev.org/c/openstack/kolla-ansible/+/861392
[2]: https://review.opendev.org/c/openstack/kolla-ansible/+/865029

Change-Id: I0958a9353bc4585c4f65a1d316328a0e80b0b8b7
2022-12-06 12:58:10 +00:00
Michal Nasiadka
bf1ef50d87 opensearch: fix footer name
Change-Id: I886da6215c20a3d0227b4ee5d603a7e416929618
2022-12-06 09:44:05 +01:00
Zuul
2a4c3092f4 Merge "[release] Change RDO's DELOREAN_DEPS repo to Zed" 2022-12-05 17:51:59 +00:00
Marcin Juszkiewicz
4232060fe9 doc: update software version table
This patch updates existing entries to what we have now in Zed.

Change-Id: I4c64129a159c3d27f4305d029e2c1c34b93040f2
2022-12-05 17:55:43 +01:00
Zuul
b565c6e5f0 Merge "[release] Use Zed sources by default" 2022-12-05 14:40:52 +00:00
Michal Nasiadka
11ce9cf0b5 gnocchi: bump to 4.4.2
Change-Id: I299d349c61c0ccc3e84b6a550e963a68ac47a1b1
2022-12-05 15:25:00 +01:00
Bartosz Bezak
206521af28 [release] Change RDO's DELOREAN_DEPS repo to Zed
Change-Id: I94b14406c59caa1d2358590fdf8c84b92260de20
2022-12-05 13:50:56 +00:00
Zuul
3043491b0f Merge "[release] Tidy up release notes for Zed" 2022-12-05 13:30:37 +00:00
Bartosz Bezak
e1a4048041 [release] Use Zed sources by default
Change-Id: I5ca2aeeb6be64e2442324fb445ef5eebecd826b9
2022-12-05 10:06:09 +01:00
Bartosz Bezak
c18309fbc6 [release] Tidy up release notes for Zed
Change-Id: I1dd9651e1c8ac199cf8ef27de3338e5d3ebec24d
2022-12-02 14:17:21 +01:00
Maksim Malchuk
0124f78d3f base: add support for all Rocky Linux 9.x minor releases
follow-up on I1d624bd2f87be93a386147c5d7403a5524e41633 to support
all upcoming minor releases of the Rocky Linux 9.x (Blue Onyx).

Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
Change-Id: Ifad1da69122381cec10be4a882f80dab665cfc33
2022-12-01 11:21:23 +00:00
Michal Nasiadka
d58203e81b mariadb: update clustercheck branch to match db version
Change-Id: I99bda6801995727dbeaa07219f336e22c8346ada
2022-12-01 10:49:22 +01:00
Michal Nasiadka
d1d26c8674 telegraf: mark buildable
Change-Id: Iff646c87a5c8d8d1831fea00ae18457f93cca2e5
2022-12-01 09:42:11 +01:00
Jakub Neumann
6be0068f37 Fix plugin builds with sources using type=git
A recent change to git [1] introduced a new behaviour to work around a
CVE [2] that disallows any git operations in directories not owned by
the current user.

A fix was introduced for general checkouts, but it was not applied
to the plugins archive, resulting in PBR still not working as intended.

[1] 8959555cee
[2] https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-24765.

Closes-Bug: #1969096
Related-Bug: #1968877

Co-Authored-By: Mark Goddard <mark@stackhpc.com>
Co-Authored-By: Marcin Juszkiewicz <marcin.juszkiewicz+kolla@linaro.org>

Signed-off-by: Jakub Neumann <jneumann@cloudferro.com>
Change-Id: Ib3a37eebb29d975fc51a117cecdff74baafd8941
2022-11-30 18:00:12 +00:00
Marcin Juszkiewicz
c6012bde6c base: Rocky Linux 9.1 was released
And they use release version in /etc/os-release so we need to adapt.

Telegraf also needs to be marked unbuildable because of [1].

[1]: https://github.com/influxdata/telegraf/issues/12303

Change-Id: I1d624bd2f87be93a386147c5d7403a5524e41633
2022-11-30 17:59:53 +00:00
Zuul
ef786de775 Merge "[docs] Add Kolla design philosophy" 2022-11-22 10:09:00 +00:00
Radosław Piliszek
7b0acfea11 [docs] Add Kolla design philosophy
As discussed during the last PTG (Antelope 2023.1) [1].

The added page discusses two properties of the Kolla ecosystem
that are important mostly to contributors.

Clean up the "Contributing" page a bit along the way.

[1] https://etherpad.opendev.org/p/kolla-antelope-ptg

Change-Id: I0c7dd35ac9bbd050b708d5baae2504d3bd56828d
2022-11-22 09:46:41 +01:00
Piotr Parczewski
abfb5713ae Add Opensearch image(s)
Handles x86-64 and aarch64 targets.

Change-Id: I70e2bb1d2744d38e08f5a9a79ab6a7265ebf24c9
2022-11-16 13:26:15 +00:00
Zuul
823329304a Merge "Update stable release generation doc" 2022-11-09 07:07:02 +00:00
Zuul
9b5d41df92 Merge "docs: when reno is required" 2022-11-09 06:48:56 +00:00
Marcin Juszkiewicz
a2854da1b3 Add a way to add other container engines
Add engine adapter module to allow additon of other container engines,
create one common EngineClient that would be called in all other
modules.

Based on patch by Konstantin Yarovoy <konstantin.yarovoy@tietoevry.com>

Change-Id: Ice6467086bd292af086322afc3fc4e869d89eefa
2022-11-08 22:03:56 +00:00
Dr. Jens Harbott
83c1879877 Update stable release generation doc
Wallaby has been moved to EM state, so it will receive no more releases.
Also, being optimistic, zed is already being added to the list of stable
branches, so we don't forget it when we actually cut that branch.

Add a small note about this being referenced once per month in regular
Kolla meetings. Also update the example link to a patch that actually
matches the description.

Change-Id: Ie3b4e4461dbfe35808250a929b3e95f880242aed
2022-11-04 11:25:34 +01:00
Zuul
e275875c25 Merge "Update support matrix" 2022-10-31 05:52:12 +00:00
Michal Nasiadka
397a9a33e8 docs: when reno is required
In Zed PTG we decided to limit the amount of release notes
this change adds the criteria when reno is required to the docs

[1]: https://etherpad.opendev.org/p/kolla-zed-ptg#L149

Change-Id: I4f153a619eb57a75ebdb1aba4b71e422b30d74fe
2022-10-28 08:11:57 +02:00
Zuul
718eaef3e3 Merge "Revert "ci: disable usage of EPEL mirror"" 2022-10-27 19:23:14 +00:00
Zuul
0f67e99ee1 Merge "Fix incorrect type conversion for cmd option '--docker-dir'" 2022-10-27 17:23:48 +00:00
Michal Nasiadka
32400a5821 Revert "ci: disable usage of EPEL mirror"
This reverts commit 0fa3fd885e.

Reason for revert: OpenDev mirror should be fixed now

Change-Id: Ibf85ae4b5b374b4831b9ba33addd896c0507e8aa
2022-10-27 16:41:44 +00:00
Zuul
8fe9440f95 Merge "rabbitmq: use Erlang 25 on AArch64/CentOS/Rocky" 2022-10-27 15:09:55 +00:00
Radoslaw Smigielski
5d8c4d7bf7 Fix incorrect type conversion for cmd option '--docker-dir'
kolla-build cmd '--docker-dir' option specified a default value
of an empty list, this was causing a warning on tox genconfig.

Change-Id: I204a067d76395ef5ad4d3ce23243f196eab3bdd5
Closes-Bug: #1827146
2022-10-27 14:29:42 +00:00
Marcin Juszkiewicz
1da94b16f0 proxysql: use Jammy repo for Ubuntu
Change-Id: Ia83bd72a837609c6cf15ae9a88bd28bc589cbf9f
2022-10-27 11:11:15 +00:00
Marcin Juszkiewicz
3c70d5fc4e rabbitmq: use Erlang 25 on AArch64/CentOS/Rocky
We switched repo to provide Erlang 25 but not switched to it.

Change-Id: I8b0a2f27ccb3db61a38d8fe89676f99eed1e3d75
2022-10-27 11:11:00 +00:00
Michal Nasiadka
0fa3fd885e ci: disable usage of EPEL mirror
It's broken now - let's stop using it.

Change-Id: I4d881e6a1af07f7c6cf4547cac72e971bfadeefb
2022-10-27 11:19:55 +02:00
Zuul
4a90585634 Merge "rabbitmq/aarch64: use COPR for Erlang" 2022-10-18 15:53:54 +00:00
Zuul
d8188d05e6 Merge "release-docs: Add infra components bump to R-5" 2022-10-18 13:57:31 +00:00
Zuul
2521ce1283 Merge "rabbitmq: use Erlang from PPA on Debian/Ubuntu" 2022-10-18 13:57:28 +00:00
Marcin Juszkiewicz
e104ef7fdc rabbitmq/aarch64: use COPR for Erlang
RabbitMQ team maintains RPM package in Github repo [1]. Hrw then use it
to build package using COPR service [2].

This way we have latest Erlang on both distributions and both
architectures.

1. https://github.com/rabbitmq/erlang-rpm/
2. https://copr.fedorainfracloud.org/coprs/hrw/erlang-for-rabbitmq/

Change-Id: I425ae2fab78e80ff56f21fd1b24708906ec32342
2022-10-18 15:23:19 +02:00
Michal Nasiadka
e21bcd993a release-docs: Add infra components bump to R-5
Change-Id: I7484358c76b37bdc0398461a205a1dd1ce97cf63
2022-10-18 12:14:52 +00:00
Michal Nasiadka
27a768bfae Update support matrix
Change-Id: Ibf800fe89715f65ca9ada25b4cd31f348944e506
2022-10-14 11:45:48 +00:00
Pierre Riteau
7063c02b60 Bump node_exporter to 1.4.0
Change-Id: I947a0b9155fea18a7781f694dbeafc49033fef8e
2022-10-14 12:35:19 +02:00
Marcin Juszkiewicz
b40506f6dd rabbitmq: use Erlang from PPA on Debian/Ubuntu
PPA from Team RabbitMQ [1] provides newer Erlang for Debian/Ubuntu.

This way we have latest Erlang on both distributions and both
architectures.

1. https://launchpad.net/~rabbitmq/+archive/ubuntu/rabbitmq-erlang

Change-Id: Iec7e8461f9eb757e1576cf3898068306c5436239
2022-10-14 11:30:06 +02:00
Radosław Piliszek
2daf4331a6 Fix writable rootwrap/privsep config
Fixes a hypothetical security issue related to privilege escalation via
rootwrap/privsep. A potential vulnerable service could previously allow
writes to its rootwrap/privsep config and thus allow for more commands
to be run with root privileges via rootwrap/privsep. For a succesful
attack, this would also require the service to allow to run arbitrary
commands via rootwrap/privsep. Thus far, no such vulnerabilities have
been reported and thus this fix is simply strengthening the container
images against such an issue in the future.

Change-Id: I92c81c77e6a16570a108cde8031f7977930fb02a
Closes-Bug: #1874298
2022-10-10 15:06:05 +00:00
Maksim Malchuk
b8a352647d Fix Swift deployment issue
Swift deployment is broken since CVE-2022-38060 fixed sudoers file in
the I66476a2b396e2cbe41e68ac51f57aae1806b2ed8. The kolla-toolbox
container have their own virtualenv path differs from all other
containers. This change adds the correct sudoers secure_path
configuration needed only for kolla-toolbox conainer.

Related-Bug: #1985784
Change-Id: I3651576ee354364d639c187ff750491667ecab56
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2022-10-09 13:43:42 +00:00
Radosław Piliszek
7c41c91724 Drop executable perms from non-executables
It does not make much sense to have them there.

TrivialFix

Change-Id: If66d264dc8cc366c9f51bfe36f96dd64d4c68d9e
2022-10-07 11:22:35 +00:00
Zuul
1de7c37831 Merge "Support qemu block rbd in nova-compute" 2022-10-07 10:26:36 +00:00
Zuul
ecdc7781ba Merge "Deprecate Monasca and dependencies" 2022-10-07 08:52:41 +00:00
Piotr Parczewski
61b9d85033 Deprecate Monasca and dependencies
Adds a deprecation notice for Monasca service in Kolla with its
dependencies: Kafka, Storm and Zookeeper.

Change-Id: I8f08abb1722e558e3874fd7d92322598d55de563
2022-10-07 09:50:44 +02:00
Zuul
35a28eb209 Merge "do not play with PROJECT_ROOT in build.py" 2022-10-07 05:53:37 +00:00
Marcin Juszkiewicz
e2c061ee63 do not play with PROJECT_ROOT in build.py
PROJECT_ROOT mangling is already done in kolla/cmd/build.py (which is
called as 'kolla-build' or 'tools/build.py' or directly) so it is not
needed here.

Now we can sort imports and drop not needed ones.

Change-Id: Iac6ea537491e5c00ce6fb4b4e8f07a9124e9fa8b
2022-10-06 18:21:16 +02:00
Marcin Juszkiewicz
cd08d9b543 drop shebang from Python files
Only kolla/cmd/build.py is an executable script used by user (either as
'kolla-build' or 'tools/build.py' or directly).

Change-Id: Ia1ba2699f425749f9d4f2cdba27caeb97bc3d668
2022-10-06 16:06:16 +00:00
Marcin Juszkiewicz
145d096bf7 Move KollaWorker stuff to separate file
As part of kolla/image/ refactoring we move KollaWorker related classes
into own file.

Based on patch by Konstantin Yarovoy <konstantin.yarovoy@tietoevry.com>

Change-Id: I55c3f6b34631048b2463b02e6ea611d7e4c1a912
2022-10-06 13:05:59 +00:00
Marcin Juszkiewicz
a8ee3244bf Move build related tasks to separate file
As part of kolla/image/ refactoring we move build related task classes
into own file.

Based on patch by Konstantin Yarovoy <konstantin.yarovoy@tietoevry.com>

Change-Id: I093620679016b37e1664c9fe4cf7559433e744b7
2022-10-06 13:01:33 +00:00
Marcin Juszkiewicz
aee19bd1c4 Move status and log related things to separate file
As part of kolla/image/ refactoring we move status enums/consts into
own file.

Based on patch by Konstantin Yarovoy <konstantin.yarovoy@tietoevry.com>

Change-Id: I940816c7e487f6d5c7abc4446226e2992cf9e63d
2022-10-06 13:14:07 +02:00
Marcin Juszkiewicz
8dd52300c0 Move info about unbuildable images to separate file
As part of kolla/image/ refactoring we move information about
unbuildable images to own file. Like we did with users and sources in
past.

Based on patch by Konstantin Yarovoy <konstantin.yarovoy@tietoevry.com>

Change-Id: I759ab49a3ef488042984067c1eca93e945805678
2022-10-06 13:00:01 +02:00
Zuul
27bda7a0b5 Merge "kolla-toolbox: bump ansible-core to 2.13" 2022-10-05 14:24:02 +00:00
Zuul
8decc98a9e Merge "CI/centos/rocky: use repos from opendev mirror" 2022-10-05 13:44:48 +00:00
Michal Nasiadka
3f07d8f7f6 kolla-toolbox: bump ansible-core to 2.13
Change-Id: I13e3cf5a02dadcedd1ebbd54d56f7f633e6e3d68
2022-10-05 12:01:01 +02:00
Radosław Piliszek
9e92e4c8e4 Support qemu block rbd in nova-compute
This is necessary if using nova-compute with RBD backend (directly,
not via Cinder) and wishing to make an instance image to Glance
while (1) following the recommended Ceph permissions which do not
give Nova write permissions to the images' pool or (2) not using
RBD with Glance or (3) not revealing what Glance actually uses
as the backend (hiding locations).

Change-Id: I88e1e0ca01b2b2effad9515b905cc761fbb5d2d4
2022-10-04 17:53:57 +00:00
Marcin Juszkiewicz
446893d65d debian: swtpm is in backports
We need to mark swtpm/libtpms in APT preferences to make it installed on
AArch64.

Change-Id: Ibee94fe5a6217048eef01aa24ebed6ee05aae8de
2022-10-04 10:07:04 +00:00
Zuul
9e80733fb0 Merge "Revert "[CI] Disable Debian jobs"" 2022-10-04 09:53:24 +00:00
Marcin Juszkiewicz
3898eee435 Revert "[CI] Disable Debian jobs"
This reverts commit ea3ed3f933.

Reason for revert: fixed qemu packages are now in Debian:

Change-Id: I7b2fac6e4b6c53ea637e849b4fa171ab5126a09f
INFO:kolla.common.utils.nova-libvirt:Successfully tagged test/nova-libvirt:debian
2022-10-04 07:11:04 +00:00
Zuul
a9b0b63fed Merge "proxysql: Use almalinux for centos/rocky9" 2022-10-03 14:46:31 +00:00
Marcin Juszkiewicz
0c523e7f1b CI/centos/rocky: use repos from opendev mirror
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-10-03 15:29:05 +02:00
Michal Nasiadka
f0849eca8d proxysql: Use almalinux for centos/rocky9
As per https://github.com/sysown/proxysql/issues/3989

Change-Id: If077d60e9efd29fab80f4f5188a4f54015734a92
2022-10-03 13:30:43 +02:00
Michal Nasiadka
1d924eff03 Fix ironic-pxe EFI path for rocky
Change-Id: I6c82ef5b148b3ebdc8241871117dbe6cd68ed070
2022-10-03 12:31:08 +02:00
Michal Nasiadka
28424514f3 Add rocky9 periodic jobs
Change-Id: I119834c8b458e32c3f6a42c635e7d96630b12c48
2022-10-01 07:47:15 +02:00
Marcin Juszkiewicz
9384ec3e0b influxdb: enable on CentOS/AArch64
Change-Id: I468e68db23c6785bd3bfbe65733fe5bf52295fbb
2022-09-30 14:19:00 +00:00
Michal Nasiadka
0883532434 Add RockyLinux 9 support
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/859570

Change-Id: I7af51d07b8a939c908aa072294061def57dd67de
2022-09-30 14:17:34 +00:00
Zuul
2370139604 Merge "debian: use Erlang 24 on AArch64" 2022-09-29 17:10:29 +00:00
Zuul
3fde977d45 Merge "use Erlang 24 on Ubuntu/AArch64" 2022-09-29 16:23:15 +00:00
Zuul
66e9a4dc34 Merge "centos: use Erlang 24 on AArch64" 2022-09-29 16:23:12 +00:00
Marcin Juszkiewicz
0ed6f6f120 debian: use Erlang 24 on AArch64
There are no Erlang 25 packages for Debian/AArch64.

Change-Id: Ice5a7b4cbb61365bb81334ca7af92fac6739fe41
2022-09-29 16:29:54 +02:00
Marcin Juszkiewicz
355ab5b29a use Erlang 24 on Ubuntu/AArch64
There is no Erlang 25 package with for Ubuntu/AArch64.

Change-Id: Ie07a6b821db0557c5e373037183082604acda4bd
2022-09-29 12:42:33 +02:00
Zuul
4a94fb4d16 Merge "repos: in CentOS Stream 9 haproxy is in appstream repo" 2022-09-28 17:59:40 +00:00
Marcin Juszkiewicz
ac1ae84386 centos: use Erlang 24 on AArch64
We do not have Erlang 25 for CentOS Stream 9 on AArch64 so we revert to
use Erlang 24 from CentOS repository.

Also synced Erlang and RabbitMQ versions between images.

Change-Id: I1480de095eaea66c3a83a61ca3ff269953181e39
2022-09-28 17:05:29 +00:00
Zuul
7a42617e2e Merge "nova-libvirt: provide TPM emulation" 2022-09-28 13:25:13 +00:00
Marcin Juszkiewicz
042a95be10 repos: in CentOS Stream 9 haproxy is in appstream repo
So we do not need to define repo for it like it was in past.

Change-Id: I9e22a43e068490d762c42a7bb491e445a715381b
2022-09-27 19:07:55 +02:00
Zuul
2185f817ba Merge "Don't ignore the remaining apt-get update errors" 2022-09-27 12:37:18 +00:00
Radosław Piliszek
9dd9f425b7 Don't ignore the remaining apt-get update errors
Follow-up to I5ce2eb66a647e1805f086aa37942bf5d13eb4106

So far, I have only observed these causing weird errors later but,
in theory, ignoring these could allow the rest of the code to use
archival (so wrong) entries.

Change-Id: I9cef5ceeb78d431ca232c7b196c48eef5d2ccbca
2022-09-27 10:04:19 +00:00
Marcin Juszkiewicz
8d209901fa nova-libvirt: provide TPM emulation
The goal of the swtpm project is to provide a TPM emulator (TPM 1.2 &
TPM 2) that can be integrated into virtualized environments, such as
virtual machines and containers.

Nova supports it for quite a while:
https://review.opendev.org/c/openstack/nova/+/631363

Change-Id: Ifb7e0f1632805807851720873a70179218bdf372
2022-09-27 10:02:23 +00:00
Marcin Juszkiewicz
542bbcdb6b grafana: ignore SHA1 gpg key on CentOS Stream 9 (and family)
RHEL 9 refuses to use SHA1 gpg keys. Grafana team still did not handled
key upgrade:

https://github.com/grafana/grafana/issues/41036

Change-Id: Id963271103ce1397b7a5498d032e8f797edfcc70
2022-09-27 08:17:15 +00:00
Marcin Juszkiewicz
878b00013b Move to CentOS Stream 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-09-27 07:40:06 +00:00
Radosław Piliszek
ea3ed3f933 [CI] Disable Debian jobs
Due to qemu packaging issues [1].

[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1020776

Change-Id: Ib594b81aae93d21101998a628792b3edf1fad47e
2022-09-27 07:37:29 +00:00
Zuul
0434a110c1 Merge "ubuntu: enable monasca for x86-64" 2022-09-23 15:35:57 +00:00
Zuul
7efc7b3383 Merge "Python 3.8+ has better shutil.copytree()" 2022-09-23 15:35:54 +00:00
Zuul
dcbc4424a6 Merge "centos: we install 'hostname' in base image" 2022-09-23 15:21:21 +00:00
Marcin Juszkiewicz
0e3a55252b Python 3.8+ has better shutil.copytree()
doc says:

> If dirs_exist_ok is false (the default) and dst already exists, a
> FileExistsError is raised. If dirs_exist_ok is true, the copying
> operation will continue if it encounters existing directories, and files
> within the dst tree will be overwritten by corresponding files from the
> src tree.

So we do not have to copy dirs/files one by one and tell
shutil.copytree() to handle everything.

Change-Id: I97d9c8261351b8fd88f088c1463cc508e07792e7
2022-09-14 15:52:28 +02:00
Marcin Juszkiewicz
e511db7048 centos: we install 'hostname' in base image
There is no need to install it in other images.

Change-Id: I9fdb987533662ee532141b06fc23b64c92788429
2022-09-13 12:46:36 +02:00
Marcin Juszkiewicz
386b884036 ubuntu: enable monasca for x86-64
There is confluent-kafka wheel on Pypi so we can build those
images on x86-64.

Change-Id: I16a9656641932114e02f6ffa76399c0c4106a90a
2022-09-13 12:45:08 +02:00
Christian Berendt
0040c6d3f6 Add missing labels blocks
Change-Id: I1396131c3e33e5f139339a203ebfb48841a358d7
2022-09-12 21:08:03 +02:00
Zuul
0d4e8e6c11 Merge "Drop support for python 3.6 and 3.7" 2022-09-07 09:34:40 +00:00
Zuul
e8fb64a46e Merge "Debian: use OpenStack Zed repos" 2022-09-06 12:08:24 +00:00
Zuul
2a4a8fce31 Merge "Fix CVE-2022-38060" 2022-09-06 11:59:30 +00:00
Marcin Juszkiewicz
2c2dc39b3b prometheus-ovn-exporter: use sha256sum
shasum requires 30M of Perl on CentOS 9 while sha256sum is already
present.

Change-Id: I9372ebc643fced497ab01480f4c7cd6caa65c282
2022-09-02 11:49:25 +02:00
Zuul
a2bb347df3 Merge "prometheus: Add OVN exporter" 2022-09-01 12:07:42 +00:00
Marcin Juszkiewicz
e8d085b606 Debian: use OpenStack Zed repos
With source base images we use small amount of packages from there.
Some Python/JS updates and novnc/spice stuff.

Change-Id: I41d8d3ae0e43ba7b54b126e076134f13dcab7859
2022-09-01 10:05:57 +02:00
Zuul
0c501542e0 Merge "Drop centos8s jobs from experimental pipeline" 2022-08-31 13:40:24 +00:00
Zuul
a1021d6599 Merge "Revert "Workaround setuptools==60.0.0 breakages"" 2022-08-31 13:40:21 +00:00
Zuul
904f346d97 Merge "Make keystone_bootstrap accept no ADMIN_URL too" 2022-08-31 12:15:23 +00:00
Zuul
ec101532fa Merge "Bump prometheus services to latest version" 2022-08-31 07:18:25 +00:00
Dr. Jens Harbott
0db7cf0e0a Drop centos8s jobs from experimental pipeline
This is a follow-up to [0], removing jobs also from experimental to
avoid unnecessary runs. Since zuul complains about an empty project
stanza, remove the whole block, it can always be restored from git
history if needed.

[0] I32bef531896777bfb463bb401ebba1d488a16bf9

Change-Id: If68d548957adb8c6584dcab4582ef8396cccf0b2
2022-08-30 10:35:53 +02:00
wuchunyang
26b027f0b3 Bump prometheus services to latest version
blackbox_exporter ->  0.22.0
prometheus_cadvisor ->  0.45.0
elasticsearch_exporter -> 1.5.0
haproxy_exporter -> 0.13.0
prometheus_libvirt_exporter -> 2.3.2
memcached_exporter_version -> 0.10.0
prometheus_msteams -> 1.5.1
prometheus_mtail -> v3.0.0-rc50
mysqld_exporter -> 0.14.0
node_exporter -> 1.3.1
prometheus  -> 2.38.0

Change-Id: I3452e8904992bfb977dcae4084a0d98aab82e221
2022-08-30 16:25:19 +08:00
Zuul
0eb36f0d88 Merge "rabbitmq: Update to 3.10" 2022-08-30 06:58:25 +00:00
jiaqi07
3c0a54ed81 Drop support for python 3.6 and 3.7
In Zed cycle, we have dropped the python 3.6/3.7[1] testing
and its support. Updating the python classifier also to reflect the same.

[1] https://governance.openstack.org/tc/reference/runtimes/zed.html

Change-Id: If7955df1073adadad2d306c3d9b74d1479cd334a
2022-08-30 05:52:32 +00:00
Radosław Piliszek
5b1da01798 Fix CVE-2022-38060
Closes-Bug: #1985784
Change-Id: I66476a2b396e2cbe41e68ac51f57aae1806b2ed8
2022-08-29 10:05:05 +00:00
Radosław Piliszek
e5748194b2 Make keystone_bootstrap accept no ADMIN_URL too
To be able to drop the dummy arg.

Change-Id: Ibcc3e6b4e6015604c218e384d87de7b9e9aed4c8
2022-08-26 21:31:29 +02:00
Zuul
91c2cc0d8d Merge "[docs] Fix OVS link" 2022-08-26 01:18:10 +00:00
Michał Nasiadka
61bd545ea0 prometheus: Add OVN exporter
Change-Id: I2a1d97421f53e63bb2e8d93dcdbc9b738e39670d
2022-08-25 15:25:57 +02:00
Radosław Piliszek
0dddb293a8 [docs] Fix OVS link
Change-Id: I5f43df34c1854e1632525730742439a17efb6a4e
2022-08-25 11:55:33 +02:00
wu.chunyang
5a65f36e9b Add python-binary-memcached to openstack-base
python-binary-memcached is required by keystone cache.
ref: https://docs.openstack.org/keystone/latest/admin/configuration.html#caching-layer

Change-Id: Ibaf5925607b45bc8e69af39f2d1cdcb49332f9f0
2022-08-25 17:38:41 +08:00
Zuul
ba747e92b9 Merge "Add Ubuntu Jammy MariaDB repository" 2022-08-24 17:08:15 +00:00
Michal Nasiadka
c1437c8ba2 Add Ubuntu Jammy MariaDB repository
Change-Id: I15b08cca39a3bd069cb714c5b3164fd8254d8d30
2022-08-24 14:26:09 +00:00
Zuul
37bab095b6 Merge "mariadb: Fix RPM repository URLs" 2022-08-23 13:17:31 +00:00
Mark Goddard
94fad9f26b mariadb: Fix RPM repository URLs
The MariaDB project changed the location of the repositories, and the
old URLs no longer work.

Change-Id: Ia094cd1e29232c47d1fb26e00de569677bc5b8a1
2022-08-22 15:37:39 +00:00
Michal Nasiadka
fd14318a8b curl: Add retries
Change default 0 retries to 5, that should help for transient
errors (timeouts, HTTP 408, 429, 500, 502, 503 or 504).

Change-Id: Iad3c7270579ffb38299269481ac64d5582abaa22
2022-08-22 15:36:22 +00:00
Michal Nasiadka
1c0af66bfd rabbitmq: Update to 3.10
3.10 comes with quorum queues support, Erlang 25 is the recommended series.

Change-Id: I67f8df66b4896a9b223c02ed09f68f3f43693849
2022-08-22 12:32:14 +00:00
Dr. Jens Harbott
8dc0928581 Switch to use Zed binary packages from UCA
At R-8 week we are moving to current release binary packages for
Ubuntu.

Change-Id: I06d2cf01a10bf5fb967fd22c9e55833bace7379b
2022-08-22 12:18:26 +00:00
Dr. Jens Harbott
0fc8712cac Bump minimum docker-py version
With version 6.0.0 of the docker python module, their implementation of
versioning has changed, making our check for old versions fail. Since
version 3.0.0 is from 2018, we should be safe to assume that as a
minimum version though, so we can just get rid of the special handling
of older versions.

Change-Id: I077b7b5acf2c1f9beb6da06d3555e2ebe30831d1
2022-08-22 14:15:02 +02:00
Zuul
3e5369db54 Merge "Remove Keystone admin endpoint" 2022-08-10 13:58:58 +00:00
Zuul
05194e7618 Merge "Honour the linuxbridge experimental status" 2022-08-09 13:14:58 +00:00
Radosław Piliszek
8a84479778 Remove Keystone admin endpoint
It can still be optionally enabled in Kolla Ansible.

Change-Id: I34ec4a2e9505e9b4c1b8306b87fcd7242a0da227
2022-08-09 14:51:13 +02:00
Stephen Finucane
a1f55b5bdf Don't install the tooz etcd3 extra
The etcd3 extra in tooz has been deprecated [1] as the library it uses
under the hood, python-etcd3, is currently stale and unmaintained. It
will be removed in a future release. Stop installing this.

[1] 7ee2780af8

Change-Id: Ib54a2868cb33de5fc2800f314b2811c67ef13461
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2022-08-09 10:58:54 +01:00
Radosław Piliszek
90a54acabd Honour the linuxbridge experimental status
This patch follows upstream and disables linuxbridge testing.

Kolla part.

Change-Id: I9f77e782df9e4ddcdd4be536b4cce668b728824e
2022-08-03 15:23:36 +02:00
ljhuang
512e6aac47 Replace abc.abstractproperty with property and abc.abstractmethod
Replace abc.abstractproperty with property and abc.abstractmethod,
as abc.abstractproperty has been deprecated since python3.3[1]

[1]https://docs.python.org/3.8/whatsnew/3.3.html?highlight=deprecated#abc

Change-Id: Ibb048b879fa58b5e144ae228628b3ffaeae65bbb
2022-08-03 20:36:44 +08:00
Marcin Juszkiewicz
b8572209e7 mariadb-clustercheck: do not install xinetd
We moved to socat on kolla-ansible side.

Change-Id: Icce201677dceaab8ca6f045158bbf565eef3a324
2022-07-29 12:10:29 +02:00
Zuul
d7af870f81 Merge "Run proxysql with proxysql user" 2022-07-28 16:44:28 +00:00
Radosław Piliszek
cfcb7ba2f0 Publish properly as Jammy
Also update the docs.

Change-Id: I9d9e6072343fd296148b454dcf83ae4e84e49525
2022-07-28 11:53:01 +02:00
Michal Arbet
e5fe2a33b9 Run proxysql with proxysql user
This patch is switching root user to
proxysql user and provides some
necessary changes to work.

Change-Id: Id603cc1e9c084eac8afc4c6d2ddde9a1f4fe6728
2022-07-28 11:52:05 +02:00
Michal Nasiadka
9f25aac18a Move to Ubuntu Jammy (22.04)
mariadb - downloads.mariadb.com doesn't have jammy version, should
be there soon - using Ubuntu provided version for now

telegraf/collectd - collectd packages missing in Jammy - marked
as unbuildable
monasca - requires new librdkafka, no wheel for Python 3.10 for now

Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/846070
Change-Id: I11b4fbcaba165824252902d0270ce1dbbc3d6e9d
2022-07-27 11:27:01 +02:00
Zuul
dc55bdb5ee Merge "Install etcd binary from github" 2022-07-26 17:25:49 +00:00
Zuul
ee02fc807a Merge "[CI] Drop bindep" 2022-07-26 12:23:10 +00:00
Pierre Riteau
2da76f78de Fix container image publish to Docker Hub
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-07-25 13:10:15 +02:00
Michal Arbet
25ae26e77c Update ProxySQL to version 2.4
This patch is updating ProxySQL from
version 2.3 to version 2.4, which
has several new features and bugfixes.

Change-Id: I625f72aac591aee8b1efe51f0b4a9e7660e6dbdc
2022-07-21 14:28:49 +02:00
Will Szumski
91d22dd40f Install etcd binary from github
Removes a dependency on RDO for install etcd in CentOS images.

Aligns version of etcd across all distributions, see below:

```
(venv-kolla) [will@juno kolla]$ docker run --rm -it kolla/ubuntu-source-etcd:yoga bash
()[etcd@730a011b670a /]$ etcd --version
etcd Version: 3.2.26
Git SHA: Not provided (use ./build instead of go build)
Go Version: go1.13.7
Go OS/Arch: linux/amd64
```

```
(venv-kolla) [will@juno kolla]$ sudo docker run -it kolla/centos-source-etcd:yoga bash
()[etcd@9aa486c9e94f /]$ etcd --version
etcd Version: 3.2.21
Git SHA: 3ac81f3
Go Version: go1.12.8
Go OS/Arch: linux/amd64
```

```
(venv-kolla) [will@juno kolla]$ docker run --rm -it kolla/debian-source-etcd:yoga bash
()[etcd@b49cb5fcdf87 /]$ etcd --version
etcd Version: 3.3.25
Git SHA: Not provided (use ./build instead of go build)
Go Version: go1.15.9
Go OS/Arch: linux/amd64
```

This will also allow us to update to a more recent version in the
future. We have to be careful not to jump by more than one point release
to ensure compatibility:

https://etcd.io/docs/v3.5/upgrades/upgrading-etcd/#upgrading-an-etcd-v3x-cluster

Change-Id: I62a34256fb7395d0448af169ac3cf036f60cd290
2022-07-20 12:20:49 +01:00
Zuul
ea5d95d3f2 Merge "Change kolla_version LABEL to git sha-1" 2022-07-01 09:36:30 +00:00
Radosław Piliszek
8477e86db8 [CI] Drop bindep
It is not necessary and it may be confusing.

Change-Id: Ie84bce6a90de622dc76a2309fc579d881325b956
2022-06-23 10:24:14 +02:00
Pierre Riteau
5f94e53bea Bump prometheus-openstack-exporter version to 1.6.0
Change-Id: I4bd581c3ea422e1c9a075a71721413d47fdbdfe4
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/828902
2022-06-22 16:57:32 +02:00
Michal Arbet
ad7b9054ca Change kolla_version LABEL to git sha-1
Downstream users are often building their own
custom images from their own forked git.
Reasoning can be various - added fixes not merged yet,
some customizations and etc.

Because of this, it's very usefull to have information
about git commit in images, and this is exactly what
that patch does.

If images are built from pip source, kolla_version
LABEL contains kolla version.

Change-Id: If81989603185528dae86df52e8f8d0f94cdca85d
2022-06-21 08:54:03 +02:00
Marcin Juszkiewicz
9931f83913 disable monasca for AArch64 on all distros
INFO:kolla.common.utils.monasca-base:
Install the latest version of librdkafka from the Confluent
repositories, see http://docs.confluent.io/current/installation.html"

No more monasca for aarch64.

Change-Id: Ice6f1ab4a08d0ef07ce2434bfef704b68e90f9d0
2022-06-20 21:45:46 +02:00
Zuul
7afbcf1cc1 Merge "doc: provide information about 3rdparty repos" 2022-06-20 11:52:44 +00:00
Zuul
f5e63a2f87 Merge "refactor sources/users to separate files" 2022-06-20 11:52:41 +00:00
Zuul
d57b4e65c2 Merge "Fix error message when git clone fails" 2022-06-20 10:42:44 +00:00
Marcin Juszkiewicz
0bb3618348 doc: provide information about 3rdparty repos
Kolla project images cover several distributions on multiple
architectures. Not all packages come from distribution repositories.

This patch adds documentation about such cases.

Change-Id: I870aa6acd875fc1425f25a435f0701850cf97285
2022-06-20 12:08:43 +02:00
Mark Goddard
cdee63e415 Fix error message when git clone fails
1. There was no %s for the image.name
2. The image name is in the logger, so the source is more useful (which
   may be a plugin or addition)

TrivialFix

Change-Id: If95a8a41d2caf6738d4ccb9ddb651a06018743f4
2022-06-20 08:08:11 +00:00
Daniel Stoye
1f1214d4fe Bump skydive version to 0.28
Skydive versions prior to 0.28.0 panic on newer versions of libc.
Fixed upstream in 0.28, see: https://github.com/skydive-project/skydive/issues/2329
This should be backported to at least xena and yoga, as skydive is
currently not working with centos 8 on these releases.

Closes-Bug: #1940862
Change-Id: I177949b9319a977c9cd9121eb28b710256b72a5a
2022-06-17 19:11:21 +02:00
Marcin Juszkiewicz
af648f40a9 refactor sources/users to separate files
They do not change often and take space in config.py ;D

Change-Id: I4b15602d53e027470a4b93a8d897f996df684a8d
2022-06-15 17:14:27 +02:00
Zuul
e8083e1def Merge "Switch OPENSTACK_RELEASE back to master" 2022-06-15 11:55:26 +00:00
Michal Nasiadka
07a65c9061 Switch OPENSTACK_RELEASE back to master
Cap openstacksdk in kolla-toolbox to avoid ansible-openstack-collection
from failing.

Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/844905
Change-Id: I4d7dcc413cd9ab0b9db550e1aed7d2229b04c5d1
2022-06-09 12:52:16 +02:00
Zuul
09f6999cdc Merge "Add documentation to create monthly stable releases" 2022-06-08 13:32:47 +00:00
Maksim Malchuk
bce06d2d5a Don't ignore errors of 'apt-get update' command
This change fixes an issue with 'apt-get update' command and stop
container building with erroneous source repositories.

Change-Id: I5ce2eb66a647e1805f086aa37942bf5d13eb4106
Signed-off-by: Maksim Malchuk <maksim.malchuk@gmail.com>
2022-06-08 09:08:23 +00:00
Marcin Juszkiewicz
e14d6212d4 CI: drop CentOS Stream 8 jobs
We kept CS8 jobs while waiting to get CentOS Stream 9 support ready.

But we have situations where OpenStack projects fail due to lack of new
enough (3.8+) Python in CS8.

Time to make CS8 go away.

Change-Id: I32bef531896777bfb463bb401ebba1d488a16bf9
2022-06-08 11:06:10 +02:00
Dr. Jens Harbott
53880a83cb Add documentation to create monthly stable releases
Add a reference on how the release tooling can be used.
Add a bullet point to the meeting agenda.
Drop reference to milestones on launchpad, which are no longer being
used.

Change-Id: I66492a7c74a05849b35a157f7782a6596887427f
2022-06-03 09:13:47 +02:00
Zuul
3e35fede9a Merge "doc: get rid of remainders of binary images" 2022-06-02 12:45:21 +00:00
Marcin Juszkiewicz
8a5922fd71 doc: get rid of remainders of binary images
We still documented some of binary images details. While we do not have
them anymore.

Change-Id: I49148ed788cd35ed9f5606d8b69c5e75230433f3
2022-06-02 12:03:29 +02:00
Marcin Juszkiewicz
213190ae03 Allow to provide own repos.yaml file
Several people use Kolla behind firewall/proxy. Internal mirrors are
often in use then. We do not provide a way to replace repos.yaml file in
an easy way which may lead to complicated solutions or template
overrides.

This patch adds a way to provide own copy of repos.yaml file.

Change-Id: I0b07da22fea27e0ff4e90aaad19e50d84ff9a121
2022-06-02 11:46:38 +02:00
generalfuzz
d424a63d60 Replace Certbot with Lego for Let's Encrypt container
Replaces Certbot with Lego for certificate retrieval and renewal.
Lego includes support for DNS ACME Challenges.

Adds ssh-client to LetsEncrypt and ssh-server to HAProxy to allow both
the transfer of Let's Encrypt certificates to the HAProxy container and
to enable live updating of HAProxy certifices using the HAProxy API
exposed on the local HAProxy socket.

Implements: blueprint letsencrypt-https
Change-Id: I737e1ce5bfc37d0703879c8272a9e915084c5ca6
2022-05-30 08:11:54 +00:00
Radosław Piliszek
9d5bdbf36d Use the new image naming scheme by default
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-29 18:14:01 +00:00
Zuul
a51ebc9e7f Merge "[CI] Move queue setting to project level" 2022-05-24 10:42:40 +00:00
Radosław Piliszek
3889952454 [CI] Fix tags in publishing
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-21 17:41:37 +00:00
Radosław Piliszek
633c89b423 [bifrost] Force Bifrost to use the correct u-c
Following up on [1], Bifrost also needs to use correct u-c and,
surprise-surprise, this is set via a third variable, this time
environment one for the bash script. Oh well. Let's do it.
This has the added benefit of not requiring additional
download of u-c as it reuses the already existing one.

[1] https://review.opendev.org/c/openstack/kolla/+/842276

Change-Id: I2cc79c476d089977b57006dd4ce2e9a8c6206aa1
2022-05-21 19:38:23 +02:00
Radosław Piliszek
b888f68daf Fix local sources of git repositories
This is I2cbf1f539880d512aa223c3ef3a4b19ee18854ac extended to fix
the case when a git repository is used with a git repo.
This is probably a rarer use case but, still, we use it in CI
for in-review changes testing.

Change-Id: I77b0dcd2e9dfd8ea8390a471b80c8954b67ef91b
2022-05-18 16:20:12 +02:00
Michal Arbet
9040d4f527 Fix redis-sentinel containers always reporting changed
The CONFIG REWRITE command rewrites the redis.conf
file the server was started with, applying the minimal
changes needed to make it reflect the configuration
currently used by the server, which may be different
compared to the original one because of the use of
the CONFIG SET command.

https://redis.io/commands/config-rewrite/

Because of above behaviour it's needed to
hack kolla's CMD.

Without this hack container's
/usr/local/bin/kolla_set_configs --check
is always reporting changed state even if
config is not changed.

Therefore redis containers are always restarted
by kolla-ansible. This patch is fixing this.

Change-Id: I8245b9e753fa4175dacfa679a078f63876b0d327
Partial-Bug: #1967664
2022-05-18 09:35:50 +00:00
Radosław Piliszek
3967e5c24b [CI] Move queue setting to project level
Per [1].

[1] http://lists.zuul-ci.org/pipermail/zuul-discuss/2022-May/001801.html

Change-Id: I46f03329853a2025bff20b7b60e35c06aba619eb
2022-05-18 08:05:21 +00:00
Radosław Piliszek
0e3b29c5fd [bifrost] Force Bifrost to use the correct git branch
Bifrost decides on the branches to use by itself.
Early in the cycle, they are often not set correctly and may
break our CI.
This patch ensures we force Bifrost to use the expected branches,
making us independent of Bifrost getting fixed.

Change-Id: I33dbca927062284fd7a06ab6db732dd5e2219c40
2022-05-18 08:05:08 +00:00
Zuul
9edcdb0a7a Merge "[publishing] use a new naming scheme" 2022-05-13 14:21:17 +00:00
Zuul
684eeab65e Merge "prometheus-libvirt-exporter: fix build with newer Go" 2022-05-06 13:24:53 +00:00
Pierre Riteau
38ae10eb83 Update meeting time
Change-Id: Ifa487c077f1feae19e3b021b2ba5dca2dd6d8a99
2022-05-06 12:38:39 +02:00
Marcin Juszkiewicz
9630032fd6 prometheus-libvirt-exporter: fix build with newer Go
I have no idea how Go works. This change make build happen.

Change-Id: I09ea136c7354143f45f856d5e8d8ed1192879622
2022-05-06 10:25:22 +02:00
Radosław Piliszek
1e40f08e6c [publishing] use a new naming scheme
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-05-02 11:00:45 +02:00
Zuul
b418bd8592 Merge "Add multipath to cinder-volume" 2022-04-29 10:09:07 +00:00
Zuul
336542e683 Merge "Use rsync to update kayobe-config" 2022-04-29 09:58:56 +00:00
Pierre Riteau
a655df39ff Use rsync to update kayobe-config
Using cp will leave removed files in kayobe-config.

Change-Id: I39ab4afa4b713ab1a573e2ad9922b4c847ad35ef
2022-04-27 11:05:42 +02:00
Vladislav Belogrudov
b9aa913813 Add multipath to cinder-volume
Cinder-volume container can operate on multipath devices but
fails to do so due to absent multipath package for several images.
This fix explicitely adds multipath to the image.

Closes-Bug: #1970541
Change-Id: I14af40078508b06e46866b77ab200228ec827a0d
2022-04-27 10:57:16 +03:00
Sven Kieske
d41c19fbca
Bump up Alertmanager version
Change-Id: I793e35ef347c9d44b4e870cd3ca1bd459e557623
2022-04-26 14:01:54 +02:00
Zuul
b02f643db0 Merge "adjust permissions on _extend_start files (part II)" 2022-04-22 12:28:08 +00:00
Zuul
daaea83378 Merge "monasca-thresh: drop special handling for Ubuntu" 2022-04-22 11:18:32 +00:00
Zuul
b8493da8ad Merge "grafana: drop check for not supported architectures" 2022-04-22 11:18:29 +00:00
Zuul
cb87e96401 Merge "[release] Use yoga branch for neutron-vpnaas and monasca-api" 2022-04-22 10:12:43 +00:00
Marcin Juszkiewicz
016c5ed30c adjust permissions on _extend_start files (part II)
Tim Shearer started it in 1d96a2bbe1.

Since all extend_start files are sourced rather than executed, the executable
bits are now cleared throughout the project.

Change-Id: Ia1797c32fc6a35f9f077c673abf4d8e16e51a760
2022-04-22 11:34:55 +02:00
Zuul
7cb4f7d01c Merge "flatten images a bit" 2022-04-22 08:46:55 +00:00
Zuul
8650c57c12 Merge "Add fluent-logger to images" 2022-04-21 22:32:00 +00:00
Zuul
f41b13ccb7 Merge "Add support for checking more daemons" 2022-04-21 21:23:19 +00:00
Michal Arbet
9dc0df2a99 Add fluent-logger to images
There is proposed change in kolla-ansible below
which is changing the way how central-logging
works and adding native fluent logging.

Because of this, it's needed to add python
fluent library to openstack images.

Proposed Change:
 - https://review.opendev.org/#/c/755775/

Change-Id: Iedc782a3317c93a2af0da4696fd71c05e0e4a55e
2022-04-21 18:54:12 +00:00
Marcin Juszkiewicz
6423fb5e1b monasca-thresh: drop special handling for Ubuntu
Bug mentioned in Dockerfile was fixed about 4 years ago.

Change-Id: I6d90e6673b01756e7de7c8eeb29423cee0cce6f7
2022-04-21 18:53:50 +00:00
Marcin Juszkiewicz
86361d0831 grafana: drop check for not supported architectures
Kolla supports only AArch64 and x86-64 so there is no need to check for
other architectures.

Change-Id: I44e45492bcbdd56a5c985ba84bad66202c9fde55
2022-04-21 18:53:25 +00:00
Marcin Juszkiewicz
e21aeb5ae9 flatten images a bit
As we have one type of images now some RUN calls could be merged so we
will have less layers in resulting images.

Change-Id: I5178c58fbd8c65efe825dc249c0f1368ef0fe8e0
2022-04-21 18:53:14 +00:00
Mark Goddard
addd99c8ea [release] Use yoga branch for neutron-vpnaas and monasca-api
These were not available at the time we switched everything else. Venus
remains unavailable.

Change-Id: Ic9e54568a2844991b12e04ebfb1444b5cf286dbb
2022-04-21 17:26:11 +00:00
Marcin Juszkiewicz
08b80e34da switch to short image names by default
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-21 17:01:08 +02:00
Michal Arbet
1c63c95658 Add support for checking more daemons
This patch is changing the way how keepalived
checks daemons liveness.

Check_alive.sh will find checks for daemons
which are copied by kolla-ansible and return 0/1
if alive/down.

This patch is required for proxysql HA.

Needed-By: https://review.opendev.org/c/openstack/kolla-ansible/+/770215

Change-Id: I68836918466beb572e42ffedce127747290ad481
2022-04-21 12:28:56 +02:00
Marcin Juszkiewicz
e877556aaf add a way to not have 'install_type' in image name (temporary)
--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-19 16:23:12 +02:00
Marcin Juszkiewicz
0cf5b1d4e6 enable logging to file for quiet mode
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-15 13:37:25 +00:00
Radosław Piliszek
f33ef03977 Revert "CI: add templated Dockerfiles to build logs"
This reverts commit 09c890b124.

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-15 13:37:18 +00:00
Marcin Juszkiewicz
1b697cc69b drop install_type almost everywhere
The only place where it stays is argument parsing where it gets ignored.

Hardcoded to 'source' to make merging both kolla and kolla-ansible
changes easier.

Change-Id: I6890a7ec7baf507f8acd75b42bbd0fb17c2e4511
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/837620
2022-04-14 19:08:36 +00:00
Marcin Juszkiewicz
c4fda7baa3 Fix image builds with sources using a type=git
A recent change to git [1] introduced a new behaviour to work around a
CVE [2] that disallows any git operations in directories not owned by
the current user.

This may seem unrelated to installation, but it plays havoc with PBR,
which calls out to git to get to get revision history.  So if you are
"pip install"-ing from a source tree you don't own, the PBR git calls
in that tree now fail and the install blows up.

When using type=source, kolla clones the repository, then creates a
tarball from it, which is ADDed to the image. The ownership of the files
in the tarball is preserved, which in this case will be the user running
kolla-build. Since the Docker build runs as root, we hit the PBR issue.

Our solution is to make sure that any tarball we generate from git
sources have all files owned by root:root so that the root user is able
to use git commands when building container images.

[1] 8959555cee
[2] https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-24765.

Closes-Bug: #1969096
Related-Bug: #1968877

Co-Authored-By: Mark Goddard <mark@stackhpc.com>
Change-Id: I2cbf1f539880d512aa223c3ef3a4b19ee18854ac
2022-04-14 11:32:51 +01:00
Zuul
4b5cfa85eb Merge "drop list of images unbuildable for source type" 2022-04-12 10:19:34 +00:00
Zuul
c7d9f07660 Merge "CI: drop 'source' from build job names" 2022-04-12 10:10:04 +00:00
Zuul
9be6b2bd87 Merge "Adjust permissions on _extend_start files." 2022-04-12 10:09:59 +00:00
Zuul
4995ca5bb8 Merge "Deprecate hacluster-pcs" 2022-04-12 09:18:59 +00:00
Zuul
5c11ce5340 Merge "CI: drop install_type from build jobs" 2022-04-12 09:18:55 +00:00
Marcin Juszkiewicz
41fa71d2c2 CI: drop install_type from build jobs
Change-Id: If524e45dc262efb253fc06329d4567412282926d
2022-04-11 19:40:01 +02:00
Radosław Piliszek
bf1f378db6 Deprecate hacluster-pcs
It is not used in k-a and has never been.

Change-Id: I600cc276ba67d88928e6c2c87810459435b92650
2022-04-11 19:13:35 +02:00
Radosław Piliszek
6e2d6c31cb Remove duplicate entry in UNBUILDABLE_IMAGES
hacluster-pcs is already in centos, no need to be in
centos+aarch64.

TrivialFix

Change-Id: I9868f73172efedf113c3cc1567098b3439e2a205
2022-04-11 19:11:05 +02:00
Tim Shearer
1d96a2bbe1 Adjust permissions on _extend_start files.
Explicitly set the permissions on the kolla-toolbox kolla_extend_start
file. Also, since all extend_start files are sourced rather than
executed, the executable bits are now cleared throughout the project.

Change-Id: I5c2deb4a2e33575d57c852089f856a9acc6818d0
2022-04-11 17:22:24 +02:00
Zuul
19765c6297 Merge "for Zed cycle minimal Python version is 3.8" 2022-04-11 14:51:09 +00:00
Zuul
9769f21b5a Merge "cyborg-agent: no need to check for install_type" 2022-04-11 14:51:05 +00:00
Zuul
7b57552e0e Merge "watcher: drop binary parts" 2022-04-11 14:51:02 +00:00
Zuul
cb3b95c767 Merge "Drop qdrouterd image" 2022-04-11 14:50:59 +00:00
Zuul
d549ad4c0b Merge "drop add_binary_source_envs() macro" 2022-04-11 14:50:55 +00:00
Marcin Juszkiewicz
a0942b8549 CI: drop 'source' from build job names
*-source-upgrade kept old names as we need to add *-binary-upgrade ones
to check previous_release-binary/* -> current_release/* upgrade path

k-a jobs will go in separate patch

Change-Id: Ieba3260ffa11fa2d3982f379f95abed9f840028d
2022-04-11 13:29:09 +02:00
Marcin Juszkiewicz
7aceab5f6c drop list of images unbuildable for source type
If they are unbuildable then they should be in distro or distro+arch
blocks now.

Change-Id: I9cd225d3a7fd99fdeaf4926730c95d37f8f7eac7
2022-04-11 12:56:59 +02:00
Marcin Juszkiewicz
ae8eada658 cyborg-agent: no need to check for install_type
There is only source.

Change-Id: I0d32808c73ab3292a8f213424118dfe2313d465b
2022-04-11 12:28:34 +02:00
Marcin Juszkiewicz
34f8ad5026 watcher: drop binary parts
Change-Id: I33eecfa49086b01a116aa0616fd1b6815ff8894e
2022-04-11 12:27:57 +02:00
Marcin Juszkiewicz
4a737c6150 for Zed cycle minimal Python version is 3.8
When everything fails assume we have Python 3.8 (should never happen).

Change-Id: I69033cc910dd8236a470fd130816f2870a9b5b3a
2022-04-11 12:16:29 +02:00
Marcin Juszkiewicz
3915785884 drop add_binary_source_envs() macro
With binary install type dropped there is no need for this macro.

Change-Id: I7bdd29eb48a23faa04a98e785129d97258f05e64
2022-04-11 12:09:29 +02:00
Marcin Juszkiewicz
f4319f8247 Drop qdrouterd image
It was marked deprecated in Yoga.

Change-Id: Iea1cf9c539a73da625e335d6c1adb6cd71ec93d4
2022-04-11 12:05:32 +02:00
Marcin Juszkiewicz
9e21a323e2 horizon: binary images are gone
We no longer need to check for them so one MANAGE_PY is enough.

Change-Id: Iee2f3bb1c0444f414cad2617dea225192ab8dc81
2022-04-11 11:47:54 +02:00
Zuul
657820362d Merge "docker: drop binary parts" 2022-04-11 09:39:28 +00:00
Zuul
26fd382f17 Merge "drop infra_image_prefix" 2022-04-11 09:21:57 +00:00
Zuul
24c4da0218 Merge "drop infra-rename support" 2022-04-11 07:37:22 +00:00
Marcin Juszkiewicz
a1510870e8 drop infra_image_prefix
We have one install_type only now so that infra stuff is not needed
anymore.

Change-Id: I60d50ba7699d46d001eaef365fb84b0ce8e9b262
2022-04-11 06:22:21 +00:00
Marcin Juszkiewicz
1749da2fbf docker: drop binary parts
Big patch drops all mentions of binary images support. Suggestions are
welcome how to split it into parts or handle better.

Change-Id: I5d5a46c6ce7734ceb8b844e17b43e359d7cac6e3
2022-04-09 17:44:26 +02:00
Zuul
cabfd0f3ef Merge "build watcher images" 2022-04-09 13:08:53 +00:00
Marcin Juszkiewicz
ad53e1fe22 drop infra-rename support
With one type of install type there is no need for renaming infra
images.

Change-Id: I28b7563e5ce1efac0298a62fee96a9f946f3341b
2022-04-08 17:55:26 +02:00
Zuul
46d7f1dc10 Merge "add releasenote about dropping binary images support" 2022-04-08 15:45:15 +00:00
Marcin Juszkiewicz
705fb74e23 build watcher images
Closes-bug: #1952944

Change-Id: I9d2dd025b2a4805ef1755ebbf10f15018d05f1c7
2022-04-08 17:10:27 +02:00
Marcin Juszkiewicz
93bcc00df7 add releasenote about dropping binary images support
Change-Id: I86d64e6348a7deed67f9271aeca59c599feb57a6
2022-04-08 12:42:54 +02:00
Marcin Juszkiewicz
9b8b22b8d4 kolla: drop 'binary' install type
We no longer support binary images. This patch removes a way to build
them.

"--install-type" argument has one available option now. Later in cycle
it will be ignored.

Change-Id: If0e881d253d6a4c89ffe27831a661df321b6d5b6
2022-04-08 11:45:04 +02:00
Zuul
d8a7119009 Merge "CI: remove binary jobs" 2022-04-08 06:56:13 +00:00
OpenStack Release Bot
b477076f72 Add Python3 zed unit tests
This is an automatically generated patch to ensure unit testing
is in place for all the of the tested runtimes for zed.

See also the PTI in governance [1].

[1]: https://governance.openstack.org/tc/reference/project-testing-interface.html

Change-Id: I0b869ff7b2ae2bca96d4da828a3948f5c0dacc09
2022-04-07 12:45:42 +00:00
OpenStack Release Bot
ce530f4f0c Update master for stable/yoga
Add file to the reno documentation build to show release notes for
stable/yoga.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/yoga.

Sem-Ver: feature
Change-Id: Id9ff668719c6b7510eaf83dd68449d2c84da4054
2022-04-07 12:45:40 +00:00
Marcin Juszkiewicz
12dd8871d1 CI: remove binary jobs
During Yoga PTG we agreed about dropping support for binary images in
Zed cycle.

On start of build user was greeted with "binary images are deprecated"
message when tried to build them.

Part 1: dropping binary images from CI

Change-Id: I8035c53aef60717e8b2fd928bca75db1caf56aa5
2022-04-05 11:15:50 +02:00
Dr. Jens Harbott
1d324d7d7a Revert "Workaround setuptools==60.0.0 breakages"
This reverts commit b69c589718.

Reason for revert: The original commit was a hotfix to work around build failures, we should try to move back to a normal state again.

Change-Id: Iff79de9dabcd4bba795f3c44d3017baa5a860306
2021-12-21 05:18:48 +00:00
711 changed files with 10854 additions and 10740 deletions

13
.ansible-lint Normal file
View file

@ -0,0 +1,13 @@
---
exclude_paths:
- .cache/ # implicit unless exclude_paths is defined in config
- zuul.d/
- kolla/template/repos.yaml
offline: true
parseable: true
profile: basic
skip_list:
- package-latest
- role-name
strict: true
use_default_rules: true

1
.codespell-ignore Normal file
View file

@ -0,0 +1 @@
solum

2
.coveragerc Normal file
View file

@ -0,0 +1,2 @@
[run]
omit = kolla/tests/*

View file

@ -1,10 +0,0 @@
---
extends: default
ignore: |
.tox/
rules:
line-length: disable
truthy: disable
braces:
max-spaces-inside: 1

View file

@ -1,123 +0,0 @@
---
- secret:
name: kolla_dockerhub_creds
data:
password: !encrypted/pkcs1-oaep
- QLe52Ymma5HJg3K2kgeSEMp7TwarkH8AbEiwcnDTqZ276BUF9wrt+5gPJRfVU1BYty2lq
CCzhawJJ09TV0WU2SEUKlicWoXQ/hcbYWNlOHVL6/gm9UxZP/GC8d1eyQfbCS7UUHfiHF
BP5Vbrn5vmK6DHhaVc9cEdXpcrA9cghLINpH6EeLE6ujD9gH5Apol30Qvj0IcpildWCYC
1rJqc8e/6BwOcLiPhli+A/bbpWxUzJgnFqogEiHLPvUTRyHDA8aCLv9Q6uryzaA0pzt7I
VY4JcNeM3J43QSTa6G7FxCGDiNOhEDvS31EyoxGZCdDAsN3Yh2nWPCfqr2X8vDk1Sbou7
ouiU+fKV+sv0f2+2fWNh+bLUOcOpp2gKvFKxpIxt7j5Zm6KBpHRxZelp4wVEPyEyecDN1
/fV7H4Z4QzH+Lah1F3H19IPvz1FPPaEFdrK5HWsbxa1aS9AY2hn+Th9TPJQSn/jxQvn8D
IT1GtO+Lr1SNUzrJJXzAdLmnyD9iVFOujzGsVfEbFpMlSetoBTNJl0MxrsYp6cJOqMRSS
sQZ56jPLxjCBTXoof2E81wbatOXWTLBpBzI5mtTfbcJnWfO93ZB9z2or6PMkWmTtYVji8
J1xFe2GTCHuPYjrETCPj5k0eCT3DS0PJ71N2mvRnPv5mKJKjhKBokhWscpuq1k=
user: !encrypted/pkcs1-oaep
- oRkTqW+FpsUy89wPVYJYk0ZU92yt5C6BKJr7ixVZo9ybcXfYwKDeZCoOeugYNkewJo1hV
ksCtqbqMc4v2r1cblJK003XCWkXroU5Vx5h/rzFjhxtDK59xUIYS8GzG2OThduqabzyKz
xm883COjULKPMEL8Q8OxmOvOJ4FcdJnToRWJO9lBQJKLaKleKCor6aadslkSACkDXIcC3
INIn0t02MZCL96VSBI9RtXaQ5VeyZDzv5QBIquouKYP8/j/yNUb4ilNXJKCJa8kYgo8O8
sEDtzITJuHorIYxTUc1syzAs9v1BlJF7SUqxTvR2YMFMlV6VADa7r8X4iyyWPmFL5O9c7
aN9JZhLNGgFLLAK4FISyOsNLZQS/JRjjGT5h9rsslZJsbco4q/Wwj51ezb78NJFhNY7lM
IpjKWByqSjg2k+1rEXpo6msgZskwYIHPi3xH3njP76127o3adeZQCT72LSnc4LIV6en/G
tIDqK72tkJpuwiA6u6ti764xXmIhl8Njfhn49cm6Fex9F8YieqPOj3t9mxMzdEZ7gd4Go
Oz6nUZlML6sEyT0vilbDpo1RRweinE5J8mU+8joxeDpCHXBUYekFmgXDlpg58XmSp96fM
C/rWcxTKlGJjjlVFZfhRHHy6gWBYH/SoozkbpkWbk0g43SLSxAuITy7nqLggOU=
- secret:
name: kolla_quay_io_creds
data:
username: !encrypted/pkcs1-oaep
- VsvMvV5wOUfl5B2HJboWfN8mta/Tuk7PXcJf5RfKk4uXP6qYGM4dcMB9EdoJNhMCi7FeA
NrTZaxf/AjLAkgKlRhz7sPKhmR95+jrFRgEzedpcCamdPkCa+wNQEMNMd0rTwioYUEWm4
Y+Oa2mIswy5LcUViz38MPQhf0725U5sYtH2qkuhMbU8u8vzYhSk749xtAN6I1T8ziTKKB
3FBowFc2rSRJUQPsLLZjTxBHbrk+00p/DPoHLOz9/9Jf5U//jkqx4ziE2w1a4+x/kWlYT
BPXuRL9wWN9ci2uKuoDRRd6QHJzPIJerKG07YU4PAcS3M245rbjjUQC3n3SQJs3u4kKI8
rZrxfbmtbfjkzRQXnhnhPk47PebpjnpEUNw6+scnQ+ELdQ0QYGsVRM4x4/ywe5CeFYVDR
whQQ1iG21FOs3iv592I7P7l4cEKqKFyx9qiV4t2fyLrHgtU+L/05iENH9igGJ0tDCQ5zT
2F2laUWGtzUh76txuFDjpBxR3qS62g825dZXaTegkA+v6c1az23lrYTqbTRf63cuAQyYX
APPRC5QU0URXBoIbWb0ry3O5lr/uudI1ZCLN8SSJhpmZAIlviOfaxrKu9fg2YY9e0xpz9
CMEWQ/n1EsUyL34Wv189Rvpq4M4GTvozEKsRsjY3u0ygwEUXcH2lEXGOrs+hms=
password: !encrypted/pkcs1-oaep
- dR2beX9Bn7O8iCqNHtWo1FWX71vy+CwffDk5rafUh5yew2OVNcVtVjVOPvHwb5zZv1LCd
MVcgIJe513dM5tQkn2H/HvN/seVu/CfHA6lg6Tj+ueW9VdUH6KiBPr+NCgQWX+Xt3sXbt
sPzfNGpvTw1ZCUp0nnudZEKPZ2jn83baNMumW8E8xPb4s2kePzINsb8sGvqy6BOk5rUIo
7DaEwWrNnq9TTnMcWGIF+fLP5Pin7+fmvnLkT6qRN4v5FszpHYm8YCpv02nzqI1/F9HeM
P3GtkUdIPxa1+3VwZ/DSA9BWi4VG15jDtaxeZFVGQuMqQAiCx8Jqvd+xX2qugAq1m+U7W
JobDbaeTYrUmJ1zUaspPZ16RTSf9UGCTaejoSVKM9lJHv6ixtsX7UWkgFvceVrlkt7TtH
2mqhBnXvwB6VD5d311WRUfNXz7gb60otisB5G2k/UnRnv1Mu33TPVT7XOFDpVnAvRS3lt
haJ34N7AWnDIsllvzcmVWTw3wf/6LLfOQrW2Z+vNambyR4Oc+LVUTbEvZVIU65LpOTIn3
LfDhCLDD3VtnVOrj4UxZsjzmPbday1fziua/7f+CXsShC5erz0ZM65rMCwkjWeI6Kc63A
0M27tl+OWHO3KkfFR4tWc3dws3r1kYjQeds0adBHyYD0eL8SJfwZkbtojAQ1JM=
- nodeset:
name: kolla-centos8-stream
nodes:
- name: primary
label: centos-8-stream
- nodeset:
name: kolla-ubuntu-focal
nodes:
- name: primary
label: ubuntu-focal
- nodeset:
name: kolla-debian-bullseye
nodes:
- name: primary
label: debian-bullseye
- nodeset:
name: kolla-centos8-stream-aarch64
nodes:
- name: primary
label: centos-8-stream-arm64
- nodeset:
name: kolla-debian-bullseye-aarch64
nodes:
- name: primary
label: debian-bullseye-arm64
- nodeset:
name: kolla-ubuntu-focal-aarch64
nodes:
- name: primary
label: ubuntu-focal-arm64
- job:
name: kolla-base
parent: base
timeout: 10800
post-timeout: 10800
pre-run: tests/playbooks/pre.yml
run: tests/playbooks/run.yml
post-run: tests/playbooks/post.yml
attempts: 5
irrelevant-files:
- ^.*\.rst$
- ^doc/.*
- ^etc/.*
- ^releasenotes/.*$
- ^specs/.*$
- ^test-requirements.txt$
- ^\.zuul\.d/
- ^\..+
- ^contrib/
- ^LICENSE$
- ^tox\.ini$
vars:
publisher: false
extra-vars:
kolla_logs_dir: "{{ zuul_output_dir }}/logs/kolla"
kolla_build_logs_dir: "{{ kolla_logs_dir }}/build"
kolla_work_dir: "{{ kolla_logs_dir }}"
virtualenv_path: "/tmp/kolla-virtualenv"
- job:
name: kolla-build-no-infra-wheels-base
parent: kolla-base
vars:
use_infra_wheels_mirror: false

View file

@ -1,131 +0,0 @@
---
- project:
check:
jobs:
- kolla-build-centos8s-binary
- kolla-build-centos8s-source
- kolla-ansible-centos8s-source
- kolla-ansible-centos8s-binary
- kolla-ansible-centos8s-source-upgrade
check-arm64:
jobs:
- kolla-build-centos8s-source-aarch64
gate:
queue: kolla
jobs:
- kolla-build-centos8s-source
- kolla-ansible-centos8s-source
- kolla-ansible-centos8s-source-upgrade
periodic:
jobs:
- kolla-publish-centos8s-source-quay
- kolla-publish-centos8s-binary-quay
periodic-weekly:
jobs:
- kolla-publish-centos8s-source-dockerhub
- kolla-publish-centos8s-binary-dockerhub
experimental:
jobs:
- kolla-build-no-infra-wheels-centos8s-source
- kolla-ansible-centos8s-source-bifrost:
files: ^docker\/(base|bifrost|openstack-base)\/.*
# Test rabbitmq & mariadb changes in multinode ceph jobs.
- kolla-ansible-centos8s-source-cephadm:
files: ^docker\/(base|cinder|glance|mariadb|openstack-base|rabbitmq)\/.*
- kolla-ansible-centos8s-source-upgrade-cephadm:
files: ^docker\/(base|cinder|glance|mariadb|openstack-base|rabbitmq)\/.*
- kolla-ansible-centos8s-source-zun:
files: ^docker\/(base|cinder|etcd|iscsid|kuryr|openstack-base|zun)\/.*
- kolla-ansible-centos8s-source-scenario-nfv:
files: ^docker\/(base|barbican|heat|mistral|openstack-base|redis|tacker)\/.*
- kolla-ansible-centos8s-source-ironic:
files: ^docker\/(base|dnsmasq|ironic|ironic-inspector|iscsid|openstack-base)\/.*
- kolla-ansible-centos8s-source-swift:
files: ^docker/(base|openstack-base|glance|swift)/
- kolla-ansible-centos8s-source-mariadb:
files: ^docker/(base|mariadb)/
- kolla-ansible-centos8s-source-masakari:
files: ^docker/(base|masakari)/
- kolla-ansible-centos8s-source-octavia:
files: ^docker/(base|neutron|octavia|openstack-base|openvswitch|ovn)/
- kolla-ansible-centos8s-source-ovn:
files: ^docker/(base|neutron|openstack-base|openvswitch|ovn)/
- kolla-ansible-centos8s-source-prometheus-efk:
files: ^docker/(base|elasticsearch|fluentd|grafana|kibana|prometheus)/
- kolla-ansible-centos8s-source-kvm:
files: ^docker/nova/
- job:
name: kolla-build-centos8s-binary
parent: kolla-base
nodeset: kolla-centos8-stream
voting: false
vars:
base_distro: centos
install_type: binary
- job:
name: kolla-publish-centos8s-binary-dockerhub
parent: kolla-build-centos8s-binary
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: dockerhub
kolla_namespace: kolla
secrets:
- kolla_dockerhub_creds
- job:
name: kolla-publish-centos8s-binary-quay
parent: kolla-build-centos8s-binary
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: quay.io
kolla_namespace: openstack.kolla
secrets:
- kolla_quay_io_creds
- job:
name: kolla-build-centos8s-source
parent: kolla-base
nodeset: kolla-centos8-stream
vars:
base_distro: centos
install_type: source
- job:
name: kolla-build-centos8s-source-aarch64
parent: kolla-build-centos8s-source
nodeset: kolla-centos8-stream-aarch64
voting: false
- job:
name: kolla-publish-centos8s-source-dockerhub
parent: kolla-build-centos8s-source
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: dockerhub
kolla_namespace: kolla
secrets:
- kolla_dockerhub_creds
- job:
name: kolla-publish-centos8s-source-quay
parent: kolla-build-centos8s-source
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: quay.io
kolla_namespace: openstack.kolla
secrets:
- kolla_quay_io_creds
- job:
name: kolla-build-no-infra-wheels-centos8s-source
parent: kolla-build-no-infra-wheels-base
nodeset: kolla-centos8-stream
vars:
base_distro: centos
install_type: source

View file

@ -1,127 +0,0 @@
---
- project:
check:
jobs:
- kolla-build-debian-source
- kolla-build-debian-binary
- kolla-ansible-debian-source
- kolla-ansible-debian-source-upgrade
check-arm64:
jobs:
- kolla-build-debian-source-aarch64
- kolla-ansible-debian-source-aarch64
gate:
queue: kolla
jobs:
- kolla-build-debian-source
- kolla-ansible-debian-source
- kolla-ansible-debian-source-upgrade
periodic:
jobs:
- kolla-publish-debian-source-quay
- kolla-publish-debian-source-aarch64-quay
periodic-weekly:
jobs:
- kolla-publish-debian-source-dockerhub
- kolla-publish-debian-source-aarch64-dockerhub
experimental:
jobs:
- kolla-build-no-infra-wheels-debian-source
- kolla-ansible-debian-source-ironic:
files: ^docker\/(base|dnsmasq|ironic|ironic-inspector|iscsid|openstack-base)\/.*
- job:
name: kolla-build-debian-source
parent: kolla-base
nodeset: kolla-debian-bullseye
vars:
base_distro: debian
install_type: source
- job:
name: kolla-build-debian-source-aarch64
parent: kolla-build-debian-source
nodeset: kolla-debian-bullseye-aarch64
- job:
name: kolla-build-debian-binary
parent: kolla-base
nodeset: kolla-debian-bullseye
voting: false
vars:
base_distro: debian
install_type: binary
- job:
name: kolla-publish-debian-binary-dockerhub
parent: kolla-build-debian-binary
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: dockerhub
kolla_namespace: kolla
secrets:
- kolla_dockerhub_creds
- job:
name: kolla-publish-debian-binary-quay
parent: kolla-build-debian-binary
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: quay.io
kolla_namespace: openstack.kolla
secrets:
- kolla_quay_io_creds
- job:
name: kolla-publish-debian-source-dockerhub
parent: kolla-build-debian-source
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: dockerhub
kolla_namespace: kolla
secrets:
- kolla_dockerhub_creds
- job:
name: kolla-publish-debian-source-quay
parent: kolla-build-debian-source
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: quay.io
kolla_namespace: openstack.kolla
secrets:
- kolla_quay_io_creds
- job:
name: kolla-publish-debian-source-aarch64-dockerhub
parent: kolla-build-debian-source-aarch64
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: dockerhub
kolla_namespace: kolla
secrets:
- kolla_dockerhub_creds
- job:
name: kolla-publish-debian-source-aarch64-quay
parent: kolla-build-debian-source-aarch64
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: quay.io
kolla_namespace: openstack.kolla
secrets:
- kolla_quay_io_creds
- job:
name: kolla-build-no-infra-wheels-debian-source
parent: kolla-build-no-infra-wheels-base
nodeset: kolla-debian-bullseye
vars:
base_distro: debian
install_type: source

View file

@ -1,9 +0,0 @@
---
- project:
templates:
- openstack-python3-yoga-jobs
- openstack-python3-yoga-jobs-arm64
- check-requirements
- publish-openstack-docs-pti
- release-notes-jobs-python3
- periodic-stable-jobs

View file

@ -1,129 +0,0 @@
---
- project:
check:
jobs:
- kolla-build-ubuntu-binary
- kolla-build-ubuntu-source
- kolla-ansible-ubuntu-source
- kolla-ansible-ubuntu-binary
- kolla-ansible-ubuntu-source-upgrade
check-arm64:
jobs:
- kolla-build-ubuntu-source-aarch64
gate:
queue: kolla
jobs:
- kolla-build-ubuntu-source
- kolla-ansible-ubuntu-source
- kolla-ansible-ubuntu-source-upgrade
periodic:
jobs:
- kolla-publish-ubuntu-source-quay
- kolla-publish-ubuntu-binary-quay
periodic-weekly:
jobs:
- kolla-publish-ubuntu-source-dockerhub
- kolla-publish-ubuntu-binary-dockerhub
experimental:
jobs:
- kolla-build-no-infra-wheels-ubuntu-source
# Test rabbitmq and mariadb in multinode ceph jobs.
- kolla-ansible-ubuntu-source-cephadm:
files: ^docker\/(base|cinder|glance|mariadb|openstack-base|rabbitmq)\/.*
- kolla-ansible-ubuntu-source-upgrade-cephadm:
files: ^docker\/(base|cinder|glance|mariadb|openstack-base|rabbitmq)\/.*
- kolla-ansible-ubuntu-source-zun:
files: ^docker\/(base|cinder|etcd|iscsid|kuryr|openstack-base|zun)\/.*
- kolla-ansible-ubuntu-source-ironic:
files: ^docker\/(base|dnsmasq|ironic|ironic-inspector|iscsid|openstack-base)\/.*
- kolla-ansible-ubuntu-source-swift:
files: ^docker/(base|openstack-base|glance|swift)/
- kolla-ansible-ubuntu-source-mariadb:
files: ^docker/(base|mariadb)/
- kolla-ansible-ubuntu-source-masakari:
files: ^docker/(base|masakari|openstack-base)/
- kolla-ansible-ubuntu-source-linuxbridge:
files: ^docker/(base|neutron|openstack-base)/
- kolla-ansible-ubuntu-source-octavia:
files: ^docker/(base|neutron|octavia|openstack-base|openvswitch|ovn)/
- kolla-ansible-ubuntu-source-ovn:
files: ^docker/(base|neutron|openstack-base|openvswitch|ovn)/
- kolla-ansible-ubuntu-source-prometheus-efk:
files: ^docker/(base|elasticsearch|fluentd|grafana|kibana|prometheus)/
- kolla-ansible-ubuntu-source-kvm:
files: ^docker/nova/
- job:
name: kolla-build-ubuntu-binary
parent: kolla-base
nodeset: kolla-ubuntu-focal
voting: false
vars:
base_distro: ubuntu
install_type: binary
- job:
name: kolla-publish-ubuntu-binary-dockerhub
parent: kolla-build-ubuntu-binary
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: dockerhub
kolla_namespace: kolla
secrets:
- kolla_dockerhub_creds
- job:
name: kolla-publish-ubuntu-binary-quay
parent: kolla-build-ubuntu-binary
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: quay.io
kolla_namespace: openstack.kolla
secrets:
- kolla_quay_io_creds
- job:
name: kolla-build-ubuntu-source
parent: kolla-base
nodeset: kolla-ubuntu-focal
vars:
base_distro: ubuntu
install_type: source
- job:
name: kolla-build-ubuntu-source-aarch64
parent: kolla-build-ubuntu-source
nodeset: kolla-ubuntu-focal-aarch64
voting: false
- job:
name: kolla-publish-ubuntu-source-dockerhub
parent: kolla-build-ubuntu-source
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: dockerhub
kolla_namespace: kolla
secrets:
- kolla_dockerhub_creds
- job:
name: kolla-publish-ubuntu-source-quay
parent: kolla-build-ubuntu-source
post-run: tests/playbooks/publish.yml
vars:
publisher: true
kolla_registry: quay.io
kolla_namespace: openstack.kolla
secrets:
- kolla_quay_io_creds
- job:
name: kolla-build-no-infra-wheels-ubuntu-source
parent: kolla-build-no-infra-wheels-base
nodeset: kolla-ubuntu-focal
vars:
base_distro: ubuntu
install_type: source

View file

@ -77,7 +77,6 @@ Kolla provides images to deploy the following OpenStack projects:
- `CloudKitty <https://docs.openstack.org/cloudkitty/latest/>`__
- `Cyborg <https://docs.openstack.org/cyborg/latest/>`__
- `Designate <https://docs.openstack.org/designate/latest/>`__
- `Freezer <https://docs.openstack.org/freezer/latest/>`__
- `Glance <https://docs.openstack.org/glance/latest/>`__
- `Heat <https://docs.openstack.org/heat/latest/>`__
- `Horizon <https://docs.openstack.org/horizon/latest/>`__
@ -89,17 +88,12 @@ Kolla provides images to deploy the following OpenStack projects:
- `Masakari <https://docs.openstack.org/masakari/latest/>`__
- `Mistral <https://docs.openstack.org/mistral/latest/>`__
- `Monasca <https://docs.openstack.org/monasca-api/latest/>`__
- `Murano <https://docs.openstack.org/murano/latest/>`__
- `Neutron <https://docs.openstack.org/neutron/latest/>`__
- `Nova <https://docs.openstack.org/nova/latest/>`__
- `Octavia <https://docs.openstack.org/octavia/latest/>`__
- `Sahara <https://docs.openstack.org/sahara/latest/>`__
- `Senlin <https://docs.openstack.org/senlin/latest/>`__
- `Solum <https://docs.openstack.org/solum/latest/>`__
- `Swift <https://docs.openstack.org/swift/latest/>`__
- Skyline (`APIServer <https://docs.openstack.org/skyline-apiserver/latest/>`__ and `Console <https://docs.openstack.org/skyline-console/latest/>`__)
- `Tacker <https://docs.openstack.org/tacker/latest/>`__
- `Trove <https://docs.openstack.org/trove/latest/>`__
- `Vitrage <https://docs.openstack.org/vitrage/latest/>`__
- `Watcher <https://docs.openstack.org/watcher/latest/>`__
- `Zun <https://docs.openstack.org/zun/latest/>`__
@ -130,7 +124,7 @@ Kolla provides images to deploy the following infrastructure components:
- `MariaDB and Galera Cluster <https://mariadb.com/kb/en/library/galera-cluster/>`__
for highly available MySQL databases.
- `Memcached <https://www.memcached.org/>`__ a distributed memory object caching system.
- `Open vSwitch <https://www.openvswitch.org/>`__ and Linuxbridge back ends for Neutron.
- `Open vSwitch <https://www.openvswitch.org/>`__ for use with Neutron.
- MariaDB Backup A tool which provides a method of performing a hot backup of your MySQL data while the
system is running.
- `Prometheus <https://prometheus.io/>`__ an open-source systems monitoring
@ -139,7 +133,7 @@ Kolla provides images to deploy the following infrastructure components:
direct messaging back end for communication between services.
- `RabbitMQ <https://www.rabbitmq.com/>`__ as a broker messaging back end for
communication between services.
- `Redis Sentinel <https://redis.io/topics/sentinel>`__ provides high availability for redis
- `Valkey Sentinel <https://valkey.io/topics/sentinel>`__ provides high availability for valkey
along with collateral tasks such as monitoring, notification and acts as configuration
provider for clients.
- `Telegraf <https://www.docs.influxdata.com/telegraf/>`__ as a plugin-driven server
@ -185,9 +179,9 @@ Contributors
============
Check out who is `contributing
code <https://stackalytics.com/?module=kolla-group&metric=commits>`__ and
code <https://stackalytics.io/?module=kolla-group&metric=commits>`__ and
`contributing
reviews <https://stackalytics.com/?module=kolla-group&metric=marks>`__.
reviews <https://stackalytics.io/?module=kolla-group&metric=marks>`__.
Notices
=======

View file

@ -1,8 +0,0 @@
libffi-dev [platform:dpkg]
libffi-devel [platform:rpm]
gcc [platform:rpm]
gcc [platform:dpkg]
python3-dev [platform:dpkg]
python3-devel [platform:rpm]
openssl-devel [platform:rpm]
libssl-dev [platform:dpkg]

View file

@ -2,11 +2,16 @@
Building Container Images
=========================
Firstly, ensure ``kolla`` is installed.
Firstly, ensure ``kolla`` and the container engine of your choice is installed.
Currently supported container engines are ``docker`` and ``podman``.
.. code-block:: console
python3 -m pip install kolla
#only one of these is needed:
python3 -m pip install podman
python3 -m pip install docker
Then, the :command:`kolla-build` command is available for building
Docker images.
@ -114,21 +119,6 @@ To push images to a :kolla-ansible-doc:`local registry
Build OpenStack from source
===========================
When building images, there are two methods of the OpenStack install. One is
``binary``. Another is ``source``. The ``binary`` means that OpenStack will be
installed from apt/dnf. And the ``source`` means that OpenStack will be
installed from upstream sources. The default method of the OpenStack install is
``source``. It can be changed to ``binary`` using the ``-t`` option:
.. code-block:: console
kolla-build -t binary
.. note::
Building of binary images is deprecated in Yoga. Please switch to source
ones.
The locations of OpenStack source code are written in ``kolla-build.conf``.
The source's ``type`` supports ``url``, ``git`` and ``local``. The
``location`` of the ``local`` source type can point to either a directory
@ -164,6 +154,19 @@ The ``kolla-build.conf`` file could look like this:
Note that the name of the section should exactly match the image name
you are trying to change source location for.
If using the ``local`` source type, the ``--locals-base`` flag can be used to
define a path prefix, which you can reference in the config.
.. path etc/kolla/kolla-build.conf
.. code-block:: ini
[DEFAULTS]
locals_base = /home/kolla/src
[heat-base]
type = local
location = $locals_base/heat
.. _dockerfile-customisation:
Dockerfile customisation
@ -211,7 +214,7 @@ First, create a file to contain the customisations, for example:
{% extends parent_template %}
# Horizon
{% block horizon_redhat_binary_setup %}
{% block horizon_ubuntu_source_setup %}
RUN useradd --user-group myuser
{% endblock %}
@ -249,10 +252,10 @@ Packages customisation
Packages installed as part of an image build can be overridden, appended to,
and deleted. Taking the Horizon example, the following packages are installed
as part of a binary install type build (among others):
as part of a package install (among others):
* ``openstack-dashboard``
* ``openstack-magnum-ui``
* ``gettext``
* ``locales``
To add a package to this list, say, ``iproute``, first create a file,
for example, ``template-overrides.j2``. In it place the following:
@ -286,25 +289,153 @@ append
remove
Remove a package from the default list.
To remove a package from that list, say ``openstack-magnum-ui``, one would do:
To remove a package from that list, say ``locales``, one would do:
.. code-block:: jinja
{% extends parent_template %}
# Horizon
{% set horizon_packages_remove = ['openstack-magnum-ui'] %}
{% set horizon_packages_remove = ['locales'] %}
An example of this is the Grafana plugins, which are mentioned in the next
section.
Grafana plugins
^^^^^^^^^^^^^^^
Additional Grafana plugins can be installed by adding the plugin name to the
``grafana_plugins_append`` list. Plugins can also be removed by adding the
plugin name to the ``grafana_plugins_remove`` list. Additionally the entire
list can be overridden by setting the ``grafana_plugins_override`` variable.
.. code-block:: ini
grafana_plugins_append:
- grafana-piechart-panel
- vonage-status-panel
Patching customization
----------------------
Kolla provides functionality to apply patches to Docker images during the build
process. This allows users to modify existing files or add new ones as part of
the image creation.
You need to define a ``patches_path`` in the ``[DEFAULT]`` section of
the ``/etc/kolla/kolla-build.conf`` file. This directory will be used to store
patches for the images.
.. path etc/kolla/kolla-build.conf
.. code-block:: ini
[DEFAULT]
patches_path = /path/to/your/patches
Create a directory for each image you want to patch, following a directory
structure similar to the Debian patch quilt format. Refer to
`quilt documentation <https://linux.die.net/man/1/quilt>`_. for more details.
- ``<patches_path>/image_name/`` : The directory for the specific image.
- ``<patches_path>/image_name/some-patch`` : Contains the patch content.
- ``<patches_path>/image_name/another-patch`` : Contains the patch content.
- ``<patches_path>/image_name/series`` : Lists the order in which the patches
will be applied.
For example, if you want to patch the ``nova-api`` image, the structure would
look like this:
.. code-block:: console
/path/to/your/patches/nova-api/some-patch
/path/to/your/patches/nova-api/another-patch
/path/to/your/patches/nova-api/series
The ``series`` file should list the patches in the order they should be
applied:
.. code-block:: console
some-patch
another-patch
When the images are built using ``kolla-build``, the patches defined in the
``patches_path`` will automatically be applied to the corresponding images.
After the patches are applied, Kolla stores information about the applied
patches in ``/etc/kolla/patched``. The patch files themselves are stored
in the ``/patches`` directory within the image. This allows you to track
which patches have been applied to each image for debugging or
verification purposes.
Python packages build options
-----------------------------
The block ``base_pip_conf`` in the ``base`` Dockerfile can be used to provide
the PyPI build customisation options via the standard environment variables
like ``PIP_INDEX_URL``, ``PIP_TRUSTED_HOST``, etc. Also here can be provided
the standard environment variable ``UPPER_CONSTRAINTS_FILE`` used for building
the ``bifrost_deploy`` container when PyPI upper-constraints needs to be
overridden. Also this variable would be used in the ``kolla-toolbox`` if
provided instead of the defaults.
like ``PIP_INDEX_URL``, ``PIP_TRUSTED_HOST``, etc.
To override PYPI upper-constraints of all OpenStack images, you can
define the source location of openstack-base. in ``kolla-build.conf``.
Upstream repository of `openstack-base (requirements) <https://opendev.org/openstack/requirements>`__
has a source of
`upper constraints file <https://opendev.org/openstack/requirements/src/branch/master/upper-constraints.txt>`__.
Make a fork or clone the repository then customise ``upper-constraints.txt``
and define the location of ``openstack-base`` in ``kolla_build.conf``.
.. path /etc/kolla/kolla-build.conf
.. code-block:: ini
# These examples use upstream openstack-base as a demonstration
# To use custom openstack-base, make changes accordingly
# Using git source
[openstack-base]
type = git
location = https://opendev.org/openstack/requirements
reference = master
# Using URL source
[openstack-base]
type = url
location = https://tarballs.opendev.org/openstack/requirements/requirements-master.tar.gz
# Using local source
[openstack-base]
type = local
location = /home/kolla/src/requirements
To remove or change the version of specific Python packages in
``openstack-base`` upper-constraints, you can use the block
``openstack_base_override_upper_constraints`` in your template file,
for example, ``template-overrides.j2``:
.. code-block:: jinja
{% block openstack_base_override_upper_constraints %}
RUN {{ macros.upper_constraints_version_change("sqlparse", "0.4.4", "0.5.0") }}
RUN {{ macros.upper_constraints_remove("reno") }}
{% endblock %}
``kolla-toolbox`` image needs different approach as it does not uses
``openstack-base`` as a base image.
A variable ``UPPER_CONSTRAINTS_FILE`` is set in the
Dockerfile of ``kolla-toolbox``.
To change variable, add the following contents to the
``kolla_toolbox_pip_conf`` block in your template file, for example,
``template-overrides.j2``:
.. code-block:: jinja
{% block kolla_toolbox_pip_conf %}
ENV UPPER_CONSTRAINTS_FILE=https://releases.openstack.org/constraints/upper/master
{% endblock %}
.. note::
``UPPER_CONSTRAINTS_FILE`` must be a valid URL to the file
Plugin functionality
--------------------
@ -338,10 +469,6 @@ repository may be missed on subsequent builds. To solve this, the
time, which will be automatically made available to the build, within an
archive named ``plugins-archive``.
.. note::
The following is available for source build types only.
To use this, add a section to ``kolla-build.conf`` in the following format:
.. path /etc/kolla/kolla-build.conf
@ -402,6 +529,7 @@ Some of these plugins used to be enabled by default but, due to
their release characteristic, have been excluded from the default builds.
Please read the included ``README.rst`` to learn how to apply them.
Additions functionality
-----------------------
@ -417,10 +545,6 @@ difference between ``plugins-archive`` and ``additions-archive`` is that
install available plugins while ``additions-archive`` processing is left solely
to the Kolla user.
.. note::
The following is available for source build types only.
To use this, add a section to ``kolla-build.conf`` in the following format:
.. path /etc/kolla/kolla-build.conf
@ -450,10 +574,6 @@ structure:
|__ additions
|__jenkins
Alternatively, it is also possible to create an ``additions-archive.tar`` file
yourself bypasssing ``kolla-build.conf`` in order to work with binary build
type.
The template becomes now:
.. code-block:: jinja
@ -463,6 +583,98 @@ The template becomes now:
RUN cp /additions/jenkins/jenkins.json /jenkins.json
{% endblock %}
Custom docker templates
-----------------------
In order to unify the process of managing OpenStack-related projects, Kolla
provides a way of building images for external 'non-built-in' projects.
If the template for a 'non-built-in' project meets Kolla template standards,
an operator can provide a root directory with a template via the
``--docker-dir`` CLI option (can be specified multiple times).
All Kolla's jinja2 macros should be available the same as for built-in
projects with some notes:
- The ``configure_user`` macro. As the 'non-built-in' user is unknown to Kolla,
there are no default values for user ID and group ID to use.
To use this macro, an operator should specify "non-default" user details
with ``<custom_user_name>-user`` configuration section and include info
for ``uid`` and ``gid`` at least.
Let's look into how an operator can build an image for an in-house project
with Kolla using `openstack/releases <https://opendev.org/openstack/releases>`_
project.
First, create a ``Dockerfile.j2`` template for the project.
.. path /home/kolla/custom-kolla-docker-templates/releaser/Dockerfile.j2
.. code-block:: jinja
FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
{% block labels %}
LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
{% endblock %}
{% block releaser_header %}{% endblock %}
{% import "macros.j2" as macros with context %}
{{ macros.configure_user(name='releaser') }}
RUN ln -s releaser-source/* /releaser \
&& {{ macros.install_pip(['/releaser-source'] | customizable("pip_packages")) }} \
&& mkdir -p /etc/releaser \
&& chown -R releaser: /etc/releaser \
&& chmod 750 /etc/sudoers.d \
&& touch /usr/local/bin/kolla_releaser_extend_start \
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_releaser_extend_start
{% block footer %}{% endblock %}
Suggested directory structure:
.. code-block:: console
custom-kolla-docker-templates
|__ releaser
|__ Dockerfile.j2
Then, modify Kolla's configuration so the engine can download sources and
configure users.
.. path /etc/kolla/kolla-build.conf
.. code-block:: ini
[releaser]
type = git
location = https://opendev.org/openstack/releases
reference = master
[releaser-user]
uid = 53001
gid = 53001
Last pre-check before building a new image - ensure that the new template
is visible for Kolla:
.. code-block:: console
$ kolla-build --list-images --docker-dir custom-kolla-docker-templates "^releaser$"
1 : base
2 : releaser
3 : openstack-base
And finally, build the ``releaser`` image, passing the ``--docker-dir``
argument:
.. code-block:: console
kolla-build --docker-dir custom-kolla-docker-templates "^releaser$"
Can I use the ``--template-override`` option for custom templates? Yes!
Custom repos
------------
@ -471,23 +683,16 @@ Red Hat
Kolla allows the operator to build containers using custom repos.
The repos are accepted as a list of comma separated values and can be in the
form of ``.repo``, ``.rpm``, or a url. See examples below.
To use current RDO packages (aka Delorean or DLRN), update ``rpm_setup_config``
in ``kolla-build.conf``:
.. path /etc/kolla/kolla-build.conf
.. code-block:: ini
rpm_setup_config = https://trunk.rdoproject.org/centos8/current/delorean.repo,https://trunk.rdoproject.org/centos8/delorean-deps.repo
form of ``.repo``, ``.rpm``, or a url.
If specifying a ``.repo`` file, each ``.repo`` file will need to exist in the
same directory as the base Dockerfile (``kolla/docker/base``):
same directory as the base Dockerfile (``kolla/docker/base``) or you need to
specify a url:
.. path kolla/docker/base
.. code-block:: ini
rpm_setup_config = epel.repo,delorean.repo,delorean-deps.repo
rpm_setup_config = epel.repo,https://remote-server.com/your-repo.repo
Debian / Ubuntu
^^^^^^^^^^^^^^^
@ -535,6 +740,28 @@ variables that will be picked up from the user env:
Also these variables could be overwritten using ``--build-args``, which have
precedence.
Cross-compiling
---------------
It is possible to cross-compile container images in order to, e.g., build
``aarch64`` images on a ``x86_64`` machine.
To build ``ARM`` images on ``x86_64`` platform, pass the ``--base-arch`` and
``--platform`` arguments:
.. code-block:: console
kolla-build --platform linux/arm64 --base-arch aarch64
.. note::
To make this work on x86_64 platform you can use tools like: `qemu-user-static
<https://github.com/multiarch/qemu-user-static>`_ or `binfmt
<https://github.com/tonistiigi/binfmt>`_.
To make this work on Apple Silicon you can use Docker Desktop or Podman
Desktop to build ``x86_64`` or native ``ARM`` images.
Known issues
============

View file

@ -65,6 +65,9 @@ The `kolla_set_configs`_ script understands the following attributes:
Must be passed in the numeric octal form.
* **recurse**: whether to apply the change recursively over the target
directory. Boolean, defaults to ``false``.
* **exclude**: array of names of the directories or files to be excluded when
``recurse`` is set to ``true``. Supports Python regular expressions.
Defaults to empty array.
Here is an example configuration file:
@ -85,7 +88,8 @@ Here is an example configuration file:
{
"path": "/var/log/kolla/trove",
"owner": "trove:trove",
"recurse": true
"recurse": true,
"exclude": ["/var/log/^snapshot.*"]
}
]
}
@ -93,27 +97,17 @@ Here is an example configuration file:
Passing the configuration file to the container
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
The configuration can be either passed via the ``KOLLA_CONFIG`` environment
variable or as a file bind-mounted into the container. When bind-mounting the
configuration file, the ``KOLLA_CONFIG_FILE`` environment variable controls
where the file is located in the container, the default path being
The configuration to the container can be passed through a dedicated path:
``/var/lib/kolla/config_files/config.json``.
Passing the configuration file as environment variable:
.. code-block:: console
docker run -e KOLLA_CONFIG_STRATEGY=COPY_ALWAYS \
-e KOLLA_CONFIG='{ "command": "...", "permissions": [ { "path": "...", } ] }' \
kolla-image
It is advised to ensure this path is mounted read-only for security reasons.
Mounting the configuration file in the container:
.. code-block:: console
docker run -e KOLLA_CONFIG_STRATEGY=COPY_ALWAYS \
-e KOLLA_CONFIG_FILE=/config.json \
-v /path/to/config.json:/config.json kolla-image
-v /path/to/config.json:/var/lib/kolla/config_files/config.json:ro \
kolla-image
.. _kolla_api_environment_variables:
@ -126,10 +120,6 @@ Variables to pass to the containers
The Kolla containers also understand some environment variables to change their
behavior at runtime:
* **KOLLA_CONFIG**: load kolla config from the environment, takes precedence
over ``KOLLA_CONFIG_FILE``.
* **KOLLA_CONFIG_FILE**: path to kolla json config file, defaults to
``/var/lib/kolla/config_files/config.json``.
* **KOLLA_CONFIG_STRATEGY** (required): Defines how the :ref:`kolla_start
script <kolla_api_external_config>` copies the configuration file. Must be
one of:
@ -149,6 +139,10 @@ behavior at runtime:
code defined in the images ``extend_start.sh`` scripts. Not set by default.
* **KOLLA_UPGRADE**: if set, and supported by the image, runs the upgrade code
defined in the images ``extend_start.sh`` scripts. Not set by default.
* **KOLLA_UPGRADE_CHECK**: if set, and supported by the image, runs the
``<service>-status upgrade check`` command, defined in the images
``extend_start.sh`` scripts. Currently, this is hard-coded to just
``nova-status upgrade check``. Not set by default.
* **KOLLA_OSM**: if set, and supported by the image, runs the online database
migration code defined in the images ``extend_start.sh`` scripts. Not set by
default.
@ -168,5 +162,3 @@ scripts:
* **KOLLA_BASE_DISTRO**: ``base_distro`` used to build the image (e.g. centos,
ubuntu)
* **KOLLA_INSTALL_TYPE**: ``install_type`` used to build the image (binary,
source)

View file

@ -1,5 +1,5 @@
Distro,Ceph,
,Source, Release
CentOS,CentOS Storage SIG,Pacific
Ubuntu,Ubuntu Cloud Archive,Pacific
Debian,Debian,Nautilus
Rocky Linux,CentOS Storage SIG,Squid
Ubuntu,Ubuntu,Squid
Debian,Debian,Pacific

1 Distro Ceph
2 Source Release
3 CentOS Rocky Linux CentOS Storage SIG Pacific Squid
4 Ubuntu Ubuntu Cloud Archive Ubuntu Pacific Squid
5 Debian Debian Nautilus Pacific

View file

@ -3,7 +3,7 @@ Adding a new image
==================
Kolla follows `Best practices for writing Dockerfiles
<https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/>`__
<https://docs.docker.com/develop/develop-images/dockerfile_best-practices/>`__
where at all possible.
We use ``jinja2`` templating syntax to help manage the volume and complexity
@ -40,10 +40,6 @@ OpenStack project base image is as follows:
{% import "macros.j2" as macros with context %}
<< binary specific steps >>
<< source specific steps >>
<< common steps >>
{% block << service >>_footer %}{% endblock %}
@ -60,34 +56,31 @@ provided, copy its Dockerfile structure and amend it to new needs.
Distribution support
====================
By default, every new image should support all supported distributions (CentOS,
Debian, Ubuntu) and both x86-64 and aarch64 architectures. Sometimes it is not
By default, every new image should support all supported distributions (Debian,
Ubuntu, Rocky) and both x86-64 and aarch64 architectures. Sometimes it is not
doable so we have list of `unbuildable images` for that.
Unbuildable images
~~~~~~~~~~~~~~~~~~
In ``kolla/image/build.py`` source file we keep a list of images which cannot
be built for some distribution/architecture/build-type combinations.
In ``kolla/image/unbuildable.py`` source file we keep a list of images which
cannot be built for some distribution/architecture/build-type combinations.
.. code-block:: python
# Note: These are just examples, find the current list at
# https://opendev.org/openstack/kolla/src/branch/master/kolla/image/unbuildable.py
UNBUILDABLE_IMAGES = {
'aarch64': {
"bifrost-base", # someone need to get upstream working first
"bifrost-base", # someone need to get upstream working first
},
'binary': {
"bifrost-base",
"blazar-base",
},
'ubuntu': {
"qdrouterd", # There is no qdrouterd package for ubuntu bionic
'centos': {
"hacluster-pcs", # Missing crmsh package
},
'ubuntu+aarch64': {
"kibana", # no binary package
"kibana", # no binary package
},
}

View file

@ -18,6 +18,8 @@ The source repository for this project can be found at:
https://opendev.org/openstack/kolla
.. _communication:
Communication
~~~~~~~~~~~~~
@ -25,10 +27,10 @@ IRC Channel
``#openstack-kolla`` (`channel logs`_) on `OFTC <http://oftc.net>`_
Weekly Meetings
On Wednesdays at 15:00 UTC in the IRC channel (`meetings logs`_)
In the IRC channel (`meeting information`_)
Mailing list (prefix subjects with ``[kolla]``)
http://lists.openstack.org/pipermail/openstack-discuss/
https://lists.openstack.org/pipermail/openstack-discuss/
Meeting Agenda
:ref:`Meeting agenda <meeting-agenda>`
@ -38,89 +40,79 @@ Whiteboard (etherpad)
planning and feature development status.
https://etherpad.openstack.org/p/KollaWhiteBoard
.. _channel logs: http://eavesdrop.openstack.org/irclogs/%23openstack-kolla/
.. _meetings logs: http://eavesdrop.openstack.org/meetings/kolla/
.. _channel logs: https://meetings.opendev.org/irclogs/%23openstack-kolla/
.. _meeting information: https://meetings.opendev.org/#Kolla_Team_Meeting
Contacting the Core Team
~~~~~~~~~~~~~~~~~~~~~~~~
The list in alphabetical order (on first name):
In general it is suggested to use the above mentioned public communication
channels, but if you find that you need to contact someone from the Core team
directly, you can find the lists in Gerrit:
+-----------------------+---------------+------------------------------------+
| Name | IRC nick | Email address |
+=======================+===============+====================================+
| `Christian Berendt`_ | berendt | berendt@betacloud-solutions.de |
+-----------------------+---------------+------------------------------------+
| `Dincer Celik`_ | osmanlicilegi | hello@dincercelik.com |
+-----------------------+---------------+------------------------------------+
| `Eduardo Gonzalez`_ | egonzalez | dabarren@gmail.com |
+-----------------------+---------------+------------------------------------+
| `Jeffrey Zhang`_ | Jeffrey4l | jeffrey.zhang@99cloud.net |
+-----------------------+---------------+------------------------------------+
| `Marcin Juszkiewicz`_ | hrw | marcin.juszkiewicz@linaro.org |
+-----------------------+---------------+------------------------------------+
| `Mark Goddard`_ | mgoddard | mark@stackhpc.com |
+-----------------------+---------------+------------------------------------+
| `Michał Nasiadka`_ | mnasiadka | mnasiadka@gmail.com |
+-----------------------+---------------+------------------------------------+
| `Radosław Piliszek`_ | yoctozepto | radoslaw.piliszek@gmail.com |
+-----------------------+---------------+------------------------------------+
| `Surya Prakash`_ | spsurya | singh.surya64mnnit@gmail.com |
+-----------------------+---------------+------------------------------------+
| `Cao Yuan`_ | caoyuan | cao.yuan@99cloud.net |
+-----------------------+---------------+------------------------------------+
| `wu.chunyang`_ | wuchunyang | wuchunyang@yovole.com |
+-----------------------+---------------+------------------------------------+
.. _Christian Berendt: https://launchpad.net/~berendt
.. _Dincer Celik: https://launchpad.net/~osmanlicilegi
.. _Eduardo Gonzalez: https://launchpad.net/~egonzalez90
.. _Jeffrey Zhang: https://launchpad.net/~jeffrey4l
.. _Marcin Juszkiewicz: https://launchpad.net/~hrw
.. _Mark Goddard: https://launchpad.net/~mgoddard
.. _Michał Nasiadka: https://launchpad.net/~mnasiadka
.. _Radosław Piliszek: https://launchpad.net/~yoctozepto
.. _Surya Prakash: https://launchpad.net/~confisurya
.. _Cao Yuan: https://launchpad.net/~caoi-yuan
.. _wu.chunyang: https://launchpad.net/~wuchunyang
The current effective list is also available from Gerrit:
https://review.opendev.org/#/admin/groups/460,members
- `Kolla core team <https://review.opendev.org/admin/groups/kolla-core,members>`__
- `Kayobe core team <https://review.opendev.org/admin/groups/kayobe-core,members>`__
New Feature Planning
~~~~~~~~~~~~~~~~~~~~
New features are discussed via IRC or mailing list (with [kolla] prefix).
Kolla project keeps blueprints in `Launchpad <https://blueprints.launchpad.net/kolla>`__.
Specs are welcome but not strictly required.
New features are discussed on PTG, via IRC or mailing list (with [kolla]
prefix).
Task Tracking
~~~~~~~~~~~~~
Kolla project tracks tasks in `Launchpad <https://bugs.launchpad.net/kolla>`__.
Note this is the same place as for bugs.
Kolla family projects track tasks and bugs in Launchpad:
- `Kolla <https://bugs.launchpad.net/kolla>`__
- `Kolla Ansible <https://bugs.launchpad.net/kolla-ansible>`__
- `Ansible Collection Kolla <https://bugs.launchpad.net/ansible-collection-kolla>`__
- `Kayobe <https://bugs.launchpad.net/kayobe>`__
If you're looking for some smaller, easier work item to pick up and get started
on, search for the 'low-hanging-fruit' tag.
on, search for the 'low-hanging-fruit' tag in the relevant project.
A more lightweight task tracking is done via etherpad - `Whiteboard <https://etherpad.openstack.org/p/KollaWhiteBoard>`__.
Reporting a Bug
~~~~~~~~~~~~~~~
You found an issue and want to make sure we are aware of it? You can do so
on `Launchpad <https://bugs.launchpad.net/kolla>`__.
Note this is the same place as for tasks.
You found an issue and want to make sure we are aware of it?
Please report it in the appropriate Launchpad project:
- `Kolla <https://bugs.launchpad.net/kolla>`__
- `Kolla Ansible <https://bugs.launchpad.net/kolla-ansible>`__
- `Ansible Collection Kolla <https://bugs.launchpad.net/ansible-collection-kolla>`__
- `Kayobe <https://bugs.launchpad.net/kayobe>`__
Note these are also used for task tracking.
Getting Your Patch Merged
~~~~~~~~~~~~~~~~~~~~~~~~~
Most changes proposed to Kolla require two +2 votes from core reviewers before
+W. A release note is required on most changes as well. Release notes policy
being approved and sent to the gate queue for merging. A release note is
required on most changes as well. Release notes policy
is described in :ref:`its own section <release-notes>`.
Significant changes should have documentation and testing provided with them.
To see an overview of in-progress patches, sorted into useful sections, you can
view the:
- `Kolla Review Dashboard <https://review.opendev.org/dashboard/?title=Kolla+Review+Dashboard&foreach=project%3Aopenstack%2Fkolla+status%3Aopen+NOT+label%3AWorkflow%3C%3D%2D1+NOT+label%3ACode%2DReview%3C%3D%2D2&High+priority+changes=label%3AReview%2DPriority%3D2&Priority+changes=label%3AReview%2DPriority%3D1&Feature+freeze=label%3AReview%2DPriority%3D%2D1&Stable+branch+backports=branch%3A%5Estable%2F.%2A+status%3Aopen+NOT+label%3AReview%2DPriority%3D%2D1&Small+things+%28%3C25+LOC%2C+limit+25%29+on+master+branch=delta%3A%3C%3D25+limit%3A25+NOT+label%3ACode%2DReview%2D1+label%3AVerified%3E%3D1%2Czuul+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster&Needs+Final+Approval+%28to+land+on+master+branch%29=NOT+label%3AWorkflow%3E%3D1+NOT+label%3AWorkflow%3C%3D%2D1+NOT+owner%3Aself+label%3ACode%2DReview%3E%3D2+label%3AVerified%3E%3D1%2Czuul+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster&Needs+revisit+%28You+were+a+reviewer+but+haven%27t+voted+in+the+current+revision%29=reviewer%3Aself+limit%3A50&Newer+%28%3C1wk%29+Open+Patches+%28limit+25%29+on+master+branch=%2Dage%3A1week+limit%3A25+NOT+label%3AWorkflow%3E%3D1+label%3AVerified%3E%3D1%2Czuul+NOT+label%3ACode%2DReview%3E%3D2+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster&Older+%28%3E1wk%29+Open+Patches+Passing+Zuul+Tests+%28limit+50%29+on+master+branch=age%3A1week+limit%3A50+NOT+label%3AWorkflow%3E%3D1+NOT+label%3ACode%2DReview%3C%3D%2D1+NOT+label%3ACode%2DReview%3E%3D1+label%3AVerified%3E%3D1%2Czuul+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster>`__
- `Kolla Ansible Review Dashboard <https://review.opendev.org/dashboard/?title=Kolla%2DAnsible+Review+Dashboard&foreach=project%3Aopenstack%2Fkolla%2Dansible+status%3Aopen+NOT+label%3AWorkflow%3C%3D%2D1+NOT+label%3ACode%2DReview%3C%3D%2D2&High+priority+changes=label%3AReview%2DPriority%3D2&Priority+changes=label%3AReview%2DPriority%3D1&Feature+freeze=label%3AReview%2DPriority%3D%2D1&Stable+branch+backports=branch%3A%5Estable%2F.%2A+status%3Aopen+NOT+label%3AReview%2DPriority%3D%2D1&Small+things+%28%3C25+LOC%2C+limit+25%29+on+master+branch=delta%3A%3C%3D25+limit%3A25+NOT+label%3ACode%2DReview%2D1+label%3AVerified%3E%3D1%2Czuul+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster&Needs+Final+Approval+%28to+land+on+master+branch%29=NOT+label%3AWorkflow%3E%3D1+NOT+label%3AWorkflow%3C%3D%2D1+NOT+owner%3Aself+label%3ACode%2DReview%3E%3D2+label%3AVerified%3E%3D1%2Czuul+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster&Needs+revisit+%28You+were+a+reviewer+but+haven%27t+voted+in+the+current+revision%29=reviewer%3Aself+limit%3A50&Newer+%28%3C1wk%29+Open+Patches+%28limit+25%29+on+master+branch=%2Dage%3A1week+limit%3A25+NOT+label%3AWorkflow%3E%3D1+label%3AVerified%3E%3D1%2Czuul+NOT+label%3ACode%2DReview%3E%3D2+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster&Older+%28%3E1wk%29+Open+Patches+Passing+Zuul+Tests+%28limit+50%29+on+master+branch=age%3A1week+limit%3A50+NOT+label%3AWorkflow%3E%3D1+NOT+label%3ACode%2DReview%3C%3D%2D1+NOT+label%3ACode%2DReview%3E%3D1+label%3AVerified%3E%3D1%2Czuul+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster>`__
- `Ansible Collection Kolla Review Dashboard <https://review.opendev.org/dashboard/?title=ansible%2Dcollection%2Dkolla+Review+Dashboard&foreach=project%3Aopenstack%2Fansible%2Dcollection%2Dkolla+status%3Aopen+NOT+label%3AWorkflow%3C%3D%2D1+NOT+label%3ACode%2DReview%3C%3D%2D2&High+priority+changes=label%3AReview%2DPriority%3D2&Priority+changes=label%3AReview%2DPriority%3D1&Feature+freeze=label%3AReview%2DPriority%3D%2D1&Stable+branch+backports=branch%3A%5Estable%2F.%2A+status%3Aopen+NOT+label%3AReview%2DPriority%3D%2D1&Small+things+%28%3C25+LOC%2C+limit+25%29+on+master+branch=delta%3A%3C%3D25+limit%3A25+NOT+label%3ACode%2DReview%2D1+label%3AVerified%3E%3D1%2Czuul+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster&Needs+Final+Approval+%28to+land+on+master+branch%29=NOT+label%3AWorkflow%3E%3D1+NOT+label%3AWorkflow%3C%3D%2D1+NOT+owner%3Aself+label%3ACode%2DReview%3E%3D2+label%3AVerified%3E%3D1%2Czuul+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster&Needs+revisit+%28You+were+a+reviewer+but+haven%27t+voted+in+the+current+revision%29=reviewer%3Aself+limit%3A50&Newer+%28%3C1wk%29+Open+Patches+%28limit+25%29+on+master+branch=%2Dage%3A1week+limit%3A25+NOT+label%3AWorkflow%3E%3D1+label%3AVerified%3E%3D1%2Czuul+NOT+label%3ACode%2DReview%3E%3D2+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster&Older+%28%3E1wk%29+Open+Patches+Passing+Zuul+Tests+%28limit+50%29+on+master+branch=age%3A1week+limit%3A50+NOT+label%3AWorkflow%3E%3D1+NOT+label%3ACode%2DReview%3C%3D%2D1+NOT+label%3ACode%2DReview%3E%3D1+label%3AVerified%3E%3D1%2Czuul+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster>`__
- `Kayobe Review Dashboard <https://review.opendev.org/dashboard/?title=Kayobe+Review+Dashboard&foreach=%28project%3Aopenstack%2Fkayobe+OR+project%3Aopenstack%2Fkayobe%2Dconfig+OR+project%3Aopenstack%2Fkayobe%2Dconfig%2Ddev%29+status%3Aopen+NOT+label%3ACode%2DReview%3C%3D%2D2+NOT+label%3AWorkflow%3C%3D%2D1&High+priority+changes=label%3AReview%2DPriority%3D2&Priority+changes=label%3AReview%2DPriority%3D1&Feature+freeze=label%3AReview%2DPriority%3D%2D1&Stable+branch+backports=branch%3A%5Estable%2F.%2A+status%3Aopen+NOT+label%3AReview%2DPriority%3D%2D1&Small+things+%28%3C25+LOC%2C+limit+25%29+on+master+branch=delta%3A%3C%3D25+limit%3A25+NOT+label%3ACode%2DReview%2D1+label%3AVerified%3E%3D1%2Czuul+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster&Needs+Final+Approval+%28to+land+on+master+branch%29=NOT+label%3AWorkflow%3E%3D1+NOT+label%3AWorkflow%3C%3D%2D1+NOT+owner%3Aself+label%3ACode%2DReview%3E%3D2+label%3AVerified%3E%3D1%2Czuul+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster&Needs+revisit+%28You+were+a+reviewer+but+haven%27t+voted+in+the+current+revision%29=reviewer%3Aself+limit%3A50&Newer+%28%3C1wk%29+Open+Patches+%28limit+25%29+on+master+branch=%2Dage%3A1week+limit%3A25+NOT+label%3AWorkflow%3E%3D1+label%3AVerified%3E%3D1%2Czuul+NOT+label%3ACode%2DReview%3E%3D2+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster&Older+%28%3E1wk%29+Open+Patches+Passing+Zuul+Tests+%28limit+50%29+on+master+branch=age%3A1week+limit%3A50+NOT+label%3AWorkflow%3E%3D1+NOT+label%3ACode%2DReview%3C%3D%2D1+NOT+label%3ACode%2DReview%3E%3D1+label%3AVerified%3E%3D1%2Czuul+NOT+label%3AReview%2DPriority%3D%2D1+branch%3Amaster>`__
.. note::
If you feel that your change is getting overlooked, reach out via
:ref:`preferred communication methods <communication>` to let us know.
Project Team Lead Duties
~~~~~~~~~~~~~~~~~~~~~~~~

View file

@ -13,6 +13,7 @@ We welcome everyone to join our project!
:maxdepth: 2
contributing
kolla-design-philosophy
running-in-development
adding-a-new-image
genconfig
@ -24,3 +25,4 @@ We welcome everyone to join our project!
release-management
meeting
ci
versions

View file

@ -0,0 +1,47 @@
=======================
Kolla design philosophy
=======================
This page aims to explain the design choices that have been made
in the Kolla projects (the main Kolla project for building the images
as well as all subprojects aimed at deploying them).
It is written down mostly for potential contributors but may be a good
guideline for anyone using and integrating with Kolla projects as it gives
an overview of what the preferred approach is. As noted, this is of great
interest to contributors because it might explain why certain changes will
get rejected and why some others will need a remake in order to be
accepted.
This page is likely an always-in-progress, living document.
Please reach out to the team via the mailing list or the IRC channel to
discuss the rules noted here, see our docs on
:ref:`communication <communication>` for details.
Do not own the deployed services' config defaults (unless necessary)
--------------------------------------------------------------------
In Kolla, we try not to own service config and its defaults.
We believe the upstream services know best what works for them by default.
This rule is overridden when a certain config option needs to be orchestrated
among multiple services or otherwise needs to agree with certain other
assumptions made in the environment. The notable exceptions here are the
basic addressing of services and Keystone credentials.
Prefer documented configuration via config overrides
----------------------------------------------------
... as opposed to new in-Ansible variables.
This plays nicely with the config overrides capabilities of Kolla Ansible
which let users easily customise the services' config to their hearts'
contents regardless of what Kolla Ansible offers via Ansible variables.
The reasoning behind this rule is that it lowers the maintenance burden
yet it does not handicap the users - they can control every last detail
of their config.
One of the (not necessarily planned) side-effects of this is that users'
config overrides are not locked-in for Kolla Ansible and can relatively
easily be reused in other configuration systems.

View file

@ -4,9 +4,10 @@
Weekly Kolla team meeting
=========================
Meeting time: Wednesdays at 15:00 UTC in #openstack-kolla (`OFTC`_).
The Kolla project meets every Wednesday in #openstack-kolla (`OFTC`_).
More info on how to join: https://meetings.opendev.org/#Kolla_Team_Meeting
More info on how to join, including the meeting time:
https://meetings.opendev.org/#Kolla_Team_Meeting
We track CI, release, and feature status in the `whiteboard`_.
@ -23,6 +24,7 @@ The regular agenda for the weekly meeting is as follows::
* Review action items from the last meeting
* CI status
* Release tasks
* Regular stable releases (first meeting in a month)
* Current cycle planning
* Additional agenda (from whiteboard)
* Open discussion

View file

@ -99,7 +99,7 @@ Day to Day
* Be available in IRC to help new and existing contributors
* Keep track of the progress of cycle priorites
* Keep track of the progress of cycle priorities
* Monitor the core team membership, mentor potential cores

View file

@ -87,6 +87,8 @@ This needs to be done for each of the following projects:
* https://launchpad.net/ansible-collection-kolla
* https://launchpad.net/kayobe
At the beginning of a cycle, ensure a named series exists for the cycle in each
project. If not, create one via the project landing page (e.g.
https://launchpad.net/kolla) - in the "Series and milestones" section click in
@ -94,8 +96,6 @@ https://launchpad.net/kolla) - in the "Series and milestones" section click in
milestones, including the final release. Series can be marked as "Active
Development" or "Current Stable Release" as necessary.
Kayobe uses Storyboard, which does not track series or milestones.
Milestones
----------
@ -146,18 +146,13 @@ R-17: Switch source images to current release
* example: https://review.opendev.org/c/openstack/kayobe/+/763375
R-8: Switch binary images to current release
--------------------------------------------
R-8: Switch images to current release
-------------------------------------
.. note:: Debian does not provide repositories for the in-development release
until much later in the cycle.
* [kolla] Switch CentOS images to use the current in-development release
master RDO Delorean repository
* example: https://review.opendev.org/c/openstack/kolla/+/804269
* [kolla] Switch Ubuntu binary images to use the current in-development release
* [kolla] Switch Ubuntu images to use the current in-development release
Ubuntu Cloud Archive (UCA) repository
* example: https://review.opendev.org/c/openstack/kolla/+/782308
@ -172,6 +167,18 @@ R-5: Cycle highlights deadline
* example: https://review.opendev.org/c/openstack/releases/+/779482
* [all] Check for new versions of infrastructure components
* ansible (incl. kolla-toolbox)
* ceph client libraries
* fluentd (td-agent)
* grafana
* mariadb
* opensearch
* openvswitch/OVN
* prometheus (incl. exporters)
* rabbitmq/erlang
R-2: Feature freeze
-------------------
@ -225,11 +232,6 @@ Prior to creating an RC1 release candidate:
* example: TODO
* [kolla] Switch CentOS images to use the current in-development release
stable RDO Delorean repository
* example: https://review.opendev.org/c/openstack/kolla/+/787339
R-0: Kolla & Kolla Ansible RC1 & stable branch creation
-------------------------------------------------------
@ -338,7 +340,7 @@ Prior to creating an RC1 release candidate:
.. code-block:: console
cp -aR kayobe/etc/kayobe/* kayobe-config/etc/kayobe
rsync -a --delete kayobe/etc/kayobe/ kayobe-config/etc/kayobe
Commit the changes and submit for review.
@ -395,14 +397,7 @@ Several tasks are required to finalise the stable branch for release.
* example: https://review.opendev.org/c/openstack/kolla-ansible/+/788292
* [kolla] Switch CentOS images to use the CentOS Cloud SIG repository for the
new release
.. note:: This needs to be done on the stable branch.
* example: https://review.opendev.org/c/openstack/kolla/+/788490
* [kolla] Switch Debian binary images to use the Debian OpenStack repository
* [kolla] Switch Debian images to use the Debian OpenStack repository
for the new release
.. note:: This needs to be done on the master branch and stable branch.
@ -422,6 +417,10 @@ bugs against it.
* example: https://review.opendev.org/c/openstack/releases/+/769328
* [all] Update openstack-manuals project-data for kolla + kolla-ansible
* example: https://review.opendev.org/c/openstack/openstack-manuals/+/934349
After final release, projects enter the :ref:`stable-branch-lifecycle` with a
status of Maintained.
@ -441,19 +440,26 @@ Maintained
----------
Releases should be made periodically for each maintained stable branch, no less
than once every 45 days.
than once every 45 days. We try to make one release per month by having
a recurring topic for that in the first Kolla meeting each month.
* Create stable releases by submitting patches to the releases repository
* follow SemVer guidelines
* follow SemVer guidelines, for simplicity consider always making minor
version bumps
* example (kolla): https://review.opendev.org/650411
* you can use the tooling from the requirements team to prepare the patches::
* example (kolla-ansible): https://review.opendev.org/650412
git checkout -b kolla-stable-monthly
for project in ansible-collection-kolla kayobe kolla kolla-ansible; do
for rel in zed antelope bobcat; do
tox -e venv -- new-release $rel $project feature
done
done
git commit -am "Tag monthly kolla stable releases"
git review -f
* Mark milestones on Launchpad as released
* Create new milestones on Launchpad for the next stable releases
* example release patch: https://review.opendev.org/c/openstack/releases/+/860521
Extended Maintenance (EM)
-------------------------

View file

@ -22,9 +22,12 @@ Kolla uses the following release notes sections:
- ``prelude`` --- filled in by the PTL before each release or RC.
Other release note types may be applied per common sense.
Each change should include a release note unless being a ``TrivialFix``
change or affecting only docs or CI. Such changes should `not` include
a release note to avoid confusion.
When a release note is required:
- ``feature`` - best included with docs change (if separate from the code)
- ``user impacting`` - to improve visibility of the change for users
Remember release notes are mostly for end users which, in case of Kolla,
are OpenStack administrators/operators.
In case of doubt, the core team will let you know what is required.

View file

@ -7,23 +7,15 @@ Running Kolla Build in development
The recommended way to run in development
-----------------------------------------
The preferred way to run kolla-build for development is using ``tox``.
Run the following from inside the repository:
.. code-block:: console
tox -e venv -- kolla-build ...
The alternative way to run in development
-----------------------------------------
Sometimes, developers prefer to manage their venvs themselves. This is also
possible. Remember to install in editable mode (``-e``). Run the following from
inside the repository:
To clone the repository and install the package
in development mode, run the following commands:
.. code-block:: console
git clone https://opendev.org/openstack/kolla.git
cd kolla
python3 -m venv ~/path/to/venv
source ~/path/to/venv/bin/activate
python3 -m pip install -e .
python3 -m pip install --editable .
kolla-build ...

View file

@ -0,0 +1,53 @@
===========================
Versions of used components
===========================
Kolla project images cover several distributions on multiple architectures. Not
all packages come from distribution repositories. Table below tries to provide
information about those which come from 3rdparty sources.
For each component used we list version used at branch release and provide
information about package sources.
.. note::
When table mentions 'CentOS' it means both CentOS Stream 10 and Rocky Linux 10.
============== ================ =============================================
Name Version Package source information
============== ================ =============================================
Grafana 9.x `Grafana install guide`_
InfluxDB 1.8.x `InfluxDB upstream repo`_
Kibana 7.x `Kibana install guide`_
Logstash 7.x `Logstash install guide`_
MariaDB 10.11 (LTS) `MariaDB Community downloads`_
Galera 26.4 (LTS) `MariaDB Community downloads`_
OpenSearch 3.x `OpenSearch install guide`_
ProxySQL 2.7.x `ProxySQL repository`_
Rabbitmq 4.1.x - CentOS/Rocky:
`Team RabbitMQ 'Cloudsmith' repo (RPM)`_
- Debian/Ubuntu:
`Team RabbitMQ 'Cloudsmith' repo (Deb)`_
Erlang 27.X - CentOS/Rocky aarch64:
`openstack-kolla COPR`_
- CentOS/Rocky x86-64:
`Team RabbitMQ 'Cloudsmith' repo (RPM)`_
- Debian/Ubuntu:
`Team RabbitMQ 'Modern Erlang' PPA`_
Fluentd 6.x (LTS) `Fluentd install guide`_
Telegraf 1.24.x `InfluxDB upstream repo`_
============== ================ =============================================
.. _`InfluxDB upstream repo`: https://repos.influxdata.com/
.. _`OpenSearch install guide`: https://opensearch.org/downloads.html
.. _`Kibana install guide`: https://www.elastic.co/guide/en/kibana/7.10/install.html
.. _`Logstash install guide`: https://www.elastic.co/guide/en/logstash/7.9/installing-logstash.html
.. _`Fluentd install guide`: https://www.fluentd.org/download
.. _`ProxySQL repository`: https://repo.proxysql.com/ProxySQL/proxysql-3.0.x/
.. _`Team RabbitMQ 'Cloudsmith' repo (Deb)`: https://www.rabbitmq.com/install-debian.html#apt-cloudsmith
.. _`Team RabbitMQ 'Modern Erlang' PPA`: https://launchpad.net/~rabbitmq/+archive/ubuntu/rabbitmq-erlang
.. _`Team RabbitMQ 'Cloudsmith' repo (RPM)`: https://www.rabbitmq.com/docs/install-rpm#cloudsmith
.. _`openstack-kolla COPR`: https://copr.fedorainfracloud.org/coprs/g/openstack-kolla/rabbitmq-erlang-27/
.. _`Grafana install guide`: https://grafana.com/grafana/download?platform=linux&edition=oss
.. _`MariaDB Community downloads`: https://mariadb.com/downloads/community/

View file

@ -1,71 +1,56 @@
Image,CentOS,,Ubuntu,,Debian
,Binary,Source,Binary,Source,Binary,Source
aodh,C,C,C,C,N,C
barbican,C,C,C,C,N,C
bifrost,N,N,N,N,N,N
blazar,N,C,N,C,N,C
ceilometer,C,C,C,C,N,C
cinder,C,C,C,C,N,C
cloudkitty,C,C,N,C,N,C
collectd,C,C,C,C,N,C
cron,C,C,C,C,N,C
cyborg,N,C,N,C,N,C
designate,C,C,C,C,N,C
dnsmasq,C,C,C,C,N,C
elasticsearch,N,N,C,C,N,C
etcd,C,C,C,C,N,C
fluentd,C,C,C,C,N,C
freezer,N,C,N,C,N,C
glance,C,C,C,C,N,C
gnocchi,C,C,C,C,N,C
grafana,C,C,C,C,N,C
hacluster,N,N,C,C,N,C
haproxy,C,C,C,C,N,C
heat,C,C,C,C,N,C
horizon,C,C,C,C,N,C
influxdb,N,N,C,C,N,C
ironic,C,C,C,C,N,C
iscsid,C,C,C,C,N,C
kafka,C,C,C,C,N,C
keepalived,C,C,C,C,N,C
keystone,C,C,C,C,N,C
kibana,N,N,N,N,N,C
kolla-toolbox,C,C,C,C,N,C
kuryr,N,C,N,C,N,C
logstash,C,C,C,C,N,C
magnum,C,C,C,C,N,C
manila,C,C,C,C,N,C
mariadb,C,C,C,C,N,C
masakari,N,C,C,C,N,C
memcached,C,C,C,C,N,C
mistral,C,C,C,C,N,C
monasca,N,N,N,N,N,C
multipathd,C,C,C,C,N,C
murano,C,C,C,C,N,C
neutron,C,C,C,C,N,C
neutron-mlnx-agent,C,C,N,C,N,C
nova,C,C,C,C,N,C
nova-spicehtml5proxy,N,N,C,C,N,C
octavia,C,C,N,C,N,C
openvswitch,C,C,C,C,N,C
ovn,C,C,C,C,C,C
ovsdpdk,N,N,C,C,N,C
placement,C,C,N,C,N,C
prometheus,C,C,C,C,N,C
qdrouterd,C,C,C,C,N,N
rabbitmq,C,C,C,C,N,C
redis,C,C,C,C,N,C
sahara,C,C,C,C,N,C
senlin,C,C,C,C,N,C
skydive,N,N,N,N,N,N
solum,N,C,N,C,N,C
storm,C,C,C,C,N,C
swift,C,C,C,C,N,C
tacker,C,C,N,C,N,C
telegraf,N,N,N,N,N,N
tgtd,C,C,C,C,N,C
trove,C,C,N,C,N,C
vitrage,C,C,N,C,N,C
watcher,C,C,C,C,N,C
zookeeper,C,C,C,C,N,C
zun,N,C,N,C,N,C
Image,Rocky Linux,Ubuntu,Debian
aodh,U,U,U
barbican,U,U,U
bifrost,N,N,N
blazar,U,U,U
ceilometer,U,U,U
cinder,U,U,U
cloudkitty,U,U,U
collectd,U,U,U
cron,U,U,U
cyborg,U,U,U
designate,U,U,U
dnsmasq,U,U,U
etcd,U,U,U
fluentd,U,U,U
glance,U,U,U
gnocchi,U,U,U
grafana,U,U,U
hacluster,N,U,U
haproxy,U,U,U
heat,U,U,U
horizon,U,U,U
influxdb,N,U,U
ironic,U,U,U
iscsid,U,U,U
keepalived,U,U,U
keystone,U,U,U
kolla-toolbox,U,U,U
kuryr,U,U,U
magnum,U,U,U
manila,U,U,U
mariadb,U,U,U
masakari,U,U,U
memcached,U,U,U
mistral,U,U,U
multipathd,U,U,U
neutron,U,U,U
neutron-mlnx-agent,U,U,U
nova,U,U,U
nova-spicehtml5proxy,N,U,U
octavia,U,U,U
openvswitch,U,U,U
opensearch,U,U,U
ovn,U,U,U
ovsdpdk,N,U,U
placement,U,U,U
prometheus,U,U,U
rabbitmq,U,U,U
skyline,U,U,U
tacker,U,U,U
telegraf,N,N,N
tgtd,U,U,U
trove,U,U,U
valkey,U,U,U
watcher,U,U,U
zun,U,U,U

1 Image,CentOS,,Ubuntu,,Debian Image Rocky Linux Ubuntu Debian
2 ,Binary,Source,Binary,Source,Binary,Source aodh U U U
3 aodh,C,C,C,C,N,C barbican U U U
4 barbican,C,C,C,C,N,C bifrost N N N
5 bifrost,N,N,N,N,N,N blazar U U U
6 blazar,N,C,N,C,N,C ceilometer U U U
7 ceilometer,C,C,C,C,N,C cinder U U U
8 cinder,C,C,C,C,N,C cloudkitty U U U
9 cloudkitty,C,C,N,C,N,C collectd U U U
10 collectd,C,C,C,C,N,C cron U U U
11 cron,C,C,C,C,N,C cyborg U U U
12 cyborg,N,C,N,C,N,C designate U U U
13 designate,C,C,C,C,N,C dnsmasq U U U
14 dnsmasq,C,C,C,C,N,C etcd U U U
15 elasticsearch,N,N,C,C,N,C fluentd U U U
16 etcd,C,C,C,C,N,C glance U U U
17 fluentd,C,C,C,C,N,C gnocchi U U U
18 freezer,N,C,N,C,N,C grafana U U U
19 glance,C,C,C,C,N,C hacluster N U U
20 gnocchi,C,C,C,C,N,C haproxy U U U
21 grafana,C,C,C,C,N,C heat U U U
22 hacluster,N,N,C,C,N,C horizon U U U
23 haproxy,C,C,C,C,N,C influxdb N U U
24 heat,C,C,C,C,N,C ironic U U U
25 horizon,C,C,C,C,N,C iscsid U U U
26 influxdb,N,N,C,C,N,C keepalived U U U
27 ironic,C,C,C,C,N,C keystone U U U
28 iscsid,C,C,C,C,N,C kolla-toolbox U U U
29 kafka,C,C,C,C,N,C kuryr U U U
30 keepalived,C,C,C,C,N,C magnum U U U
31 keystone,C,C,C,C,N,C manila U U U
32 kibana,N,N,N,N,N,C mariadb U U U
33 kolla-toolbox,C,C,C,C,N,C masakari U U U
34 kuryr,N,C,N,C,N,C memcached U U U
35 logstash,C,C,C,C,N,C mistral U U U
36 magnum,C,C,C,C,N,C multipathd U U U
37 manila,C,C,C,C,N,C neutron U U U
38 mariadb,C,C,C,C,N,C neutron-mlnx-agent U U U
39 masakari,N,C,C,C,N,C nova U U U
40 memcached,C,C,C,C,N,C nova-spicehtml5proxy N U U
41 mistral,C,C,C,C,N,C octavia U U U
42 monasca,N,N,N,N,N,C openvswitch U U U
43 multipathd,C,C,C,C,N,C opensearch U U U
44 murano,C,C,C,C,N,C ovn U U U
45 neutron,C,C,C,C,N,C ovsdpdk N U U
46 neutron-mlnx-agent,C,C,N,C,N,C placement U U U
47 nova,C,C,C,C,N,C prometheus U U U
48 nova-spicehtml5proxy,N,N,C,C,N,C rabbitmq U U U
49 octavia,C,C,N,C,N,C skyline U U U
50 openvswitch,C,C,C,C,N,C tacker U U U
51 ovn,C,C,C,C,C,C telegraf N N N
52 ovsdpdk,N,N,C,C,N,C tgtd U U U
53 placement,C,C,N,C,N,C trove U U U
54 prometheus,C,C,C,C,N,C valkey U U U
55 qdrouterd,C,C,C,C,N,N watcher U U U
56 rabbitmq,C,C,C,C,N,C zun U U U
redis,C,C,C,C,N,C
sahara,C,C,C,C,N,C
senlin,C,C,C,C,N,C
skydive,N,N,N,N,N,N
solum,N,C,N,C,N,C
storm,C,C,C,C,N,C
swift,C,C,C,C,N,C
tacker,C,C,N,C,N,C
telegraf,N,N,N,N,N,N
tgtd,C,C,C,C,N,C
trove,C,C,N,C,N,C
vitrage,C,C,N,C,N,C
watcher,C,C,C,C,N,C
zookeeper,C,C,C,C,N,C
zun,N,C,N,C,N,C

View file

@ -1,72 +1,58 @@
Image,CentOS,,Ubuntu,,Debian
,Binary,Source,Binary,Source,Binary,Source
aodh,C,C,C,C,C,C
barbican,C,T,C,C,C,C
bifrost,N,T,N,C,N,C
blazar,N,C,N,C,N,C
ceilometer,C,C,C,C,C,C
cinder,C,T,C,T,C,C
cloudkitty,C,C,N,C,N,C
collectd,C,C,C,C,C,C
cron,T,T,T,T,C,T
cyborg,N,C,N,C,N,C
designate,C,C,C,C,C,C
dnsmasq,T,T,C,T,C,C
elasticsearch,C,C,C,C,C,C
etcd,C,T,C,T,C,C
fluentd,T,T,T,T,C,T
freezer,N,C,N,C,N,C
glance,T,T,T,T,C,T
gnocchi,C,C,C,C,C,C
grafana,C,C,C,C,C,C
hacluster,C,C,C,C,C,C
hacluster-pcs,N,N,C,C,C,C
haproxy,T,T,T,T,C,C
heat,T,T,N,T,C,T
horizon,T,T,T,T,C,T
influxdb,C,C,C,C,C,C
ironic,T,T,C,T,C,C
iscsid,T,T,T,T,C,C
kafka,C,C,C,C,C,C
keepalived,T,T,T,T,C,C
keystone,T,T,T,T,C,T
kibana,C,C,C,C,C,C
kolla-toolbox,T,T,T,T,C,T
kuryr,N,T,N,T,N,C
logstash,C,C,C,C,C,C
magnum,C,C,C,C,C,C
manila,C,C,C,C,C,C
mariadb,T,T,T,T,C,T
masakari,N,T,C,T,C,C
memcached,T,T,T,T,C,C
mistral,C,T,N,C,C,C
monasca,N,C,N,C,N,N
multipathd,C,C,C,C,C,C
murano,C,C,C,C,C,C
neutron,T,T,T,T,C,T
neutron-mlnx-agent,C,C,N,C,C,C
nova,T,T,T,T,C,T
nova-spicehtml5proxy,N,N,T,T,C,T
octavia,C,C,N,C,C,C
openvswitch,T,T,T,T,C,T
ovn,C,C,C,C,C,C
ovsdpdk,N,N,C,C,C,C
placement,T,T,T,T,C,T
prometheus,C,C,C,C,C,C
qdrouterd,C,C,N,N,N,N
rabbitmq,T,T,T,T,C,T
redis,C,T,C,C,C,C
sahara,C,C,C,C,C,C
senlin,C,C,C,C,C,C
skydive,C,C,C,C,C,C
solum,N,C,N,C,N,C
storm,C,C,C,C,C,C
swift,C,T,C,T,C,C
tacker,C,T,N,C,N,C
telegraf,C,C,C,C,C,N
tgtd,N,N,C,T,C,C
trove,C,C,C,C,N,C
vitrage,C,C,N,C,C,C
watcher,C,C,C,C,C,C
zookeeper,C,C,C,C,C,C
zun,N,T,N,T,N,C
Image,Rocky Linux,Ubuntu,Debian
aodh,U,U,U
barbican,T,U,U
bifrost,T,U,U
blazar,U,U,U
ceilometer,U,U,U
cinder,T,T,U
cloudkitty,U,U,U
collectd,U,U,U
cron,T,T,T
cyborg,U,U,U
designate,U,U,U
dnsmasq,T,T,U
etcd,T,T,U
fluentd,T,T,T
glance,T,T,T
gnocchi,U,U,U
grafana,U,U,U
hacluster,U,U,U
hacluster-pcs,N,U,U
haproxy,T,T,U
heat,T,T,T
horizon,T,T,T
influxdb,U,U,U
ironic,T,T,U
iscsid,T,T,U
keepalived,T,T,U
keystone,T,T,T
kolla-toolbox,T,T,T
kuryr,T,T,U
magnum,U,U,U
manila,U,U,U
mariadb,T,T,T
masakari,T,T,U
memcached,T,T,U
mistral,T,U,U
multipathd,U,U,U
neutron,T,T,T
neutron-mlnx-agent,U,U,U
nova,T,T,T
nova-spicehtml5proxy,N,T,T
octavia,U,U,U
opensearch,T,T,U
openvswitch,T,T,T
ovn,U,U,U
ovsdpdk,N,U,U
placement,T,T,T
prometheus,U,U,U
rabbitmq,T,T,T
skyline,U,U,U
swift,T,T,U
tacker,T,U,U
telegraf,U,U,U
tgtd,N,T,U
trove,U,U,U
valkey,T,U,U
watcher,U,U,U
zun,T,T,U

1 Image,CentOS,,Ubuntu,,Debian Image Rocky Linux Ubuntu Debian
2 ,Binary,Source,Binary,Source,Binary,Source aodh U U U
3 aodh,C,C,C,C,C,C barbican T U U
4 barbican,C,T,C,C,C,C bifrost T U U
5 bifrost,N,T,N,C,N,C blazar U U U
6 blazar,N,C,N,C,N,C ceilometer U U U
7 ceilometer,C,C,C,C,C,C cinder T T U
8 cinder,C,T,C,T,C,C cloudkitty U U U
9 cloudkitty,C,C,N,C,N,C collectd U U U
10 collectd,C,C,C,C,C,C cron T T T
11 cron,T,T,T,T,C,T cyborg U U U
12 cyborg,N,C,N,C,N,C designate U U U
13 designate,C,C,C,C,C,C dnsmasq T T U
14 dnsmasq,T,T,C,T,C,C etcd T T U
15 elasticsearch,C,C,C,C,C,C fluentd T T T
16 etcd,C,T,C,T,C,C glance T T T
17 fluentd,T,T,T,T,C,T gnocchi U U U
18 freezer,N,C,N,C,N,C grafana U U U
19 glance,T,T,T,T,C,T hacluster U U U
20 gnocchi,C,C,C,C,C,C hacluster-pcs N U U
21 grafana,C,C,C,C,C,C haproxy T T U
22 hacluster,C,C,C,C,C,C heat T T T
23 hacluster-pcs,N,N,C,C,C,C horizon T T T
24 haproxy,T,T,T,T,C,C influxdb U U U
25 heat,T,T,N,T,C,T ironic T T U
26 horizon,T,T,T,T,C,T iscsid T T U
27 influxdb,C,C,C,C,C,C keepalived T T U
28 ironic,T,T,C,T,C,C keystone T T T
29 iscsid,T,T,T,T,C,C kolla-toolbox T T T
30 kafka,C,C,C,C,C,C kuryr T T U
31 keepalived,T,T,T,T,C,C magnum U U U
32 keystone,T,T,T,T,C,T manila U U U
33 kibana,C,C,C,C,C,C mariadb T T T
34 kolla-toolbox,T,T,T,T,C,T masakari T T U
35 kuryr,N,T,N,T,N,C memcached T T U
36 logstash,C,C,C,C,C,C mistral T U U
37 magnum,C,C,C,C,C,C multipathd U U U
38 manila,C,C,C,C,C,C neutron T T T
39 mariadb,T,T,T,T,C,T neutron-mlnx-agent U U U
40 masakari,N,T,C,T,C,C nova T T T
41 memcached,T,T,T,T,C,C nova-spicehtml5proxy N T T
42 mistral,C,T,N,C,C,C octavia U U U
43 monasca,N,C,N,C,N,N opensearch T T U
44 multipathd,C,C,C,C,C,C openvswitch T T T
45 murano,C,C,C,C,C,C ovn U U U
46 neutron,T,T,T,T,C,T ovsdpdk N U U
47 neutron-mlnx-agent,C,C,N,C,C,C placement T T T
48 nova,T,T,T,T,C,T prometheus U U U
49 nova-spicehtml5proxy,N,N,T,T,C,T rabbitmq T T T
50 octavia,C,C,N,C,C,C skyline U U U
51 openvswitch,T,T,T,T,C,T swift T T U
52 ovn,C,C,C,C,C,C tacker T U U
53 ovsdpdk,N,N,C,C,C,C telegraf U U U
54 placement,T,T,T,T,C,T tgtd N T U
55 prometheus,C,C,C,C,C,C trove U U U
56 qdrouterd,C,C,N,N,N,N valkey T U U
57 rabbitmq,T,T,T,T,C,T watcher U U U
58 redis,C,T,C,C,C,C zun T T U
sahara,C,C,C,C,C,C
senlin,C,C,C,C,C,C
skydive,C,C,C,C,C,C
solum,N,C,N,C,N,C
storm,C,C,C,C,C,C
swift,C,T,C,T,C,C
tacker,C,T,N,C,N,C
telegraf,C,C,C,C,C,N
tgtd,N,N,C,T,C,C
trove,C,C,C,C,N,C
vitrage,C,C,N,C,C,C
watcher,C,C,C,C,C,C
zookeeper,C,C,C,C,C,C
zun,N,T,N,T,N,C

View file

@ -17,9 +17,9 @@ The following base container images are supported:
================== =============================== ================
Distribution Default base Default base tag
================== =============================== ================
CentOS Stream 8 quay.io/centos/centos stream8
Debian Bullseye debian bullseye
Ubuntu Focal ubuntu 20.04
Rocky Linux quay.io/rockylinux/rockylinux 10
Debian Trixie debian trixie
Ubuntu Noble ubuntu 24.04
================== =============================== ================
The remainder of this document outlines which images are supported on which of
@ -44,12 +44,14 @@ Coverage:
* CI in ``kolla-ansible`` is testing that images are functional
* kolla core team is maintaining versions
C - Community maintained
------------------------
U - Untested
------------
Coverage:
* supported by the broader community (not core team) or not supported at all
* CI in ``kolla-ansible`` is *NOT* testing that images are functional
* Many untested services are working fine, but the kolla core team cannot
guarantee that they are all functional
N - Not Available/Unknown
-------------------------
@ -57,20 +59,27 @@ N - Not Available/Unknown
Not available *(e.g. not buildable)*.
Please see :ref:`unbuildable-images-list`
Deprecations
============
None
x86_64 images
=============
.. csv-table:: x86_64 images
:header-rows: 2
:header-rows: 1
:stub-columns: 1
:widths: auto
:file: ./matrix_x86.csv
aarch64 images
==============
.. csv-table:: aarch64 images
:header-rows: 2
:header-rows: 1
:stub-columns: 1
:widths: auto
:file: ./matrix_aarch64.csv
.. _unbuildable-images-list:
@ -79,4 +88,4 @@ Currently unbuildable images
============================
For a list of currently unbuildable images please look into
``kolla/image/build.py`` file - ``UNBUILDABLE_IMAGES`` dictionary.
``kolla/image/unbuildable.py`` file - ``UNBUILDABLE_IMAGES`` dictionary.

View file

@ -7,21 +7,10 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set aodh_api_packages = ['openstack-aodh-api'] %}
{% elif base_package_type == 'deb' %}
{% set aodh_api_packages = ['aodh-api'] %}
{% endif %}
{{ macros.install_packages(aodh_api_packages | customizable("packages")) }}
{% if base_package_type == 'deb' %}
RUN rm -rf /etc/apache2/sites-enabled/aodh-api.conf
{% endif %}
{% endif %}
COPY extend_start.sh /usr/local/bin/kolla_aodh_extend_start
RUN chmod 755 /usr/local/bin/kolla_aodh_extend_start
RUN chmod 644 /usr/local/bin/kolla_aodh_extend_start
{{ macros.kolla_patch_sources() }}
{% block aodh_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -9,34 +9,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='aodh') }}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{# NOTE(aschultz): added api because the common package doesn't include the wsgi file. I think this needs fixing #}
{% set aodh_base_packages = [
'openstack-aodh-api',
'openstack-aodh-common',
] %}
{{ macros.install_packages(aodh_base_packages | customizable("packages")) }}
RUN mkdir -p /var/www/cgi-bin/aodh \
&& cp -a /usr/bin/aodh-api /var/www/cgi-bin/aodh/
{% elif base_package_type == 'deb' %}
{% set aodh_base_packages = [
'aodh-common',
'python3-aodh',
] %}
{{ macros.install_packages(aodh_base_packages | customizable("packages")) }}
RUN mkdir -p /var/www/cgi-bin/aodh \
&& cp -a /usr/lib/python3/dist-packages/aodh/api/app.wsgi /var/www/cgi-bin/aodh/
{% endif %}
{% elif install_type == 'source' %}
{% set aodh_base_packages = [
] %}
{% set aodh_base_packages = [
] %}
{{ macros.install_packages(aodh_base_packages | customizable("packages")) }}
RUN mkdir -p /var/www/cgi-bin/aodh
@ -47,21 +21,21 @@ ADD aodh-base-archive /aodh-base-source
'/aodh',
] %}
COPY extend_start.sh /usr/local/bin/kolla_extend_start
COPY aodh_sudoers /etc/sudoers.d/kolla_aodh_sudoers
RUN ln -s aodh-base-source/* aodh \
&& {{ macros.install_pip(aodh_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/aodh /var/www/cgi-bin/aodh \
&& cp /aodh/aodh/api/app.wsgi /var/www/cgi-bin/aodh \
&& chown -R aodh: /etc/aodh /var/www/cgi-bin/aodh
{% endif %}
COPY extend_start.sh /usr/local/bin/kolla_extend_start
COPY aodh_sudoers /etc/sudoers.d/kolla_aodh_sudoers
RUN chmod 750 /etc/sudoers.d \
&& cp /aodh/aodh/api/api-paste.ini /etc/aodh/ \
&& chmod 644 /etc/aodh/api-paste.ini \
&& chmod 750 /etc/sudoers.d \
&& chmod 640 /etc/sudoers.d/kolla_aodh_sudoers \
&& chmod 755 /var/www/cgi-bin/aodh \
&& touch /usr/local/bin/kolla_aodh_extend_start \
&& chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_aodh_extend_start
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_aodh_extend_start
{{ macros.kolla_patch_sources() }}
{% block aodh_base_footer %}{% endblock %}

View file

@ -7,15 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set aodh_evaluator_packages = ['openstack-aodh-evaluator'] %}
{% elif base_package_type == 'deb' %}
{% set aodh_evaluator_packages = ['aodh-evaluator'] %}
{% endif %}
{{ macros.install_packages(aodh_evaluator_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% endif %}
{% block aodh_evaluator_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,15 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set aodh_expirer_packages = ['openstack-aodh-expirer'] %}
{% elif base_package_type == 'deb' %}
{% set aodh_expirer_packages = ['aodh-expirer'] %}
{% endif %}
{{ macros.install_packages(aodh_expirer_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% endif %}
{% block aodh_expirer_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,15 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set aodh_listener_packages = ['openstack-aodh-listener'] %}
{% elif base_package_type == 'deb' %}
{% set aodh_listener_packages = ['aodh-listener'] %}
{% endif %}
{{ macros.install_packages(aodh_listener_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% endif %}
{% block aodh_listener_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,15 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set aodh_notifier_packages = ['openstack-aodh-notifier'] %}
{% elif base_package_type == 'deb' %}
{% set aodh_notifier_packages = ['aodh-notifier'] %}
{% endif %}
{{ macros.install_packages(aodh_notifier_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% endif %}
{% block aodh_notifier_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,30 +7,11 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set barbican_api_packages = [
'openstack-barbican-api',
'uwsgi-plugin-python3'
] %}
{{ macros.install_packages(barbican_api_packages | customizable("packages")) }}
{% elif base_package_type == 'deb' %}
{% set barbican_api_packages = [
'barbican-api',
'uwsgi-plugin-python3'
] %}
{{ macros.install_packages(barbican_api_packages | customizable("packages")) }}
{% endif %}
{% endif %}
COPY extend_start.sh /usr/local/bin/kolla_barbican_extend_start
RUN chmod 755 /usr/local/bin/kolla_barbican_extend_start
RUN chmod 644 /usr/local/bin/kolla_barbican_extend_start
{{ macros.kolla_patch_sources() }}
{% block barbican_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,23 +7,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.configure_user(name='barbican', groups='nfast') }}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set barbican_base_packages = ['openstack-barbican-common'] %}
{% elif base_package_type == 'deb' %}
{% set barbican_base_packages = ['barbican-common'] %}
{% endif %}
{{ macros.install_packages(barbican_base_packages | customizable("packages")) }}
{% elif install_type == 'source' %}
{% if base_package_type == 'rpm' %}
{% set barbican_base_packages = ['uwsgi-plugin-python3'] %}
{% elif base_package_type == 'deb' %}
{% set barbican_base_packages = ['uwsgi-plugin-python3'] %}
{% endif %}
{{ macros.configure_user(name='barbican', groups='nfast,hsmusers') }}
{{ macros.install_packages(barbican_base_packages | customizable("packages")) }}
@ -31,24 +15,22 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
'/barbican',
'pastedeploy',
'python-barbicanclient',
'uwsgi'
] %}
ADD barbican-base-archive /barbican-base-source
RUN ln -s barbican-base-source/* barbican \
&& {{ macros.install_pip(barbican_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/barbican \
&& cp -r /barbican/etc/barbican/* /etc/barbican/ \
&& chown -R barbican: /etc/barbican
{% endif %}
COPY barbican_sudoers /etc/sudoers.d/kolla_barbican_sudoers
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 750 /etc/sudoers.d \
RUN ln -s barbican-base-source/* barbican \
&& {{ macros.install_pip(barbican_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/barbican \
&& cp -r /barbican/etc/barbican/* /etc/barbican/ \
&& chmod 750 /etc/sudoers.d \
&& chmod 640 /etc/sudoers.d/kolla_barbican_sudoers \
&& touch /usr/local/bin/kolla_barbican_extend_start \
&& chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_barbican_extend_start
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_barbican_extend_start
{{ macros.kolla_patch_sources() }}
{% block barbican_base_footer %}{% endblock %}

View file

@ -7,16 +7,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set barbican_keystone_listener_packages = ['openstack-barbican-keystone-listener'] %}
{% elif base_package_type == 'deb' %}
{% set barbican_keystone_listener_packages = ['barbican-keystone-listener'] %}
{% endif %}
{{ macros.install_packages(barbican_keystone_listener_packages | customizable("packages")) }}
{% endif %}
{{ macros.kolla_patch_sources() }}
{% block barbican_keystone_listener_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,16 +7,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set barbican_worker_packages = ['openstack-barbican-worker'] %}
{% elif base_package_type == 'deb' %}
{% set barbican_worker_packages = ['barbican-worker'] %}
{% endif %}
{{ macros.install_packages(barbican_worker_packages | customizable("packages")) }}
{% endif %}
{{ macros.kolla_patch_sources() }}
{% block barbican_worker_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -17,28 +17,14 @@ COPY curlrc /root/.curlrc
ENV LANG en_US.UTF-8
{% endblock %}
{# NOTE(SamYaple): Avoid uid/gid conflicts by creating each user/group up front. #}
{# Specifics required such as homedir or shell are configured within the service specific image #}
{%- for name, user in users | dictsort() %}
{% if loop.first -%}RUN {% else %} && {% endif -%}
groupadd --gid {{ user.gid }} {{ user.group }} \
&& useradd -l -M --shell /usr/sbin/nologin --uid {{ user.uid }} --gid {{ user.gid }} {{ name }}
{%- if not loop.last %} \{% endif -%}
{%- endfor %}
LABEL kolla_version="{{ kolla_version }}"
{% import "macros.j2" as macros with context %}
{% block base_header %}{% endblock %}
ENV KOLLA_BASE_DISTRO={{ base_distro }} \
KOLLA_DISTRO_PYTHON_VERSION={{ distro_python_version }} \
KOLLA_BASE_ARCH={{ base_arch }}
{# NOTE(frickler): sledgehammer workaround until pkgs are updated to build with setuptools==60.0.0 properly #}
ENV SETUPTOOLS_USE_DISTUTILS=stdlib
#### Customize PS1 to be used with bash shell
COPY kolla_bashrc /tmp/
RUN cat /tmp/kolla_bashrc >> /etc/skel/.bashrc \
@ -53,6 +39,9 @@ ENV PS1="$(tput bold)($(printenv KOLLA_SERVICE_NAME))$(tput sgr0)[$(id -un)@$(ho
# enables to provide repo overrides at a later date in a simple fashion if we
# desire such functionality. I think we will :)
ENV KOLLA_RPM_OVS_VERSION=3.5 \
KOLLA_RPM_OVN_VERSION=25.03
RUN cat /tmp/kolla_bashrc >> /etc/bashrc \
&& sed -i 's|^\(override_install_langs=.*\)|# \1|' /etc/dnf/dnf.conf
@ -65,53 +54,12 @@ COPY dnf.conf /etc/dnf/dnf.conf
{% endblock %}
#### BEGIN REPO ENABLEMENT
{% set base_yum_repo_files = [
'elasticsearch.repo',
'grafana.repo',
'proxysql.repo',
'rabbitmq_rabbitmq-server.repo',
'td.repo',
] %}
{% set base_yum_url_packages = [
] %}
{% set base_yum_repo_keys = [
'https://artifacts.elastic.co/GPG-KEY-elasticsearch',
'https://packages.grafana.com/gpg.key',
'https://downloads.mariadb.com/MariaDB/RPM-GPG-KEY-MariaDB',
'https://repo.proxysql.com/ProxySQL/repo_pub_key',
'https://github.com/rabbitmq/signing-keys/releases/download/2.0/rabbitmq-release-signing-key.asc',
'https://packages.treasuredata.com/GPG-KEY-td-agent',
] %}
{% if base_arch == 'x86_64' %}
{% set base_yum_repo_files = base_yum_repo_files + [
'influxdb.repo',
'mariadb.repo',
'rabbitmq_rabbitmq-erlang.repo',
] %}
# FIXME(mgoddard): Not available for CentOS 8 yet.
# 'crmsh.repo',
{% set base_yum_repo_keys = base_yum_repo_keys + [
'https://repos.influxdata.com/influxdb.key',
] %}
{% elif base_arch == 'aarch64' %}
{% set base_yum_repo_files = base_yum_repo_files + [
'erlang-solutions.repo',
'mariadb-aarch64.repo',
] %}
{% set base_yum_repo_keys = base_yum_repo_keys + [
'https://packages.erlang-solutions.com/rpm/erlang_solutions.asc',
] %}
{% endif %}
{%- for repo_file in base_yum_repo_files | customizable('yum_repo_files') %}
COPY {{ repo_file }} /etc/yum.repos.d/{{ repo_file }}
{%- endfor %}
{% block base_centos_repo_overrides_post_copy %}{% endblock %}
# Install what is needed for en_US.UTF-8
@ -138,14 +86,12 @@ RUN rm -f /etc/rpm/macros.image-language-conf \
{%- if not loop.last %} \{% endif %}
{% endfor -%}
{% for cmd in rpm_setup %}
{% for cmd in rpm_setup %}
{{ cmd }}
{% endfor %}
{% endfor %}
{% block base_centos_repo_overrides_post_rpm %}{% endblock %}
{% if base_distro == 'centos' %}
{% block base_centos_gpg_key_import %}
{% endblock %}
@ -153,10 +99,8 @@ RUN rm -f /etc/rpm/macros.image-language-conf \
] %}
{% set base_centos_yum_repo_packages = [
'centos-release-ceph-pacific',
'centos-release-nfv-extras',
'centos-release-ceph-squid',
'centos-release-nfv-openvswitch',
'centos-release-opstools',
'epel-release',
] %}
@ -164,42 +108,13 @@ RUN rm -f /etc/rpm/macros.image-language-conf \
{% set base_centos_yum_repo_packages = base_centos_yum_repo_packages + [
'dnf-plugins-core'
] %}
{% set base_centos_yum_repos_to_enable = [
] %}
# FIXME(hrw): entries not starting with 'centos-' (and 'centos-nfv-ovs') are
# from delorean or rdo-release-* package
# https://review.rdoproject.org/r/c/rdo-infra/ansible-role-dlrn/+/33241
{% set base_centos_yum_repos_to_disable = [
'advanced-virtualization',
'centos-nfv-extras',
'centos-nfv-ovs',
'centos-ceph-pacific',
'centos-nfv-openvswitch',
'centos-opstools',
'epel',
'epel-modular',
] %}
{% if base_arch == 'x86_64' %}
{% set base_centos_yum_repos_to_disable = base_centos_yum_repos_to_disable + [
'influxdb',
] %}
{% endif %}
RUN {{ macros.install_packages(base_centos_yum_repo_packages | customizable("centos_yum_repo_packages"), chain=True, clean=False) }}
{%- for repo in base_centos_yum_repos_to_enable | customizable('centos_yum_repos_to_enable') %} && dnf config-manager --enable {{ repo }} {% endfor -%}
{%- for repo in base_centos_yum_repos_to_disable | customizable('centos_yum_repos_to_disable') %} && dnf config-manager --disable {{ repo }} {% endfor -%}
{%- for key in base_centos_yum_repo_keys | customizable('centos_yum_repo_keys') %} && rpm --import {{ key }} {% endfor %} \
{% block base_centos_repo_overrides_post_yum %}{% endblock -%}
&& {{ macros.rpm_security_update(clean_package_cache) }}
{%- endif %}
{# Endif for base_distro centos #}
#### END REPO ENABLEMENT
{# We are back to the basic if conditional here which is:
@ -207,9 +122,10 @@ RUN {{ macros.install_packages(base_centos_yum_repo_packages | customizable("cen
{% block base_redhat_binary_versionlock %}{% endblock %}
{# NOTE(hrw): CentOS Stream 9 has curl-minimal, Rocky Linux 9 has curl so we do not install any #}
{% set base_centos_packages = [
'ca-certificates',
'curl',
'crypto-policies-scripts',
'dumb-init',
'findutils',
'hostname',
@ -218,31 +134,25 @@ RUN {{ macros.install_packages(base_centos_yum_repo_packages | customizable("cen
'lsof',
'lvm2',
'ncurses',
'openssl',
'procps-ng',
'python3',
'python3-pip',
'socat',
'sudo',
'tar',
'util-linux',
'util-linux-user',
'which'
'which',
'patch'
] %}
# Install base packages
{{ macros.install_packages( base_centos_packages | customizable("centos_packages") | customizable("centos_binary_packages") | customizable("centos_source_packages") ) }}
{{ macros.enable_extra_repos(['epel']) }}
{{ macros.install_packages(base_centos_packages | customizable("centos_packages") | customizable("centos_binary_packages") | customizable("centos_source_packages")) }}
{# endif for base_package_type rpm #}
{% elif base_package_type == 'deb' %}
# Customize PS1 bash shell
# - enlarge 'system users' range so 'haproxy' package will not complain
# see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=939470
# - enlarge 'system groups' range so 'hacluster' user added in
# https://review.opendev.org/c/openstack/kolla/+/802671
# can be in 'haclient' group with same high uid
RUN cat /tmp/kolla_bashrc >> /etc/bash.bashrc \
&& sed -i -e s/LAST_SYSTEM_UID=999/LAST_SYSTEM_UID=59999/g \
-e s/LAST_SYSTEM_GID=999/LAST_SYSTEM_GID=59999/g /etc/adduser.conf
# This will prevent questions from being asked during the install
ENV DEBIAN_FRONTEND noninteractive
@ -253,6 +163,7 @@ COPY dpkg_reducing_disk_footprint /etc/dpkg/dpkg.cfg.d/dpkg_reducing_disk_footpr
# curl and ca-certificates to fetch remote keys via http
# gnupg to fetch keys directly from keyserver
{% set base_ubuntu_package_pre_packages = [
'adduser',
'ca-certificates',
'curl',
'gnupg'
@ -266,11 +177,22 @@ COPY dpkg_reducing_disk_footprint /etc/dpkg/dpkg.cfg.d/dpkg_reducing_disk_footpr
{{ macros.install_packages(base_ubuntu_package_pre_packages | customizable("base_ubuntu_package_pre_packages")) }}
{% endblock %}
# Customize PS1 bash shell
# - enlarge 'system users' range so 'haproxy' package will not complain
# see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=939470
# - enlarge 'system groups' range so 'hacluster' user added in
# https://review.opendev.org/c/openstack/kolla/+/802671
# can be in 'haclient' group with same high uid
RUN cat /tmp/kolla_bashrc >> /etc/bash.bashrc \
&& sed -i -e s/#*LAST_SYSTEM_UID=999/LAST_SYSTEM_UID=59999/g \
-e s/#*LAST_SYSTEM_GID=999/LAST_SYSTEM_GID=59999/g /etc/adduser.conf
{# NOTE(mnasiadka): Ubuntu arm64 uses ports.ubuntu.com #}
{% block base_ubuntu_package_sources_list %}
{% if base_distro == 'debian' or ( base_distro == 'ubuntu' and base_arch == 'x86_64' ) %}
COPY sources.list.{{ base_distro }} /etc/apt/sources.list
{% if base_distro == "ubuntu" and base_arch == 'aarch64' %}
COPY {{ base_distro }}.sources.arm64 /etc/apt/sources.list.d/{{ base_distro }}.sources
{% else %}
COPY sources.list.{{ base_distro }}.{{ base_arch }} /etc/apt/sources.list
COPY {{ base_distro }}.sources /etc/apt/sources.list.d/
{% endif %}
COPY sources.list /etc/apt/sources.list.d/kolla-custom.list
{% endblock %}
@ -282,7 +204,7 @@ COPY sources.list /etc/apt/sources.list.d/kolla-custom.list
RUN apt update \
&& apt install -y --no-install-recommends extrepo \
&& extrepo enable openstack_yoga \
&& extrepo enable openstack_{{ openstack_release_codename | lower }} \
&& apt purge -y extrepo \
&& apt --purge autoremove -y \
&& apt clean
@ -297,6 +219,7 @@ COPY apt_preferences /etc/apt/preferences.d/kolla-custom
{% set base_apt_packages = [
'apt-utils',
'dumb-init',
'systemd-standalone-sysusers',
'gawk',
'iproute2',
'kmod',
@ -309,23 +232,25 @@ COPY apt_preferences /etc/apt/preferences.d/kolla-custom
'python3-pip',
'socat',
'sudo',
'tgt'
'tgt',
'patch'
] %}
{% set base_apt_keys = [
{'name': 'erlang', 'keyid': 'F77F1EDA57EBB1CC'},
{'name': 'rabbitmq', 'keyid': 'F6609E60DC62814E'},
{'name': 'haproxy', 'keyid': 'CFFB779AADC995E4F350A060505D97A41C61B9CD'},
{'name': 'erlang-ppa', 'keyid': 'F77F1EDA57EBB1CC'},
{'name': 'rabbitmq', 'keyid': '6B73A36E6026DFCA'},
{'name': 'haproxy', 'keyid': 'CFFB779AADC995E4F350A060505D97A41C61B9CD'},
] %}
{# NOTE(hrw): type field defaults to 'asc' which is used for single keys #}
{% set base_remote_apt_keys = [
{'name': 'elasticsearch', 'url': 'https://artifacts.elastic.co/GPG-KEY-elasticsearch'},
{'name': 'grafana', 'url': 'https://packages.grafana.com/gpg.key'},
{'name': 'influxdb', 'url': 'https://repos.influxdata.com/influxdb.key'},
{'name': 'docker-ce', 'url': 'https://download.docker.com/linux/debian/gpg'},
{'name': 'fluentd', 'url': 'https://fluentd.cdn.cncf.io/GPG-KEY-fluent-package'},
{'name': 'grafana', 'url': 'https://rpm.grafana.com/gpg.key'},
{'name': 'influxdb', 'url': 'https://repos.influxdata.com/influxdata-archive.key'},
{'name': 'mariadb', 'url': 'https://downloads.mariadb.com/MariaDB/mariadb-keyring-2019.gpg', 'type': 'gpg'},
{'name': 'proxysql', 'url': 'https://repo.proxysql.com/ProxySQL/repo_pub_key'},
{'name': 'treasuredata', 'url': 'https://packages.treasuredata.com/GPG-KEY-td-agent'},
{'name': 'opensearch', 'url': 'https://artifacts.opensearch.org/publickeys/opensearch-release.pgp'},
{'name': 'proxysql', 'url': 'https://repo.proxysql.com/ProxySQL/proxysql-3.0.x/repo_pub_key'},
] %}
{% block base_ubuntu_package_installation %}
@ -346,19 +271,30 @@ COPY apt_preferences /etc/apt/preferences.d/kolla-custom
{% endif -%}
{% endfor %}
{% endblock %}
RUN apt-get update \
RUN apt-get --error-on=any update \
&& apt-get -y install locales \
&& sed -e "s/# $LANG UTF-8/$LANG UTF-8/g" /etc/locale.gen -i \
&& locale-gen "$LANG" \
&& apt-get -y upgrade \
&& apt-get -y dist-upgrade \
&& {{ macros.install_packages(base_apt_packages | customizable('apt_packages'), True) }}
&& {{ macros.install_packages(base_apt_packages | customizable('apt_packages'), True) }} \
# NOTE: python3-pip installs dependent tzdata package and blocks mount in docker - 2091161
&& unlink /etc/localtime
{% endblock %}
{# endif base_package_type deb #}
{% endif %}
{# NOTE(SamYaple): Avoid uid/gid conflicts by creating each user/group up front. #}
{# Specifics required such as homedir or shell are configured within the service specific image #}
{%- for name, user in users | dictsort() %}
{% if loop.first -%}RUN {% else %} && {% endif -%}
groupadd --gid {{ user.gid }} {{ user.group }} \
&& useradd -l -M --shell /usr/sbin/nologin --uid {{ user.uid }} --gid {{ user.gid }} {{ name }}
{%- if not loop.last %} \{% endif -%}
{%- endfor %}
{% if base_distro == 'centos' %}
RUN sed -ri '/-session(\s+)optional(\s+)pam_systemd.so/d' /etc/pam.d/system-auth \
&& sed -ri '/^[^#]/ s/systemd//g' /etc/nsswitch.conf
@ -367,7 +303,9 @@ RUN sed -ri '/-session(\s+)optional(\s+)pam_systemd.so/d' /etc/pam.d/system-auth
COPY set_configs.py /usr/local/bin/kolla_set_configs
COPY start.sh /usr/local/bin/kolla_start
COPY copy_cacerts.sh /usr/local/bin/kolla_copy_cacerts
COPY install_projects.sh /usr/local/bin/kolla_install_projects
COPY httpd_setup.sh /usr/local/bin/kolla_httpd_setup
COPY kolla_patch.sh /usr/local/bin/kolla_patch
COPY sudoers /etc/sudoers
{% if use_dumb_init %}
@ -384,7 +322,12 @@ RUN chmod 755 /usr/local/bin/healthcheck_*
{% endif %}
RUN touch /usr/local/bin/kolla_extend_start \
&& chmod 755 /usr/local/bin/kolla_start /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_set_configs /usr/local/bin/kolla_copy_cacerts /usr/local/bin/kolla_httpd_setup \
&& chmod 755 /usr/local/bin/kolla_start \
/usr/local/bin/kolla_set_configs \
/usr/local/bin/kolla_copy_cacerts \
/usr/local/bin/kolla_install_projects \
/usr/local/bin/kolla_patch \
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_httpd_setup \
&& chmod 440 /etc/sudoers \
&& mkdir -p /var/log/kolla \
&& chown :kolla /var/log/kolla \
@ -395,8 +338,9 @@ RUN touch /usr/local/bin/kolla_extend_start \
# the variables like PIP_INDEX_URL, PIP_EXTRA_INDEX_URL, PIP_TRUSTED_HOST etc. should be defined here.
# ENV PIP_INDEX_URL=https://pypi.python.org/simple
# ENV PIP_TRUSTED_HOST=pypi.python.org
# ENV UPPER_CONSTRAINTS_FILE=https://releases.openstack.org/constraints/upper/{{ openstack_release }}
{% endblock %}
{{ macros.kolla_patch_sources() }}
{% block base_footer %}{% endblock %}
CMD ["kolla_start"]

View file

@ -1,32 +1,4 @@
Package: rabbitmq-server
Pin: version 3.9.*
Pin-Priority: 1000
Package: erlang*
Pin: version 1:24.*
Pin-Priority: 1000
# NOTE(mgoddard): logstash 7.9.x is the last version that supports
# Elasticsearch OSS.
Package: logstash-oss
Pin: version 7.9.*
Pin-Priority: 1000
# NOTE(hrw): we do not want backports unless requested
Package: *
Pin: release n=bullseye-backports
Pin: release n=trixie-backports
Pin-Priority: -1000
# NOTE(hrw): let us list some backports
# - openvswitch 2.15
# - ovn 21.06
# - libvirt 8
# - qemu 6.2
Package: openvswitch* python3-openvswitch ovn-* libvirt* qemu-*
Pin: release n=bullseye-backports
Pin-Priority: 1024
# NOTE(hrw): Debian OpenStack Team repo has some backports we do not want
Package: git*
Pin: release n=bullseye
Pin-Priority: 1024

View file

@ -1,13 +1,3 @@
Package: rabbitmq-server
Pin: version 3.9.*
Pin-Priority: 1000
Package: erlang*
Pin: version 1:24.*
Pin-Priority: 1000
# NOTE(mgoddard): logstash 7.9.x is the last version that supports
# Elasticsearch OSS.
Package: logstash-oss
Pin: version 7.9.*
Package: *
Pin: origin dlm.mariadb.com
Pin-Priority: 1000

View file

@ -0,0 +1,75 @@
[baseos]
name=(OpenDev mirror) CentOS Stream $releasever - BaseOS
baseurl=http://MIRROR/centos-stream/$stream/BaseOS/$basearch/os/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
gpgcheck=1
repo_gpgcheck=0
enabled=1
[appstream]
name=(OpenDev mirror) CentOS Stream $releasever - AppStream
baseurl=http://MIRROR/centos-stream/$stream/AppStream/$basearch/os/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
gpgcheck=1
repo_gpgcheck=0
enabled=1
[extras-common]
name=(OpenDev mirror) CentOS Stream $releasever - Extras packages
baseurl=http://MIRROR/centos-stream/SIGs/$stream/extras/$basearch/extras-common/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Extras-SHA512
gpgcheck=1
repo_gpgcheck=0
enabled=1
[crb]
name=(OpenDev mirror) CentOS Stream $releasever - CRB
baseurl=http://MIRROR/centos-stream/$stream/CRB/$basearch/os/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
gpgcheck=1
repo_gpgcheck=0
enabled=0
[highavailability]
name=(OpenDev mirror) CentOS Stream $releasever - HighAvailability
baseurl=http://MIRROR/centos-stream/$stream/HighAvailability/$basearch/os/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
gpgcheck=1
repo_gpgcheck=0
enabled=0
[centos-ceph-reef]
name=(OpenDev mirror) CentOS-$stream - Ceph Reef
baseurl=http://MIRROR/centos-stream/SIGs/$stream/storage/$basearch/ceph-reef/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Storage
[centos-nfv-openvswitch]
name=(OpenDev mirror) CentOS Stream $releasever - NFV OpenvSwitch
baseurl=http://MIRROR/centos-stream/SIGs/$stream/nfv/$basearch/openvswitch-2/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-NFV
module_hotfixes=1
[centos-opstools]
name=(OpenDev mirror) CentOS Stream $releasever - OpsTools - collectd
baseurl=http://MIRROR/centos-stream/SIGs/$stream/opstools/$basearch/collectd-5/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-OpsTools
[centos-rabbitmq-38]
name=(OpenDev mirror) CentOS-9 - RabbitMQ 38
baseurl=http://MIRROR/centos-stream/SIGs/$stream/messaging/$basearch/rabbitmq-38
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Messaging
[epel]
name=(OpenDev mirror) Extra Packages for Enterprise Linux $releasever - $basearch
baseurl=http://MIRROR/epel/$releasever/Everything/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-$releasever

View file

@ -3,25 +3,46 @@
# Copy custom CA certificates to system trusted CA certificates folder
# and run CA update utility
# Remove old certificates
rm -f /usr/local/share/ca-certificates/kolla-customca-* \
/etc/pki/ca-trust/source/anchors/kolla-customca-*
if [[ -d /var/lib/kolla/config_files/ca-certificates ]] && \
[[ ! -z "$(ls -A /var/lib/kolla/config_files/ca-certificates/)" ]]; then
if [[ -e /etc/debian_version ]]; then
# Debian, Ubuntu
for cert in /var/lib/kolla/config_files/ca-certificates/*; do
file=$(basename "$cert")
cp $cert "/usr/local/share/ca-certificates/kolla-customca-$file"
done
update-ca-certificates
elif [[ -e /etc/redhat-release ]]; then
# CentOS
for cert in /var/lib/kolla/config_files/ca-certificates/*; do
file=$(basename "$cert")
cp $cert "/etc/pki/ca-trust/source/anchors/kolla-customca-$file"
done
update-ca-trust
fi
if [[ -e "/etc/debian_version" ]]; then
ca_dst_path="/usr/local/share/ca-certificates"
update_command="update-ca-certificates"
elif [[ -e "/etc/redhat-release" ]]; then
ca_dst_path="/etc/pki/ca-trust/source/anchors"
update_command="update-ca-trust"
else
echo "Unsupported OS"
exit 1
fi
# Initialize update_needed variable
update_needed="false"
# Remove old certificates
if find /etc/ssl/certs/ \
/usr/local/share/ca-certificates/ \
/etc/pki/ca-trust/source/anchors/ \
-name 'kolla*' -exec rm -f {} + 2>/dev/null; then
update_needed="true"
fi
# Determine source path for CA certificates
if grep -q '"source": "/var/lib/kolla/share/ca-certificates"' /etc/kolla/defaults/state; then
ca_src_path="/var/lib/kolla/share/ca-certificates"
else
ca_src_path="/var/lib/kolla/config_files/ca-certificates"
fi
# Check if the source path exists and is not empty
if [[ -d ${ca_src_path} && $(ls -A "${ca_src_path}" 2>/dev/null) ]]; then
# Copy certificates and update CA
for cert in "${ca_src_path}"/*; do
file=$(basename "${cert}")
cp ${cert} ${ca_dst_path}/kolla-customca-${file}
update_needed="true"
done
fi
# Run the update command if needed
if [[ "${update_needed}" == "true" ]]; then
${update_command}
fi

View file

@ -1,7 +0,0 @@
[network_ha-clustering_Stable]
name=Stable High Availability/Clustering packages (CentOS_CentOS-7)
type=rpm-md
baseurl=http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/CentOS_CentOS-7/
gpgcheck=1
gpgkey=http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/CentOS_CentOS-7/repodata/repomd.xml.key
enabled=0

View file

@ -1,6 +1,8 @@
# curl default options
--fail
--location
--retry 5
--retry-all-errors
--silent
--show-error
--write-out "curl (%{url_effective}): response: %{http_code}, time: %{time_total}, size: %{size_download}\n"

View file

@ -0,0 +1,13 @@
Types: deb
# http://snapshot.debian.org/archive/debian/20251020T000000Z
URIs: http://deb.debian.org/debian
Suites: trixie trixie-updates trixie-backports
Components: main
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Types: deb
# http://snapshot.debian.org/archive/debian-security/20251020T000000Z
URIs: http://deb.debian.org/debian-security
Suites: trixie-security
Components: main
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

View file

@ -9,4 +9,4 @@ installonly_limit=0
skip_missing_names_on_install=False
clean_requirements_on_remove=True
tsflags=nodocs
install_weak_deps=False
install_weak_deps=False

View file

@ -1,6 +0,0 @@
[elasticsearch-kibana-logstash-7.x]
name=ELK repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/oss-7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=0

View file

@ -1,6 +0,0 @@
[erlang-solutions]
name=erlang-solutions
baseurl=https://packages.erlang-solutions.com/rpm/centos/$releasever/$basearch
gpgcheck=1
gpgkey=https://packages.erlang-solutions.com/rpm/erlang_solutions.asc
enabled=0

View file

@ -1,8 +0,0 @@
[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
enabled=0
gpgcheck=1
gpgkey=https://packages.grafana.com/gpg.key
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt

View file

@ -17,14 +17,35 @@ if [[ "$(whoami)" == 'root' ]]; then
rm -rf /var/run/apache2/*
else
rm -rf /var/run/httpd/* /run/httpd/* /tmp/httpd*
# NOTE(mmalchuk): This added to make Rocky/Centos similar to Ubuntu/Debian
# to provide /server-status handler for local monitoring of the Apache.
# The module already loaded in the /etc/httpd/conf.modules.d/00-base.conf.
cat << EOF >/etc/httpd/conf.modules.d/99-server-status.conf
<Location "/server-status">
SetHandler server-status
Require local
</Location>
EOF
fi
# CentOS 8 has an issue with mod_ssl which produces an invalid Apache
# CentOS/Rocky have an issue with mod_ssl which produces an invalid Apache
# configuration in /etc/httpd/conf.d/ssl.conf. This causes the following error
# on startup:
# SSLCertificateFile: file '/etc/pki/tls/certs/localhost.crt' does not exist or is empty
# Work around this by generating certificates manually.
if [[ ${KOLLA_BASE_DISTRO} = centos ]] && [[ ! -e /etc/pki/tls/certs/localhost.crt ]]; then
# NOTE(mnasiadka): in EL9 upgrade jobs gencerts is failing on wrong permissions to dhparams.pem
if [[ "${KOLLA_BASE_DISTRO}" =~ centos|rocky ]] && [[ ! -e /etc/pki/tls/certs/localhost.crt ]]; then
rm -f /tmp/dhparams.pem
/usr/libexec/httpd-ssl-gencerts
fi
fi
# The default system locale with unicode support
LANG=C.UTF-8
# Override the default locale if configured
if [[ "${KOLLA_BASE_DISTRO}" =~ debian|ubuntu ]]; then
[ -f /etc/default/locale ] && . /etc/default/locale
else
[ -f /etc/locale.conf ] && . /etc/locale.conf
fi

View file

@ -1,6 +0,0 @@
[influxdb]
name = InfluxDB Repository - RHEL $releasever
baseurl = https://repos.influxdata.com/rhel/$releasever/$basearch/stable
enabled = 0
gpgcheck = 1
gpgkey = https://repos.influxdata.com/influxdb.key

View file

@ -0,0 +1,12 @@
#!/bin/bash
# This script finds all projects in /dev-mode folder and
# installs them using pip
# The projects are mounted there when dev mode is enabled for them
# in kolla-ansible
if [ -d "/dev-mode" ]; then
for project in /dev-mode/*; do
pip install -U "$project"
done
fi

55
docker/base/kolla_patch.sh Executable file
View file

@ -0,0 +1,55 @@
#!/bin/bash
# This script works as debian quilt patch.
# So, patch files included in /patches/series
# are applied and information what was applied
# is stored in /etc/kolla/patched.
#
# No more, no less :)
cd /
# If exist /patches/series
# let's try to apply patches
if [ -e "/patches/series" ]; then
# If there is /patches/series.applied
# then it means previous run already applied
# some patches - from another intermediate container
#
# So, let's add patches again to /patches/series
# and let's script to handle it
if [ -e "/patches/series.applied" ]; then
grep -v '^#' /patches/series.applied > /tmp/series.tmp
grep -v '^#' /patches/series >> /tmp/series.tmp
rm -f /patches/series
mv /tmp/series.tmp /patches/series
fi
touch /etc/kolla/patched
for patchfile in $(grep -v '^#' /patches/series); do
# If patch is not applied, try to apply it, otherwise
# inform user that patchfile is already applied
if ! grep -q "$patchfile" /etc/kolla/patched; then
echo "[i] Applying /patches/${patchfile}"
patch -p0 --fuzz=0 --ignore-whitespace < /patches/${i}/${patchfile}
# If apply patch was successful inform user,
# otherwise fail build process and inform user
# to check/fix patch
if [ $? -eq 0 ]; then
echo "[i] Applied /patches/${patchfile}" >> /etc/kolla/patched
else
echo "[i] Patch /patches/${patchfile} failed, please fix your patchfiles."
exit 1
fi
else
echo "[i] /patches/${patchfile} already applied."
fi
done
# Ignore files which are commented and move
# to /patches/series.applied as /patch/series
# can be potentially replaced by another files
# from different intermediate container
grep -v '^#' /patches/series > /patches/series.applied
rm -f /patches/series
else
echo "[i] No series file found, nothing to patch."
fi

View file

@ -1,6 +0,0 @@
[mariadb]
name = MariaDB
baseurl = https://downloads.mariadb.com/MariaDB/mariadb-10.6/yum/centos8-aarch64
module_hotfixes = 1
gpgcheck = 1
enabled = 0

View file

@ -1,6 +0,0 @@
[mariadb]
name = MariaDB
baseurl = https://downloads.mariadb.com/MariaDB/mariadb-10.6/yum/centos8-amd64
module_hotfixes = 1
gpgcheck = 1
enabled = 0

View file

@ -1,6 +0,0 @@
[proxysql]
name = ProxySQL
baseurl = https://repo.proxysql.com/ProxySQL/proxysql-2.3.x/centos/$releasever
gpgkey = https://repo.proxysql.com/ProxySQL/repo_pub_key
gpgcheck = 1
enabled = 0

View file

@ -1,5 +0,0 @@
[rabbitmq_rabbitmq-erlang]
name=rabbitmq_rabbitmq-erlang
baseurl=https://packagecloud.io/rabbitmq/erlang/el/8/$basearch
gpgcheck=1
enabled=0

View file

@ -1,5 +0,0 @@
[rabbitmq_rabbitmq-server]
name=rabbitmq_rabbitmq-server
baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/8/$basearch
gpgcheck=1
enabled=0

View file

@ -19,16 +19,24 @@ import json
import logging
import os
import pwd
import re
import shutil
import stat
import sys
# TODO(rhallisey): add docstring.
logging.basicConfig()
logging.basicConfig(
format='%(asctime)s.%(msecs)03d %(levelname)s %(message)s',
level=logging.INFO,
datefmt='%Y-%m-%d %H:%M:%S'
)
LOG = logging.getLogger(__name__)
LOG.setLevel(logging.INFO)
KOLLA_DEFAULTS = "/etc/kolla/defaults"
KOLLA_DEFAULTS_STATE = KOLLA_DEFAULTS + '/' + 'state'
class ExitingException(Exception):
def __init__(self, message, exit_code=1):
@ -56,6 +64,14 @@ class ConfigFileBadState(ExitingException):
pass
class ConfigFileCommandDiffers(ExitingException):
pass
class StateMismatch(ExitingException):
pass
class ConfigFile(object):
def __init__(self, source, dest, owner=None, perm=None, optional=False,
@ -160,11 +176,13 @@ class ConfigFile(object):
raise
def _cmp_file(self, source, dest):
# check exsit
# check exist
if (os.path.exists(source) and
not self.optional and
not os.path.exists(dest)):
return False
if (os.path.exists(dest) and
not os.path.exists(source)):
return False
# check content
with open(source, 'rb') as f1, open(dest, 'rb') as f2:
if f1.read() != f2.read():
@ -272,21 +290,8 @@ def validate_source(data):
def load_config():
def load_from_env():
config_raw = os.environ.get("KOLLA_CONFIG")
if config_raw is None:
return None
# Attempt to read config
try:
return json.loads(config_raw)
except ValueError:
raise InvalidConfig('Invalid json for Kolla config')
def load_from_file():
config_file = os.environ.get("KOLLA_CONFIG_FILE")
if not config_file:
config_file = '/var/lib/kolla/config_files/config.json'
config_file = '/var/lib/kolla/config_files/config.json'
LOG.info("Loading config file at %s", config_file)
# Attempt to read config file
@ -300,9 +305,7 @@ def load_config():
raise InvalidConfig(
"Could not read file %s: %r" % (config_file, e))
config = load_from_env()
if config is None:
config = load_from_file()
config = load_from_file()
LOG.info('Validating config file')
validate_config(config)
@ -347,6 +350,7 @@ def handle_permissions(config):
owner = permission.get('owner')
recurse = permission.get('recurse', False)
perm = permission.get('perm')
exclude = permission.get('exclude', [])
desired_user, desired_group = user_group(owner)
uid = pwd.getpwnam(desired_user).pw_uid
@ -386,20 +390,177 @@ def handle_permissions(config):
LOG.exception('Failed to set permission of %s to %s',
path, perm)
def handle_exclusion(root, path_suffix):
full_path = os.path.join(root, path_suffix)
LOG.debug("Checking for exclusion: %s" % full_path)
if exclude:
for exclude_ in exclude:
if not re.search(exclude_, full_path):
set_perms(full_path, uid, gid, perm)
else:
set_perms(full_path, uid, gid, perm)
for dest in glob.glob(path):
set_perms(dest, uid, gid, perm)
if recurse and os.path.isdir(dest):
for root, dirs, files in os.walk(dest):
for dir_ in dirs:
set_perms(os.path.join(root, dir_), uid, gid, perm)
handle_exclusion(root, dir_)
for file_ in files:
set_perms(os.path.join(root, file_), uid, gid, perm)
handle_exclusion(root, file_)
def get_defaults_state():
"""Retrieve the saved default configuration state from default state file.
This function creates the directory for Kolla defaults if it does not
exist, and then attempts to read the current configuration state from
a JSON file. If the file exists, it reads and returns the content.
If not, it returns an empty dictionary.
Simply said, when the container starts for the first time, the state file
doesn't exist, and it returns an empty dictionary.
However, if it has already been started before, it will contain the state
as it was when it first ran.
Returns:
dict: The configuration state stored in the Kolla defaults state file.
Example:
{
"/etc/cinder/cinder.conf": {
"source": "/etc/cinder/cinder.conf",
"preserve_properties": true,
"dest": null
},
"/etc/apache2/conf-enabled/cinder-wsgi.conf": {
"source": "/etc/apache2/conf-enabled/cinder-wsgi.conf",
"preserve_properties": true,
"dest": null
},
"/etc/cinder/cinder_audit_map.conf": {
"source": "/etc/cinder/cinder_audit_map.conf",
"preserve_properties": true,
"dest": "/etc/kolla/defaults/etc/cinder/cinder_audit_map.conf"
}
}
From above example:
/etc/cinder/cinder.conf didn't exist
/etc/apache2/conf-enabled/cinder-wsgi.conf didn't exist
/etc/cinder/cinder_audit_map.conf exists and saved
"""
os.makedirs(KOLLA_DEFAULTS, exist_ok=True)
if os.path.exists(KOLLA_DEFAULTS_STATE):
with open(KOLLA_DEFAULTS_STATE, 'r') as f:
return json.load(f)
else:
return {}
def set_defaults_state(state):
"""Save the provided configuration state to the defaults state file.
This function writes the provided state (a dictionary) to a JSON file at
the specified Kolla defaults state location, ensuring that it is properly
formatted with indentation for readability.
Args:
state (dict): The configuration state to save to the Kolla defaults
state file.
"""
with open(KOLLA_DEFAULTS_STATE, 'w') as f:
json.dump(state, f, indent=4)
def remove_or_restore_configs(state):
"""Remove or restore configuration files based on their current state.
This function iterates over the configuration files in the provided state.
If the destination is `None`, it removes the file or directory. Otherwise,
it swaps the source and destination, restoring the configuration file
by copying it back to its original location.
Args:
state (dict): The current default state of configuration files, mapping
file paths to their source and destination information.
"""
for k, v in state.items():
if v['dest'] is None:
if os.path.exists(k):
if os.path.isfile(k):
os.remove(k)
else:
shutil.rmtree(k)
else:
v['source'], v['dest'] = v['dest'], v['source']
config_file = ConfigFile(**v)
config_file.copy()
def backup_configs(config, state):
"""Back up new configuration files and update the default state.
This function processes new configuration files provided in the
input `config`. For each file, it checks if the destination exists in the
current state. If not, it backs up the file by copying it to the default
directory. It then updates the state with the new configuration file's
information.
Args:
config (dict): The input configuration containing a list of config
files.
state (dict): The current default state to be updated with the new
config files.
"""
if 'config_files' in config:
for data in config['config_files']:
if data['dest'] in state.keys():
continue
src = data['source']
if data['dest'].endswith('/'):
dst = data['dest'] + data['source'].split('/')[-1]
else:
dst = data['dest']
default = KOLLA_DEFAULTS + dst
if os.path.exists(src):
copy = {'source': dst, 'preserve_properties': True}
if os.path.exists(dst):
copy['dest'] = default
if dst not in state:
config_file = ConfigFile(**copy)
config_file.copy()
state[dst] = copy
else:
copy['dest'] = None
if dst not in state:
state[dst] = copy
def handle_defaults(config):
"""Handle the default config files by copying/removing them as needed.
This function loads the current default state and manages the configuration
files. It first processes existing configuration files in the default
state, either removing or restoring them based on their destination status.
It then backs up any new configuration files from the input config,
updating the default state accordingly.
Args:
config (dict): A dictionary containing the list of configuration files
to be handled.
"""
state = get_defaults_state()
remove_or_restore_configs(state)
backup_configs(config, state)
set_defaults_state(state)
def execute_config_strategy(config):
config_strategy = os.environ.get("KOLLA_CONFIG_STRATEGY")
LOG.info("Kolla config strategy set to: %s", config_strategy)
if config_strategy == "COPY_ALWAYS":
handle_defaults(config)
copy_config(config)
handle_permissions(config)
elif config_strategy == "COPY_ONCE":
@ -408,6 +569,7 @@ def execute_config_strategy(config):
"The config strategy prevents copying new configs",
exit_code=0)
else:
handle_defaults(config)
copy_config(config)
handle_permissions(config)
os.mknod('/configured')
@ -415,7 +577,66 @@ def execute_config_strategy(config):
raise InvalidConfig('KOLLA_CONFIG_STRATEGY is not set properly')
def execute_command_check(config):
cmd = config.get('command')
with open("/run_command", "r") as f:
cmd_running = f.read()
if cmd != cmd_running:
msg = "Running command differs. " + cmd + " != " + cmd_running
raise ConfigFileCommandDiffers(msg)
def execute_config_check(config):
"""Check configuration state consistency and validate config file entries.
This function compares the current config file destinations from the
provided config dictionary with those stored in the defaults state file.
If any destinations are found in the state file but not in the config,
a StateMismatch exception is raised. These missing files would otherwise
be restored or removed depending on their backup state.
After validating consistency, the function performs standard checks on
each declared configuration file, including content, permissions, and
ownership validation.
Args:
config (dict): The configuration dictionary containing 'config_files'
entries as expected by Kolla.
Raises:
StateMismatch: If there are entries in the defaults state not present
in the provided config.
"""
state = get_defaults_state()
# Build a set of all current destination paths from config.json
# If the destination is a directory, we append the
# basename of the source
current_dests = {
entry['dest'] if not entry['dest'].endswith('/') else
os.path.join(entry['dest'], os.path.basename(entry['source']))
for entry in config.get('config_files', [])
if entry.get('dest')
}
# Detect any paths that are present in the state file but
# missing from config.json.
# These would be either restored (if state[dest] has a backup)
# or removed (if dest is null)
removed_dests = [
path for path in state.keys()
if path not in current_dests
]
if removed_dests:
raise StateMismatch(
f"The following config files are tracked in state but missing "
f"from config.json. "
f"They would be restored or removed: {sorted(removed_dests)}"
)
# Perform the regular content, permissions, and ownership
# checks on the declared files
for data in config.get('config_files', []):
config_file = ConfigFile(**data)
config_file.check()
@ -432,6 +653,7 @@ def main():
config = load_config()
if args.check:
execute_command_check(config)
execute_config_check(config)
else:
execute_config_strategy(config)

View file

@ -1,11 +0,0 @@
# Default repos
deb http://deb.debian.org/debian bullseye main
# debian security updates
deb http://deb.debian.org/debian-security bullseye-security main
# debian updates
deb http://deb.debian.org/debian bullseye-updates main
# debian backports
deb http://deb.debian.org/debian bullseye-backports main

View file

@ -1,17 +0,0 @@
# For non-x86 architectures we use sources.list.ubuntu.<arch>
# Default repos
deb mirror://mirrors.ubuntu.com/mirrors.txt focal main universe
deb mirror://mirrors.ubuntu.com/mirrors.txt focal-updates main universe
deb mirror://mirrors.ubuntu.com/mirrors.txt focal-security main universe
# Backports have a lower priority and must be explicitly installed to be used
deb http://archive.ubuntu.com/ubuntu/ focal-backports main universe
# We need to add the repo for the updated packages they provide. The main ones
# are qemu, libvirt, and openvswitch.
deb http://ubuntu-cloud.archive.canonical.com/ubuntu focal-updates/yoga main
# NOTE(hrw): extra repositories are added into image when they are needed as
# separate files in /etc/apt/sources.list.d/ directory. For that purpose they
# are defined in kolla/template/repos.yaml file.

View file

@ -1,15 +0,0 @@
# Default repos
deb http://ports.ubuntu.com/ focal main universe
deb http://ports.ubuntu.com/ focal-updates main universe
deb http://ports.ubuntu.com/ focal-security main universe
# Backports have a lower priority and must be explicitly installed to be used
deb http://ports.ubuntu.com/ focal-backports main universe
# We need to add the repo for the updated packages they provide. The main ones
# are qemu, libvirt, and openvswitch.
deb http://ubuntu-cloud.archive.canonical.com/ubuntu focal-updates/yoga main
# NOTE(hrw): extra repositories are added into image when they are needed as
# separate files in /etc/apt/sources.list.d/ directory. For that purpose they
# are defined in kolla/template/repos.yaml file.

View file

@ -15,6 +15,9 @@ ARGS=""
# Install/remove custom CA certificates
sudo kolla_copy_cacerts
# Install projects that are in /dev-mode
sudo kolla_install_projects
if [[ ! "${!KOLLA_SKIP_EXTEND_START[@]}" ]]; then
# Run additional commands if present
. kolla_extend_start

View file

@ -6,6 +6,8 @@
# anyone in the kolla group may sudo -E (set the environment)
Defaults: %kolla setenv
Defaults secure_path="/var/lib/kolla/venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
# root may run any commands via sudo as the network seervice user. This is
# neededfor database migrations of existing services which have not been
# converted to run as a non-root user, but instead do that via sudo -E glance
@ -18,4 +20,7 @@ root ALL=(ALL) ALL
# Copy custom CA certificates to containers
%kolla ALL=(root) NOPASSWD: /usr/local/bin/kolla_copy_cacerts
# Install projects in dev-mode
%kolla ALL=(root) NOPASSWD: /usr/local/bin/kolla_install_projects
#includedir /etc/sudoers.d

View file

@ -1,6 +0,0 @@
[treasuredata]
name=TreasureData
baseurl=http://packages.treasuredata.com/4/redhat/$releasever/$basearch
gpgcheck=1
gpgkey=https://packages.treasuredata.com/GPG-KEY-td-agent
enabled=0

View file

@ -0,0 +1,24 @@
Types: deb
URIs: http://archive.ubuntu.com/ubuntu/
Suites: noble noble-updates noble-backports
Components: main universe
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
## Ubuntu security updates. Aside from URIs and Suites,
## this should mirror your choices in the previous section.
Types: deb
URIs: http://security.ubuntu.com/ubuntu/
Suites: noble-security
Components: main universe
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
## Ubuntu Cloud Archive
Types: deb
URIs: http://ubuntu-cloud.archive.canonical.com/ubuntu
Suites: noble-updates/flamingo
Components: main
Signed-By: /usr/share/keyrings/ubuntu-cloud-keyring.gpg
# NOTE(hrw): extra repositories are added into image when they are needed as
# separate files in /etc/apt/sources.list.d/ directory. For that purpose they
# are defined in kolla/template/repos.yaml file.

View file

@ -0,0 +1,24 @@
Types: deb
URIs: http://ports.ubuntu.com/ubuntu-ports/
Suites: noble noble-updates noble-backports
Components: main universe
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
## Ubuntu security updates. Aside from URIs and Suites,
## this should mirror your choices in the previous section.
Types: deb
URIs: http://ports.ubuntu.com/ubuntu-ports/
Suites: noble-security
Components: main universe
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
## Ubuntu Cloud Archive
Types: deb
URIs: http://ubuntu-cloud.archive.canonical.com/ubuntu
Suites: noble-updates/flamingo
Components: main
Signed-By: /usr/share/keyrings/ubuntu-cloud-keyring.gpg
# NOTE(hrw): extra repositories are added into image when they are needed as
# separate files in /etc/apt/sources.list.d/ directory. For that purpose they
# are defined in kolla/template/repos.yaml file.

View file

@ -7,18 +7,28 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% set venv_path='/var/lib/kolla/venv' %}
{{ macros.configure_user(name='bifrost') }}
{% set bifrost_base_packages = [
'cpio'
] %}
{% if base_package_type == 'rpm' %}
{# NOTE(mgoddard): EPEL required for nginx #}
{{ macros.enable_extra_repos(['epel']) }}
{% if install_type == 'binary' %}
{% set bifrost_base_packages = bifrost_base_packages + [
'python3.12',
'python3.12-devel'
] %}
{% endif %}
RUN echo '{{ install_type }} not yet available for {{ base_distro }}' && /bin/false
{{ macros.install_packages(bifrost_base_packages | customizable("packages")) }}
{% elif install_type == 'source' %}
ENV VENV /var/lib/kolla/venv
ENV VENV {{ venv_path }}
{% set bifrost_base_pip_packages = [
'/bifrost'
@ -26,7 +36,12 @@ ENV VENV /var/lib/kolla/venv
ADD bifrost-base-archive /bifrost-base-source
COPY build_arg.yml /tmp/build_arg.yml
RUN ln -s bifrost-base-source/* bifrost \
RUN mkdir -p /requirements \
&& curl -o /requirements/upper-constraints.txt ${UPPER_CONSTRAINTS_FILE:-https://releases.openstack.org/constraints/upper/{{ openstack_release }}} \
&& python3 -m venv --system-site-packages {{ venv_path }} \
&& ln -s bifrost-base-source/* bifrost \
&& {{ macros.install_pip(['pip', 'wheel', 'setuptools']) }} \
&& {{ macros.install_pip(bifrost_base_pip_packages | customizable("pip_packages")) }}
WORKDIR /bifrost
@ -36,12 +51,17 @@ ENV ANSIBLE_GATHER_TIMEOUT=30
{% block bifrost_ansible_install %}
{%- if base_package_type == 'deb' %}
RUN apt-get update && \
RUN apt-get --error-on=any update && \
{%- else %}
RUN echo " " && \
{%- endif %}
bash -c './scripts/env-setup.sh && \
ansible-playbook -vvvv -i /bifrost/playbooks/inventory/target /bifrost/playbooks/install.yaml \
bash -c '$VENV/bin/pip install "ansible>=12,<14" && \
$VENV/bin/ansible-galaxy collection install -r /bifrost/ansible-collections-requirements.yml && \
$VENV/bin/ansible-playbook -vvvv -i /bifrost/playbooks/inventory/target \
/bifrost/playbooks/install.yaml \
-e upper_constraints_file="/requirements/upper-constraints.txt" \
-e git_branch={{ openstack_branch_slashed }} \
-e ipa_upstream_release={{ openstack_branch }} \
-e @/tmp/build_arg.yml && \
{%- if base_package_type == 'deb' %}
apt-get clean && rm -rf /var/lib/apt/lists/*'
@ -49,7 +69,6 @@ RUN echo " " && \
dnf clean all && rm -rf /var/dnf/cache'
{%- endif %}
{% endblock %}
{% endif %}
COPY bifrost_sudoers /etc/sudoers.d/kolla_bifrost_sudoers
@ -57,4 +76,6 @@ RUN chmod 750 /etc/sudoers.d \
&& chmod 440 /etc/sudoers.d/kolla_bifrost_sudoers \
&& chown -R bifrost:bifrost /bifrost
{{ macros.kolla_patch_sources() }}
{% block bifrost_base_footer %}{% endblock %}

View file

@ -29,5 +29,7 @@ RUN rm -f $(find /lib/systemd/system/sysinit.target.wants/ ! -name systemd-tmpfi
ENTRYPOINT []
CMD [ "/sbin/init" ]
{{ macros.kolla_patch_sources() }}
{% block bifrost_deploy_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -5,15 +5,12 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% block blazar_api_header %}{% endblock %}
{% if install_type == 'binary' %}
RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
&& /bin/false
{% endif %}
{% import "macros.j2" as macros with context %}
COPY extend_start.sh /usr/local/bin/kolla_blazar_extend_start
RUN chmod 755 /usr/local/bin/kolla_blazar_extend_start
RUN chmod 644 /usr/local/bin/kolla_blazar_extend_start
{{ macros.kolla_patch_sources() }}
{% block blazar_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -9,30 +9,21 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='blazar') }}
{% if install_type == 'binary' %}
RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
&& /bin/false
{% elif install_type == 'source' %}
ADD blazar-base-archive /blazar-base-source
{% set blazar_base_pip_packages = [
'/blazar'
] %}
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN ln -s blazar-base-source/* blazar \
&& {{ macros.install_pip(blazar_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/blazar \
&& cp -r /blazar/etc/blazar/* /etc/blazar \
&& chown -R blazar: /etc/blazar
&& touch /usr/local/bin/kolla_blazar_extend_start \
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_blazar_extend_start
{% endif %}
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN touch /usr/local/bin/kolla_blazar_extend_start \
&& chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_blazar_extend_start
{{ macros.kolla_patch_sources() }}
{% block blazar_base_footer %}{% endblock %}

View file

@ -5,12 +5,9 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% block blazar_manager_header %}{% endblock %}
{% if install_type == 'binary' %}
{% import "macros.j2" as macros with context %}
RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
&& /bin/false
{% endif %}
{{ macros.kolla_patch_sources() }}
{% block blazar_manager_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -9,25 +9,6 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='ceilometer') }}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set ceilometer_base_packages = [
'openstack-ceilometer-common',
'python3-gnocchiclient',
'python3-oslo-db',
'python3-tooz'
] %}
{% elif base_package_type == 'deb' %}
{% set ceilometer_base_packages = [
'ceilometer-common',
'python3-gnocchiclient',
] %}
{% endif %}
{{ macros.install_packages(ceilometer_base_packages | customizable("packages")) }}
{% elif install_type == 'source' %}
{% set ceilometer_base_pip_packages = [
'/ceilometer'
] %}
@ -38,26 +19,25 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
ADD ceilometer-base-archive /ceilometer-base-source
ADD plugins-archive /
# NOTE(egonzalez): Remove ceilometer from constraint or will fail.
RUN ln -s ceilometer-base-source/* ceilometer \
&& sed -i 's|^ceilometer===.*$||g' requirements/upper-constraints.txt \
&& {{ macros.install_pip(ceilometer_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/ceilometer \
&& cp -r /ceilometer/etc/ceilometer/* /etc/ceilometer/ \
&& chown -R ceilometer: /etc/ceilometer \
&& sed -i 's|^exec_dirs.*|exec_dirs=/var/lib/kolla/venv/bin,/sbin,/usr/sbin,/bin,/usr/bin,/usr/local/bin,/usr/local/sbin|g' /etc/ceilometer/rootwrap.conf \
&& if [ "$(ls /plugins)" ]; then \
{{ macros.install_pip(ceilometer_base_plugins_pip_packages) }}; \
fi
{% endif %}
COPY ceilometer_sudoers /etc/sudoers.d/kolla_ceilometer_sudoers
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 750 /etc/sudoers.d \
# NOTE(egonzalez): Remove ceilometer from constraint or will fail.
RUN ln -s ceilometer-base-source/* ceilometer \
&& {{ macros.upper_constraints_remove("ceilometer") }} \
&& {{ macros.install_pip(ceilometer_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/ceilometer \
&& cp -r /ceilometer/etc/ceilometer/* /etc/ceilometer/ \
&& sed -i 's|^exec_dirs.*|exec_dirs=/var/lib/kolla/venv/bin,/sbin,/usr/sbin,/bin,/usr/bin,/usr/local/bin,/usr/local/sbin|g' /etc/ceilometer/rootwrap.conf \
&& if [ "$(ls /plugins)" ]; then \
{{ macros.install_pip(ceilometer_base_plugins_pip_packages) }}; \
fi \
&& chmod 750 /etc/sudoers.d \
&& chmod 440 /etc/sudoers.d/kolla_ceilometer_sudoers \
&& touch /usr/local/bin/kolla_ceilometer_extend_start \
&& chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_ceilometer_extend_start
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_ceilometer_extend_start
{{ macros.kolla_patch_sources() }}
{% block ceilometer_base_footer %}{% endblock %}

View file

@ -7,16 +7,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set ceilometer_central_packages = ['openstack-ceilometer-central'] %}
{% elif base_package_type == 'deb' %}
{% set ceilometer_central_packages = ['ceilometer-agent-central'] %}
{% endif %}
{{ macros.install_packages(ceilometer_central_packages | customizable("packages")) }}
{% endif %}
{{ macros.kolla_patch_sources() }}
{% block ceilometer_central_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,31 +7,15 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.enable_extra_repos(['libvirt']) }}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set ceilometer_compute_packages = [
'openstack-ceilometer-compute',
] %}
{% elif base_package_type == 'deb' %}
{% set ceilometer_compute_packages = [
'ceilometer-agent-compute',
'python3-libvirt'
] %}
{% endif %}
{{ macros.install_packages(ceilometer_compute_packages | customizable("packages")) }}
{% elif install_type == 'source' %}
{% if base_package_type == 'rpm' %}
{% set ceilometer_compute_packages = [
'python3-libvirt'
] %}
{% elif base_package_type == 'deb' %}
{% set ceilometer_compute_packages = [
'python3-libvirt'
] %}
{% endif %}
{% if base_package_type == 'rpm' %}
{% set ceilometer_compute_packages = [
'python3-libvirt'
] %}
{% elif base_package_type == 'deb' %}
{% set ceilometer_compute_packages = [
'python3-libvirt'
] %}
{% endif %}
{{ macros.install_packages(ceilometer_compute_packages | customizable("packages")) }}
@ -40,7 +24,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
RUN {{ macros.install_pip(ceilometer_compute_pip_packages | customizable("pip_packages")) }}
{% endif %}
{{ macros.kolla_patch_sources() }}
{% block ceilometer_compute_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,32 +7,20 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set ceilometer_ipmi_packages = [
'openstack-ceilometer-ipmi'
] %}
{% elif base_package_type == 'deb' %}
{% set ceilometer_ipmi_packages = [
'ceilometer-agent-ipmi'
] %}
{% endif %}
{% elif install_type == 'source' %}
{% if base_package_type == 'rpm' %}
{% set ceilometer_ipmi_packages = [
'ipmitool'
] %}
{% elif base_package_type == 'deb' %}
{% set ceilometer_ipmi_packages = [
'ipmitool'
] %}
{% endif %}
{% if base_package_type == 'rpm' %}
{% set ceilometer_ipmi_packages = [
'ipmitool'
] %}
{% elif base_package_type == 'deb' %}
{% set ceilometer_ipmi_packages = [
'ipmitool'
] %}
{% endif %}
{{ macros.install_packages(ceilometer_ipmi_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block ceilometer_ipmi_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,19 +7,10 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set ceilometer_notification_packages = ['openstack-ceilometer-notification'] %}
{% elif base_package_type == 'deb' %}
{% set ceilometer_notification_packages = ['ceilometer-agent-notification'] %}
{% endif %}
{{ macros.install_packages(ceilometer_notification_packages | customizable("packages")) }}
{% endif %}
COPY extend_start.sh /usr/local/bin/kolla_ceilometer_extend_start
RUN chmod 755 /usr/local/bin/kolla_ceilometer_extend_start
RUN chmod 644 /usr/local/bin/kolla_ceilometer_extend_start
{{ macros.kolla_patch_sources() }}
{% block ceilometer_notification_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,34 +7,16 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set cinder_api_packages = [
] %}
{% elif base_package_type == 'deb' %}
{% set cinder_api_packages = [
'cinder-api'
] %}
{% endif %}
{{ macros.install_packages(cinder_api_packages | customizable("packages")) }}
RUN mkdir -p /var/www/cgi-bin/cinder \
&& cp -a /usr/bin/cinder-wsgi /var/www/cgi-bin/cinder/cinder-wsgi
{% elif install_type == 'source' %}
{% set cinder_api_packages = [
] %}
{% set cinder_api_packages = [
] %}
{{ macros.install_packages(cinder_api_packages | customizable("packages")) }}
RUN mkdir -p /var/www/cgi-bin/cinder \
&& cp -a /var/lib/kolla/venv/bin/cinder-wsgi /var/www/cgi-bin/cinder/cinder-wsgi
{% endif %}
COPY extend_start.sh /usr/local/bin/kolla_cinder_extend_start
RUN chmod 755 /usr/local/bin/kolla_cinder_extend_start \
&& chown -R cinder: /var/www/cgi-bin/cinder \
&& chmod 755 /var/www/cgi-bin/cinder/cinder-wsgi
RUN chmod 644 /usr/local/bin/kolla_cinder_extend_start
{{ macros.kolla_patch_sources() }}
{% block cinder_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,33 +7,26 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set cinder_backup_packages = [
'nfs-utils'
] %}
{% elif base_package_type == 'deb' %}
{% set cinder_backup_packages = [
'cinder-backup',
'nfs-common'
] %}
{% endif %}
{% elif install_type == 'source' %}
{% if base_package_type == 'rpm' %}
{% set cinder_backup_packages = [
'nfs-utils'
] %}
{% elif base_package_type == 'deb' %}
{% set cinder_backup_packages = [
'nfs-common'
] %}
{% endif %}
{% if base_package_type == 'rpm' %}
{% set cinder_backup_packages = [
'device-mapper-multipath',
'lsscsi',
'nfs-utils',
'sysfsutils'
] %}
{% elif base_package_type == 'deb' %}
{% set cinder_backup_packages = [
'lsscsi',
'multipath-tools',
'nfs-common',
'sysfsutils'
] %}
{% endif %}
{{ macros.install_packages(cinder_backup_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block cinder_backup_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -9,51 +9,29 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='cinder') }}
{{ macros.enable_extra_repos(['ceph']) }}
{% if base_package_type == 'rpm' %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set cinder_base_packages = [
'ceph-common',
'lvm2',
'cryptsetup',
'openstack-cinder',
'python3-automaton',
'python3-oslo-vmware'
] %}
{% elif base_package_type == 'deb' %}
{% set cinder_base_packages = [
'ceph-common',
'cinder-common',
'lvm2',
'cryptsetup',
'python3-cephfs',
'python3-oslo.vmware',
'python3-rados',
'python3-rbd'
] %}
{% endif %}
{{ macros.install_packages(cinder_base_packages | customizable("packages")) }}
{{ macros.enable_extra_repos(['ceph', 'epel']) }}
{% elif install_type == 'source' %}
{% if base_package_type == 'rpm' %}
{% set cinder_base_packages = [
'ceph-common',
'cryptsetup',
'lvm2',
'qemu-img'
] %}
{% elif base_package_type == 'deb' %}
{% set cinder_base_packages = [
'ceph-common',
'lvm2',
'cryptsetup',
'python3-cephfs',
'python3-rados',
'python3-rbd',
'qemu-utils'
] %}
{% endif %}
{% set cinder_base_packages = [
'ceph-common',
'cryptsetup',
'lvm2',
'nvme-cli',
'qemu-img'
] %}
{% elif base_package_type == 'deb' %}
{% set cinder_base_packages = [
'ceph-common',
'cryptsetup',
'lvm2',
'nvme-cli',
'python3-cephfs',
'python3-rados',
'python3-rbd',
'qemu-utils'
] %}
{% endif %}
{{ macros.install_packages(cinder_base_packages | customizable("packages")) }}
{% set cinder_base_pip_packages = [
@ -61,21 +39,21 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
] %}
ADD cinder-base-archive /cinder-base-source
RUN ln -s cinder-base-source/* cinder \
&& {{ macros.install_pip(cinder_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/cinder \
&& cp -r /cinder/etc/cinder/* /etc/cinder/ \
&& chown -R cinder: /etc/cinder \
&& sed -i 's|^exec_dirs.*|exec_dirs=/var/lib/kolla/venv/bin,/sbin,/usr/sbin,/bin,/usr/bin,/usr/local/bin,/usr/local/sbin|g' /etc/cinder/rootwrap.conf
{% endif %}
COPY cinder_sudoers /etc/sudoers.d/kolla_cinder_sudoers
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 750 /etc/sudoers.d \
RUN ln -s cinder-base-source/* cinder \
&& {{ macros.install_pip(cinder_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/cinder \
&& cp -r /cinder/etc/cinder/* /etc/cinder/ \
&& cp /var/lib/kolla/venv/etc/pycadf/cinder_api_audit_map.conf /etc/cinder/ \
&& sed -i 's|^exec_dirs.*|exec_dirs=/var/lib/kolla/venv/bin,/sbin,/usr/sbin,/bin,/usr/bin,/usr/local/bin,/usr/local/sbin|g' /etc/cinder/rootwrap.conf \
&& chmod 750 /etc/sudoers.d \
&& chmod 440 /etc/sudoers.d/kolla_cinder_sudoers \
&& touch /usr/local/bin/kolla_cinder_extend_start \
&& chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_cinder_extend_start
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_cinder_extend_start
{{ macros.kolla_patch_sources() }}
{% block cinder_base_footer %}{% endblock %}

View file

@ -3,6 +3,9 @@
if [[ ! -d "/var/log/kolla/cinder" ]]; then
mkdir -p /var/log/kolla/cinder
fi
if [[ $(stat -c %U:%G /var/log/kolla/cinder) != "cinder:kolla" ]]; then
chown -R cinder:kolla /var/log/kolla/cinder
fi
if [[ $(stat -c %a /var/log/kolla/cinder) != "755" ]]; then
chmod 755 /var/log/kolla/cinder
fi

View file

@ -7,16 +7,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'deb' %}
{% set cinder_scheduler_packages = [
'cinder-scheduler'
] %}
{{ macros.install_packages(cinder_scheduler_packages | customizable("packages")) }}
{% endif %}
{% endif %}
{{ macros.kolla_patch_sources() }}
{% block cinder_scheduler_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -9,34 +9,23 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% if base_package_type == 'rpm' %}
{% set cinder_volume_packages = [
'nfs-utils',
'nvmetcli',
'sysfsutils',
'targetcli'
'lsscsi',
'device-mapper-multipath',
'nfs-utils',
'nvmetcli',
'sysfsutils',
'targetcli'
] %}
{% if install_type == 'binary' %}
{% set cinder_volume_packages = cinder_volume_packages + [
'python3-rtslib'
] %}
{% endif %}
{% elif base_package_type == 'deb' %}
{% set cinder_volume_packages = [
'lsscsi',
'nfs-common',
'nvme-cli',
'sysfsutils',
'targetcli-fb',
'thin-provisioning-tools',
'tgt'
'lsscsi',
'multipath-tools',
'nfs-common',
'sysfsutils',
'targetcli-fb',
'thin-provisioning-tools',
'tgt'
] %}
{% if install_type == 'binary' %}
{% set cinder_volume_packages = cinder_volume_packages + [
'cinder-volume',
'python3-rtslib-fb'
] %}
{% endif %}
{% endif %}
{{ macros.install_packages(cinder_volume_packages | customizable("packages")) }}
@ -59,7 +48,9 @@ COPY extend_start.sh /usr/local/bin/kolla_cinder_extend_start
RUN chmod 750 /etc/sudoers.d \
&& chmod 440 /etc/sudoers.d/kolla_cinder_volume_sudoers \
&& chmod 755 /usr/local/bin/kolla_cinder_extend_start
&& chmod 644 /usr/local/bin/kolla_cinder_extend_start
{{ macros.kolla_patch_sources() }}
{% block cinder_volume_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,28 +7,15 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set cloudkitty_api_packages = [
'openstack-cloudkitty-api'
] %}
{% elif base_package_type == 'deb' %}
{% set cloudkitty_api_packages = [
'cloudkitty-api'
] %}
{% endif %}
{% elif install_type == 'source' %}
{% set cloudkitty_api_packages = [
] %}
{% endif %}
{% set cloudkitty_api_packages = [
] %}
{{ macros.install_packages(cloudkitty_api_packages | customizable("packages")) }}
COPY extend_start.sh /usr/local/bin/kolla_cloudkitty_extend_start
RUN chmod 755 /usr/local/bin/kolla_cloudkitty_extend_start
RUN chmod 644 /usr/local/bin/kolla_cloudkitty_extend_start
{{ macros.kolla_patch_sources() }}
{% block cloudkitty_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -9,41 +9,21 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='cloudkitty') }}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set cloudkitty_base_packages = [
'openstack-cloudkitty-common',
] %}
{% elif base_package_type == 'deb' %}
{% set cloudkitty_base_packages = [
'cloudkitty-common',
] %}
{% endif %}
{{ macros.install_packages(cloudkitty_base_packages | customizable("packages")) }}
{% elif install_type == 'source' %}
{% set cloudkitty_base_pip_packages = [
'/cloudkitty'
] %}
ADD cloudkitty-base-archive /cloudkitty-base-source
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN ln -s cloudkitty-base-source/* cloudkitty \
&& {{ macros.install_pip(cloudkitty_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/cloudkitty \
&& cp -r /cloudkitty/etc/cloudkitty/* /etc/cloudkitty/ \
&& chown -R cloudkitty: /etc/cloudkitty
&& touch /usr/local/bin/kolla_cloudkitty_extend_start \
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_cloudkitty_extend_start
{% endif %}
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN touch /usr/local/bin/kolla_cloudkitty_extend_start \
&& chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_cloudkitty_extend_start
{{ macros.kolla_patch_sources() }}
{% block cloudkitty_base_footer %}{% endblock %}

View file

@ -7,25 +7,13 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set cloudkitty_processor_packages = [
'openstack-cloudkitty-processor',
] %}
{% elif base_package_type == 'deb' %}
{% set cloudkitty_processor_packages = [
'cloudkitty-processor',
] %}
{% endif %}
{% endif %}
{% set cloudkitty_processor_packages = [
] %}
{{ macros.install_packages(cloudkitty_processor_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block cloudkitty_processor_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -9,13 +9,14 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='collectd') }}
{{ macros.enable_extra_repos(['opstools']) }}
{% set collectd_packages = [
'collectd'
] %}
{% if base_package_type == 'rpm' %}
{{ macros.enable_extra_repos(['opstools']) }}
{% set collectd_packages = collectd_packages + [
'collectd-amqp',
'collectd-amqp1',
@ -30,12 +31,9 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
'collectd-dbi',
'collectd-disk',
'collectd-dns',
'collectd-generic-jmx',
'collectd-ipmi',
'collectd-log_logstash',
'collectd-logparser',
'collectd-mcelog',
'collectd-memcachec',
'collectd-mysql',
'collectd-netlink',
'collectd-openldap',
@ -59,7 +57,6 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% if base_arch =='x86_64' %}
{% set collectd_packages = collectd_packages + [
'collectd-hugepages',
'collectd-iptables',
'collectd-pcie-errors',
'collectd-pmu',
'collectd-rdt',
@ -72,11 +69,12 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.install_packages(collectd_packages | customizable("packages")) }}
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 755 /usr/local/bin/kolla_extend_start \
RUN chmod 644 /usr/local/bin/kolla_extend_start \
&& chown -R collectd /var/lib/collectd \
&& chown -R collectd /etc/collectd* \
&& chown -R collectd /var/run/
{{ macros.kolla_patch_sources() }}
{% block collectd_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -1,4 +1,4 @@
FROM {{ namespace }}/{{ infra_image_prefix }}base:{{ tag }}
FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
{% block labels %}
LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
{% endblock %}
@ -12,6 +12,11 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
'cronie',
'logrotate'
] %}
# NOTE(hrw): In RHEL 9 family it is done by systemd timer, we want cron to
# handle it.
COPY logrotate /etc/cron.daily/logrotate
{% elif base_package_type == 'deb' %}
{% set cron_packages = [
'cron',
@ -22,7 +27,9 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.install_packages(cron_packages | customizable("packages")) }}
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 755 /usr/local/bin/kolla_extend_start
RUN chmod 644 /usr/local/bin/kolla_extend_start
{{ macros.kolla_patch_sources() }}
{% block cron_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -3,15 +3,19 @@
CRON_LOGROTATE_CURRENT_PATH="$(find /etc/cron* -name logrotate)"
CRON_LOGROTATE_CURRENT_SCHEDULE=$(echo "${CRON_LOGROTATE_CURRENT_PATH}" | sed -r 's/(.*)(hourly|daily|weekly|monthly)(.*)/\2/g')
# Pass only for hourly|daily|weekly|monthly
if [[ "${KOLLA_LOGROTATE_SCHEDULE:-undefined}" =~ hourly|daily|weekly|monthly ]]; then
if [ -z $CRON_LOGROTATE_CURRENT_PATH ]; then
echo "logrotate is not handled by cron"
else
# Pass only for hourly|daily|weekly|monthly
if [[ "${KOLLA_LOGROTATE_SCHEDULE:-undefined}" =~ hourly|daily|weekly|monthly ]]; then
CRON_LOGROTATE_DESIRED_PATH="/etc/cron.${KOLLA_LOGROTATE_SCHEDULE}/logrotate"
CRON_LOGROTATE_DESIRED_PATH="/etc/cron.${KOLLA_LOGROTATE_SCHEDULE}/logrotate"
if [[ "${CRON_LOGROTATE_CURRENT_PATH}" != "${CRON_LOGROTATE_DESIRED_PATH}" ]]; then
mv ${CRON_LOGROTATE_CURRENT_PATH} ${CRON_LOGROTATE_DESIRED_PATH}
CRON_LOGROTATE_CURRENT_SCHEDULE="${KOLLA_LOGROTATE_SCHEDULE}"
if [[ "${CRON_LOGROTATE_CURRENT_PATH}" != "${CRON_LOGROTATE_DESIRED_PATH}" ]]; then
mv ${CRON_LOGROTATE_CURRENT_PATH} ${CRON_LOGROTATE_DESIRED_PATH}
CRON_LOGROTATE_CURRENT_SCHEDULE="${KOLLA_LOGROTATE_SCHEDULE}"
fi
fi
fi
echo "[i] Cron schedule for logrotate is currently set to: ${CRON_LOGROTATE_CURRENT_SCHEDULE}."
echo "[i] Cron schedule for logrotate is currently set to: ${CRON_LOGROTATE_CURRENT_SCHEDULE}."
fi

18
docker/cron/logrotate Executable file
View file

@ -0,0 +1,18 @@
#!/bin/sh
# skip in favour of systemd timer
if [ -d /run/systemd/system ]; then
exit 0
fi
# this cronjob persists removals (but not purges)
if [ ! -x /usr/sbin/logrotate ]; then
exit 0
fi
/usr/sbin/logrotate /etc/logrotate.conf
EXITVALUE=$?
if [ $EXITVALUE != 0 ]; then
/usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
fi
exit $EXITVALUE

View file

@ -12,13 +12,11 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.install_packages(cyborg_agent_packages | customizable("packages")) }}
{% if install_type == 'source' %}
{% set cyborg_agent_pip_packages = [ ] %}
RUN {{ macros.install_pip(cyborg_agent_pip_packages | customizable("pip_packages")) }}
{% endif %}
{{ macros.kolla_patch_sources() }}
{% block cyborg_agent_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -6,20 +6,14 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% block cyborg_api_header %}{% endblock %}
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
&& /bin/false
{% elif install_type == 'source' %}
{% set cyborg_api_packages = [
] %}
{% set cyborg_api_packages = [
] %}
{{ macros.install_packages(cyborg_api_packages | customizable("packages")) }}
{% endif %}
COPY extend_start.sh /usr/local/bin/kolla_cyborg_extend_start
RUN chmod 755 /usr/local/bin/kolla_cyborg_extend_start
RUN chmod 644 /usr/local/bin/kolla_cyborg_extend_start
{{ macros.kolla_patch_sources() }}
{% block cyborg_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -9,31 +9,23 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='cyborg') }}
{% if install_type == 'binary' %}
RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
&& /bin/false
{% elif install_type == 'source' %}
ADD cyborg-base-archive /cyborg-base-source
{% set cyborg_base_pip_packages = [
'/cyborg'
] %}
RUN ln -s cyborg-base-source/* cyborg \
&& {{ macros.install_pip(cyborg_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/cyborg/ \
&& cp -r /cyborg/etc/cyborg/* /etc/cyborg/
{% endif %}
COPY extend_start.sh /usr/local/bin/kolla_extend_start
COPY cyborg_sudoers /etc/sudoers.d/kolla_cyborg_sudoers
RUN chmod 750 /etc/sudoers.d \
RUN ln -s cyborg-base-source/* cyborg \
&& {{ macros.install_pip(cyborg_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/cyborg/ \
&& cp -r /cyborg/etc/cyborg/* /etc/cyborg/ \
&& chmod 750 /etc/sudoers.d \
&& touch /usr/local/bin/kolla_cyborg_extend_start \
&& chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_cyborg_extend_start
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_cyborg_extend_start
{{ macros.kolla_patch_sources() }}
{% block cyborg_footer %}{% endblock %}

View file

@ -5,5 +5,9 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% block cyborg_conductor_header %}{% endblock %}
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block cyborg_conductor_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,14 +7,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set designate_api_packages = ['openstack-designate-api'] %}
{% elif base_package_type == 'deb' %}
{% set designate_api_packages = ['designate-api'] %}
{% endif %}
{{ macros.install_packages(designate_api_packages | customizable("packages")) }}
{% endif %}
{{ macros.kolla_patch_sources() }}
{% block designate_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -25,5 +25,7 @@ RUN mkdir -p /var/lib/kolla/ /var/lib/{{ designate_backend_bind_name }}/ /run/{{
&& chown -R root: /var/lib/{{ designate_backend_bind_name }} /run/{{ designate_backend_bind_name }} \
&& chmod 755 /run/{{ designate_backend_bind_name }}
{{ macros.kolla_patch_sources() }}
{% block designate_backend_bind9_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -9,47 +9,25 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.configure_user(name='designate') }}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set designate_base_packages = [
'openstack-designate-common',
'python3-oslo-reports',
'python3-suds',
'python3-tooz'
] %}
{{ macros.install_packages(designate_base_packages | customizable("packages")) }}
{% elif base_package_type == 'deb' %}
{% set designate_base_packages = [
'designate-common',
'python3-tooz'
] %}
{{ macros.install_packages(designate_base_packages | customizable("packages")) }}
{% endif %}
{% elif install_type == 'source' %}
{% set designate_base_pip_packages = [
'/designate'
] %}
ADD designate-base-archive /designate-base-source
RUN ln -s designate-base-source/* designate \
&& {{ macros.install_pip(designate_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/designate \
&& cp -r /designate/etc/designate/* /etc/designate/ \
&& mv /etc/designate/rootwrap.conf.sample /etc/designate/rootwrap.conf \
&& chown -R designate: /etc/designate \
&& sed -i 's|^exec_dirs.*|exec_dirs=/var/lib/kolla/venv/bin,/sbin,/usr/sbin,/bin,/usr/bin,/usr/local/bin,/usr/local/sbin|g' /etc/designate/rootwrap.conf
{% endif %}
COPY designate_sudoers /etc/sudoers.d/kolla_designate_sudoers
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 750 /etc/sudoers.d \
RUN ln -s designate-base-source/* designate \
&& {{ macros.install_pip(designate_base_pip_packages | customizable("pip_packages")) }} \
&& mkdir -p /etc/designate \
&& cp -r /designate/etc/designate/* /etc/designate/ \
&& sed -i 's|^exec_dirs.*|exec_dirs=/var/lib/kolla/venv/bin,/sbin,/usr/sbin,/bin,/usr/bin,/usr/local/bin,/usr/local/sbin|g' /etc/designate/rootwrap.conf \
&& chmod 750 /etc/sudoers.d \
&& chmod 640 /etc/sudoers.d/kolla_designate_sudoers \
&& touch /usr/local/bin/kolla_designate_extend_start \
&& chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_designate_extend_start
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_designate_extend_start
{{ macros.kolla_patch_sources() }}
{% block designate_base_footer %}{% endblock %}

View file

@ -7,17 +7,10 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set designate_central_packages = ['openstack-designate-central'] %}
{% elif base_package_type == 'deb'%}
{% set designate_central_packages = ['designate-central'] %}
{% endif %}
{{ macros.install_packages(designate_central_packages | customizable("packages")) }}
{% endif %}
COPY extend_start.sh /usr/local/bin/kolla_designate_extend_start
RUN chmod 755 /usr/local/bin/kolla_designate_extend_start
RUN chmod 644 /usr/local/bin/kolla_designate_extend_start
{{ macros.kolla_patch_sources() }}
{% block designate_central_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,14 +7,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set designate_mdns_packages = ['openstack-designate-mdns'] %}
{% elif base_package_type == 'deb' %}
{% set designate_mdns_packages = ['designate-mdns'] %}
{% endif %}
{{ macros.install_packages(designate_mdns_packages | customizable("packages")) }}
{% endif %}
{{ macros.kolla_patch_sources() }}
{% block designate_mdns_footer %}{% endblock %}
{% block footer %}{% endblock %}

View file

@ -7,14 +7,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{% if install_type == 'binary' %}
{% if base_package_type == 'rpm' %}
{% set designate_producer_packages = ['openstack-designate-producer'] %}
{% elif base_package_type == 'deb' %}
{% set designate_producer_packages = ['designate-producer'] %}
{% endif %}
{{ macros.install_packages(designate_producer_packages | customizable("packages")) }}
{% endif %}
{{ macros.kolla_patch_sources() }}
{% block designate_producer_footer %}{% endblock %}
{% block footer %}{% endblock %}

Some files were not shown because too many files have changed in this diff Show more