aboutsummaryrefslogtreecommitdiff
path: root/kolla/template
AgeCommit message (Collapse)AuthorFilesLines
2021-08-24Debian/Ubuntu: handle APT keys in proper wayMarcin Juszkiewicz2-37/+177
apt-key is deprecated and in Debian 'bullseye' it complain when we use it the way we did. The right way is to store key files in separate directory and then, for each repo source file, point to proper key. And this is what this patch does. Both distros use the same keys now. More info: https://michael-prokop.at/blog/2021/02/16/how-to-properly-use-3rd-party-debian-repository-signing-keys-with-apt/ Change-Id: Ie19bf46236907d79cb42a5e94cd1067e952b8cbb
2021-08-04Merge "drop leftovers of RHEL support"Zuul1-6/+0
2021-07-29Update code to Jinja 3.0 styleMarcin Juszkiewicz2-4/+4
Xena cycle uses Jinja 3.0 so let update Kolla's code for it. From Jinja2 documentation: jinja2.contextfunction(f: F) → F Pass the context as the first argument to the decorated function. Deprecated since version 3.0: Will be removed in Jinja 3.1. Use pass_context() instead. jinja2.contextfilter(f) Pass the context as the first argument to the decorated function. Deprecated since version 3.0: Will be removed in Jinja 3.1. Use pass_context() instead. Also bumped version in requirements.txt to same as in openstack/requirements Change-Id: I51fbb7b9ff7c29cb355437efa4576be9bc035699
2021-07-28drop leftovers of RHEL supportMarcin Juszkiewicz1-6/+0
As a project we never built RHEL based images so support for them was not tested. Change-Id: I27dfe34ade088228d71f6857ec4f3ab28ee63915
2021-05-11Drop ppc64le supportMarcin Juszkiewicz1-18/+0
We do not test support for ppc64le on CI or other systems. In previous cycles it was used by TripleO and now they have own way. Change-Id: Ibd955869a6f9485dfa4d08a8ad2f4b28b7d59c15
2021-04-26move to Debian 'bullseye'Marcin Juszkiewicz1-2/+0
Bullseye is now in hard freeze cycle and goes for release. https://release.debian.org/bullseye/freeze_policy.html Co-Authored-By: Michal Nasiadka <mnasiadka@gmail.com> Change-Id: I543965a2741cebfa759576a4c75669a7bacd4208
2021-04-21rabbitmq: Move to packagecloudMichal Nasiadka1-8/+10
bintray is being shut down 1st of May 2021, rabbitmq docs direct users to packagecloud - so let's move. Change-Id: I499251d13ca77aea2215f8a879b7bb8dd51f1c9f
2021-04-13centos: enable repos where neededMarcin Juszkiewicz1-0/+6
With RDO use we did not disabled some repositories. This patch disable them and enable where needed. Change-Id: Ia9d537fe9c1ad54789d2bfb4027254fbb3defe7e
2021-04-07rabbitmq: use Focal repoMarcin Juszkiewicz1-4/+3
Change-Id: Ie4eacb57b106c0f7c0a27b181d843101d7b26179
2021-04-06mariadb: use Focal repo for Ubuntu/AArch64Marcin Juszkiewicz1-1/+1
Change-Id: I01ded1ca42b3136491ee084c6ea687f45d93f60e
2021-03-29Debian: use Wallaby specific repo for libvirtMarcin Juszkiewicz1-2/+2
I need to keep libvirt 5.0.0 for <Wallaby branches. Change-Id: I2dd4d1183d567ceec70a024f985a35bc991c318f
2021-03-22ubuntu: drop not existing erlang repo on obs.linaro.orgMarcin Juszkiewicz1-1/+0
Change-Id: I6793b6e6fcd3a193db6e181431f62e4f2749ecdf
2021-03-05Upgrade from ELK6 to ELK7 FOSS releaseDoug Szumski1-18/+19
Upgrade to the latest ELK OSS release. Due to the licensing change, this effectively pins us to 7.10.x which is supported until 2022-05-11 [1]. This patch also takes advantage of the ARM artifacts which have been kindly provided since the 7.8.0 release [2]. [1] https://www.elastic.co/support/eol [2] https://www.elastic.co/blog/elasticsearch-on-arm Change-Id: Icfa3db5788b25f70ee75411dbaf20d8d4a6a734b
2021-02-06Debian: use libvirt 7.0.0 from Linaro OBS repositoryMarcin Juszkiewicz1-0/+1
Nova requires libvirt 6.0.0 or newer in Wallaby. So I backported 7.0.0 from Debian 'testing'. AArch64 and x86-64 are covered. Change-Id: Ia678cd43b5ce53aee528674280f674c596a278ff
2020-12-11centos: do not enable PowerTools repo in baseMarcin Juszkiewicz1-0/+3
This repo is only needed for source openstack-base. Change-Id: I835c18424153f8529a37fc78e16d2becacb71263
2020-12-09Support CentOS 8.3abraden1-4/+4
Backport this until Train. CentOS 8.3 renamed system repos. [1] This caused failures when disabling and enabling. More details in the referenced bug report. Notice CentOS 8.2 and below will no longer work. [1] https://wiki.centos.org/Manuals/ReleaseNotes/CentOS8.2011#Yum_repo_file_and_repoid_changes Change-Id: I2d67b3ed7b7c521bc755ec9a87365c9962a9eeff Closes-Bug: #1907213 Co-Authored-By: Radosław Piliszek <radoslaw.piliszek@gmail.com> Depends-On: https://review.opendev.org/766211
2020-08-07ubuntu: move to 20.04 FocalMarcin Juszkiewicz1-9/+10
There is a time once every 2 years when ubuntu team releases new LTS release. And then UCA joins with binary packages for current OpenStack development cycle. It is this time for Ubuntu 20.04 'focal'. Depends-On: https://review.opendev.org/745156 Change-Id: I045aa6b4b4fd83fbe7d1fda89549f0ef1e88ec12
2020-07-22Merge "fluentd: migrate to td-agent 4 where possible"Zuul1-2/+5
2020-07-20fluentd: migrate to td-agent 4 where possibleMarcin Juszkiewicz1-2/+5
td-agent 4 got released for all distributions we support. For both x86-64 and aarch64 architectures. Change-Id: I86ecdc1ac45dfd76b94a34d1b837f7c0bc975dcd
2020-07-10Merge "Upgrade to Logstash 6"Zuul1-0/+7
2020-07-07Upgrade to Logstash 6Doug Szumski1-0/+7
Elasticsearch and Kibana 6 are used on all distros, but Logstash is still pinned at 2 which is not compatible. See the product compatibility matrix [1]. [1] https://www.elastic.co/support/matrix#matrix_compatibility Partial-Bug: #1884090 Change-Id: I1579e762bcfb07f0baa73507eb9955ae2f83c4ec
2020-07-07Remove opendaylight imageMichal Nasiadka1-1/+0
It has been deprecated in Ussuri cycle. Change-Id: I6d3174e8b52cb4d1f2eca4d85d506665dafe2406
2020-07-06Remove sensu imagesMarcin Juszkiewicz1-1/+0
They have been deprecated in Ussuri [1]. [1]: https://review.opendev.org/#/c/711636/ Change-Id: I0cfde46c29eedce77c70c1c677220814a801ff3a
2020-06-23CentOS/AArch64: RabbitMQ is back!Marcin Juszkiewicz1-1/+1
CentOS 8.2 has Erlang and RabbitMQ available in 'messaging/rabbitmq-38' repository. We use it to grab Erlang while RabbitMQ comes from upstream (like on x86-64). Change-Id: I2559267d120081f2e5eabc9d966b019517a5ad5d
2020-06-04Remove centos-nfs-ganesha28 from repos.yamlMark Goddard1-3/+0
Follow up to I913efffe6a1d8a0210b1158261c77d0d45ac3147. Change-Id: Ic6785e93dfae45b81a4cb3bf9156a822de835fde
2020-05-17CentOS: disable more reposMarcin Juszkiewicz1-5/+8
'messaging-rabbitmq' and 'opstools' are enabled by RDO delorean-deps.repo file 'influxdb' was also enabled Depends-On: https://review.opendev.org/728687 Change-Id: Ibb0a7edc9e5632c1b89a7d52601f55a223b49dfb
2020-04-17kibana/debian: use upstream package on all architecturesMarcin Juszkiewicz1-2/+1
Upstream kibana package ships x86_64 binaries of NodeJS. I usually repacked package without them to have something for other architectures. Instead let us install upstream. Then on non-x86 archs we add nodejs from distribution and remove x86-64 binaries. Change-Id: Ia9feac726a60250215b1bc78bf90dc68ac6f956a
2020-04-15Merge "Remove support for CentOS 7"Zuul2-29/+9
2020-04-15Remove support for CentOS 7Marcin Juszkiewicz2-29/+9
With the move to RHEL/CentOS 8 we no longer have Python 2 in our images so there is no need for checking which Python version (2.x or 3.x) is used inside of containers. We also no longer have to support yum as a value for distro_package_manager. Partially-Implements: blueprint centos-rhel-8 Change-Id: Ie45cf3465fedddbde7856961527421883ba3d5c9
2020-04-09Upgrade Elasticsearch and Kibana to 6.xSylvain Baubeau1-10/+10
Start using oss tagged binaries. These binaries contain only features that are available under the Apache 2.0 license. Implements: blueprint elasticsearch-kibana-version-upgrade Co-authored-by: Dincer Celik <hello@dincercelik.com> Change-Id: I8b52b2630a72393bf4b9c7095fc67db6c36c27fa
2020-04-08kibana: use Linaro provided package for Ubuntu/aarch64Marcin Juszkiewicz1-1/+1
Package is in 'debian-buster' repo but it is usable on Ubuntu as well. It is repackaged upstream one. Change-Id: I8bc90bff4b96333a131f019b1c3c166f7f39c35f
2020-04-06Upgrade RabbitMQ to 3.8Dincer Celik1-5/+14
Upgrade and pin RabbitMQ to 3.8. Upgrade Erlang to 22 to meet requirements: https://www.rabbitmq.com/which-erlang.html Start using bintray repository provided by RabbitMQ. Linaro builds will be used for aarch64. Implements: blueprint rabbitmq-version-upgrade Closes-Bug: #1848452 Change-Id: I3d775fd832f2603181da89009cebc1370a61a023
2020-03-19Merge "CentOS 8: Enable hacluster and masakari images"Zuul1-0/+1
2020-03-18elasticsearch: use proper repo for debian/aarch64Marcin Juszkiewicz1-1/+1
Change-Id: I4aba1c527f0be61ae54d47efaf0ab3c2d69beda3
2020-03-13kibana, nova-libvirt: handle it properly for non-x86Marcin Juszkiewicz1-0/+7
Upstream kibana package contains NodeJS x86-64 binaries so can not be used directly on non-x86 architectures. I took upstream packages, removed NodeJS binary from it and added 'nodejs' dependency. Package is present in my Linaro OBS repository where I keep other packages needed for aarch64 kolla run. Via APT pinning I mark them as not wanted so they are not used on any architecture with two exceptions: 1. libvirt - we need fixed version to be able to use ThunderX servers 2. kibana - to be able to run it at all For x86-64 upstream kibana package is used. Closes-bug: #1867365 Change-Id: I456402849022100bde1fffdfbf6292b35690f0f2
2020-03-12CentOS 8: Enable hacluster and masakari imagesMarcin Juszkiewicz1-0/+1
CentOS 8.1 came with HA repo. So we can use it. hacluster-pcs image is disabled as we lack 'crmsh' package for it. Partially-Implements: blueprint centos-rhel-8 Co-Authored-By: Mark Goddard <mark@stackhpc.com> Change-Id: I1c786eda399eca4464c9d68ac040c2965350f775
2020-03-03Merge "Throw TypeError in repository enable/disable macros"Zuul1-0/+3
2020-03-03Use StorageSIG repos for Ceph in CentOS8Alfredo Moralejo1-4/+2
Storage SIG has built Ceph Nautilus and Ganesha for CentOS8 in CentOS Build System. Let's switch to use them in kolla. Change-Id: Id37dca84c4eb918aaf2d3c036ef5387fe75988dd
2020-02-26Throw TypeError in repository enable/disable macrosMark Goddard1-0/+3
Currently we do not validate the type of the reponames argument to the enable_extra_repos and disable_extra_repos macros. It should be a list, but we merged a call where the argument was a string, which interpreted as a list of single characters ('e', 'p', 'e', 'l'), and silently ignored. This change validates that the reponames argument is a list to avoid this issue. Change-Id: I497c8b2c1dc548e678698474d3604664cf8eeb07
2020-02-26Actually disable EPEL, and epel-modularMark Goddard1-0/+2
The disable_extra_repos macro accepts a list as its only argument. We were calling it like this to disable EPEL: disable_extra_repos('epel') The macro interpreted this as a request to disable three repos, e, p, l. Thanks Python! Type validation to be improved separately. Additionally, on CentOS 8 the EPEL repository was not included in the repository mapping file, repos.yaml. There is also another EPEL repository on CentOS 8, epel-modular, which is enabled by default after installing epel-release. This change adds mappings for epel and epel-modular repos to repos.yaml, and fixes the disabling of epel in the base image, as well as disabling epel-modular. There are some cases where EPEL is still used (it seemed a bit too easy...), and the repository has been enabled for these images: * bifrost-base (nginx) * ironic-conductor (C7 only, shellinabox) * freezer-base (C7 only, trickle) * gnocchi-base (C8 binary only, python3-boto3) * mariadb (pv) * mongodb (C7 only, mongodb) * nova-spicehtml5proxy (C7 only, spice-html5) * telegraf (C7 only, python2-pip) A few other things were changed: * ironic-conductor does not require the ceph repo * python3-pika is no longer installed in the openstack-base image Related: blueprint remove-epel Change-Id: I3761825239dfc462072383cde6276c4fb3e1bf12
2020-02-04aarch64: enable influxdb and telegraf for Debian/UbuntuMarcin Juszkiewicz1-0/+2
Turns out that upstream provides repos also for aarch64. CentOS one is not usable due to wrong arch name used (arm64 instead of aarch64). Change-Id: I1b4ef1fae0914d6826af5456cc9ea53bb26972ee
2020-01-31Merge "CentOS 8: Use upstream Ceph/master"Zuul1-0/+5
2020-01-30Merge "CentOS 8: Update packages in images"Zuul2-0/+13
2020-01-30CentOS 8: Use upstream Ceph/masterMichal Nasiadka1-0/+5
The only Ceph version that will support CentOS 8 is Octopus. It will be released end of March 2020 - so for now let's use master. Change-Id: I5955acb41e7346802d76f4f2b244cbf5c36f5bf2 Partially-Implements: blueprint centos-rhel-8
2020-01-29CentOS 8: Update packages in imagesMark Goddard2-0/+13
* Some further changes for python2 vs python3 packages * Allow rabbitmq 3.7.*, since a newer erlang is available * Switch from qemu-img-ev to qemu-img on CentOS 8 * bridge-utils no longer available on CentOS 8 * libvirt-daemon-driver-lxc no longer available on CentOS 8 * Mark some more images buildable for CentOS 8 Change-Id: Iaf5b68ff6d944ae730ca0b1d5832172c106a6c08 Partially-Implements: blueprint centos-rhel-8 Partially-Implements: blueprint centos-rhel-python-3
2020-01-02centos: disable EPEL by defaultMarcin Juszkiewicz2-4/+22
Our images use 'scsi-target-utils' from EPEL and then can be built without it. So let's disable this repository right after installing package from it. Images can enable EPEL with 'enable_extra_repos' macro. Also added 'disable_extra_repos' macro as we have some images in a need. Change-Id: Id70474e7602b531b63fdc11ae690fd9ed33def74
2019-12-17add more tests for enable_repos template methodMarcin Juszkiewicz2-17/+18
- CentOS single, multiple and one with missing repo - Debian single, multiple and one with missing repo - TripleO Change-Id: Ide4868d031bd84b1a6935aada7d0e7627f11bf37
2019-11-29Enable repos only when neededMarcin Juszkiewicz2-0/+120
Disable external repositories by default and enable only when needed. Depends-on: https://review.opendev.org/696480 Implements: blueprint repos-off-by-default Change-Id: Icf2a8397a8349e0fe849d88d160409fd234480a9
2019-03-17Introduce clean_package_cacheEmilien Macchi1-3/+4
Default to true (to maintain backward compatibility), this parameter will allow to disable the Package cache cleaning when building the Kolla images. In TripleO, we are investigating how we can accelerate the builds by not cleaning the Yum cache and this patch will help us to do so. Also included same for deb package_install method. Co-Authored-By: Jon Schlueter <jschluet@redhat.com> Change-Id: I0adc85302dfe0411d362c899f3e0d6a0019680d4
2018-12-24Ignore undefined values in customizable filterMark Goddard1-0/+7
When using the customizable filter to modify variables, if a template overrides file is shared between multiple sets of images, it is sometimes possible that a customised variable does not exist for a set of images. A specific example: My template overrides file has this: {% set ironic_inspector_packages_append = ["python-pip"] %} Normally I build binary/centos images. kolla-build -t binary Sometimes however I build a bifrost centos/source image, because bifrost does not support binary images. kolla-build -t source bifrost The ironic inspector image does not define ironic_inspector_packages for the source build, since it does not need any. {% elif install_type == 'source' %} {% if base_distro in ['debian', 'ubuntu'] %} {% set ironic_inspector_packages = ['iptables'] %} {% endif %} {{ macros.install_packages(ironic_inspector_packages | customizable("packages")) }} The install_packages macro copes with the undefined variable, however the customizable filter does not handle the base variable being undefined if a customised example exists. This change allows the customizable filter to ignore undefined variables, even if they have been customised. Change-Id: Ibe2fc91f5b6ceee8f937dd73c235128b2db525b1 Closes-Bug: #1809491