| Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: I5973943fe83bbb00cfc8623c0cd4d4b98b369315
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
|
|
Repos marked build_only: true are backed up before handle_repos()
overwrites them and restored at the end of each image build, so CI
mirror URLs are not baked into the final image.
The cleanup RUN was injected into every Dockerfile, not just images
that called handle_repos() for those repos. Child images with no
backup fell through to "rm -f", deleting the inherited repo file
(e.g. debian.sources in bifrost-base, breaking cpio install).
Fix by adding a {repo}.enabled sentinel that handle_repos creates
when it processes a build_only repo, making the cleanup conditional
on that sentinel.
Change-Id: Ie5b9970a4575b6258dc238059d3f33ddfe155789
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
|
|
Change-Id: Ic088f5a85f3c033b0c5024d0b2e1bc889c52648d
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
|
|
BaseOS and AppStream for CentOS/Rocky
ubuntu, ubuntu-security for Ubuntu
debian, debian-security for Debian
ubuntu-cloud-archive is not really a base repo - so
removing it from ubuntu.sources
Change-Id: Iab98de963f2e8532389b7563bb572d8aa20c7aa6
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
|
|
Change-Id: I7513f1ab627aa5137e16777ca6bee600e14a00e9
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
|
|
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>
|
|
Change-Id: Ic8bfaedb1e94dd8b64fa8a63d9cd3b76a2b73ffb
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
|
|
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>
|
|
Commit 79a234239516b94b1b79c7ddafcc4fbe4e3ba155 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
|
|
Change-Id: I5f2177b7c2edc0e35ed2e8e9bdfc4be2f262309f
|
|
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
|
|
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
|
|
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>
|
|
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
|
|
|
|
This reverts commit 25e9602845fca7ca5b7a5c55fe5b71be0b137f04.
Reason for revert: we updated to newer Jinja.
Change-Id: If666bb4aedd7bb4e3041f0672c3b70e1bb5d36b6
|
|
Updates the CentOS images to use centos-release-ceph-pacific. This is
in line with Ubuntu which gets Pacific from UCA. Debian remains on
Nautilus.
Change-Id: Ie1e77f9c7d83538c051362a8972745f184c72019
|
|
|
|
This reverts commit 383364e671fb82e3c0ddca37a4690a1a33be3b54.
Reason for revert: Xena stay in jinja 3.0.1 which still provides contextfilter. In RDO, jinja is consumed from CentOS repo which still provides version 2.11, so this change is causing problems.
I'm proposing to revert this change and retake it Y release when jinja is updated to 3.1 which will not provide contextfilter.
Change-Id: I19c2a15fb0917d2a81daf706a4e02fd377e53b3d
|
|
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
|
|
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
|
|
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
|
|
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
|
|
|
|
* 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
|
|
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
|
|
- CentOS single, multiple and one with missing repo
- Debian single, multiple and one with missing repo
- TripleO
Change-Id: Ide4868d031bd84b1a6935aada7d0e7627f11bf37
|
|
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
|
|
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
|
|
/var/lib/apt/lists/ can take several MBs so get rid of them after
packages are installed.
Change-Id: Icfff55d92fa5c865f09db5112da28bf452a5a221
|
|
|
|
Normally we update APT lists when 'base' image is built. But when some
time pass those lists get out-of-date and images can not be built.
CentOS based images handle that without issues because YUM updates
repository data whenever they are out-of-date.
Change-Id: I5ba5b2067566639b399329b878027d4513567f71
|
|
Running flake tests raises warning for:
"First line should end with a period"
Change-Id: I9714b350900500c997ef0e54e9830e232fcd6ce7
|
|
Fix the word 'contruct' -> 'construct'.
Change-Id: Ib5da7897a423eb225fb67d0e0d1e31b20e6961e2
|
|
- Adds debian_package_install method to the jinja environment
that will return the necessary set of commands needed to
install packages via apt-get and/or URLs to .deb packages
- Updates install_packages macro to make use of the method
above
Change-Id: Ie9318a7def54b5034ba91375fd8fd3b589d18349
Partially-implements: blueprint third-party-plugin-support
|