| Age | Commit message (Collapse) | Author | Files | Lines |
|
[tool.setuptools.data-files] does not support recursive directory
installation. The old setup.cfg [files] worked because PBR's
FilesConfig.expand_globs() used os.walk() to expand docker/*, but
this hook is not triggered by the pbr.build PEP-517 backend.
Move docker/ into kolla/ and use [tool.setuptools.package-data]
instead. Update kolla_worker._get_images_dir() to check the kolla
package directory first so both editable and regular installs work.
Change-Id: I4fc452c03740ef22ebbb4e8d0d86c4f4783e2d09
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
|
|
|
|
The build-date label was rendered into a LABEL instruction on line
3 of every Dockerfile template, immediately after FROM.
Because Docker invalidates the cache for a changed instruction and
all subsequent layers, a date change caused a full rebuild of every
image on each new calendar day, even when nothing else had changed.
Fix this by removing build-date from the Dockerfile templates and
applying it as a --label argument at build time via image.labels.
Labels passed on the build command line are not part of the
Dockerfile cache key, so the date is still recorded in the image
metadata without affecting layer caching.
Change-Id: I8ef0d85bab1a999a4d09f7cbf0c088ca00fdcf77
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
|
|
This is no longer required
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/993932
Change-Id: I20a2ff0a97b9fad86b6103ec488a39e42cdba091
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
|
|
|
|
We have dropped mod_wsgi support from services in [1].
[1]: https://review.opendev.org/c/openstack/kolla-ansible/+/982414
Change-Id: Ie5da8427706dfb74bad4e174c990355a6870114c
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
|
|
The hostmonitor calls crmadmin and cibadmin with run_as_root=True,
but the sudoers file only includes crm_mon. Since the container runs
as the masakari user, sudo calls to crmadmin and cibadmin fail with
"password required", causing the hostmonitor to skip all host
monitoring every cycle.
This completely breaks automatic instance evacuation in HCI
(hyper-converged) deployments where all nodes run the full pacemaker
stack instead of pacemaker-remote. In separated deployments, the
crmadmin code path is skipped because pacemaker_remote_status=True,
which is why this bug has gone undetected.
Closes-Bug: #2144074
Change-Id: I22bbaa1f1fd1f3d53de48ec7c0099d028118448b
Signed-off-by: Kim soo <popododo0720@naver.com>
|
|
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>
|
|
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/954903
Change-Id: Icc2fe528956a0fb47dd66344d414c81212705480
Signed-off-by: Michal Nasiadka <mnasiadka@gmail.com>
|
|
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
|
|
It does not exist in repos.yaml since [1].
[1]: Id585c7744ba130ad1dfc28138fb0f9e6eeae771d
Change-Id: Ic74eba44fc6e5508976de24cf20a5039f3292731
|
|
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
|
|
Tim Shearer started it in 1d96a2bbe1b536b7d7f4cdbf55c6dabae6d058ae.
Since all extend_start files are sourced rather than executed, the executable
bits are now cleared throughout the project.
Change-Id: Ia1797c32fc6a35f9f077c673abf4d8e16e51a760
|
|
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
|
|
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
|
|
Big patch drops all mentions of binary images support. Suggestions are
welcome how to split it into parts or handle better.
Change-Id: I5d5a46c6ce7734ceb8b844e17b43e359d7cac6e3
|
|
Adds Cyrus SASL packages necessary for the DIGEST-MD5 and SCRAM-SHA-256
mechanisms. These can be used for libvirt SASL authentication.
Follow up to I13e19ca29eeab40cd08fa3afe2cdf7531867f81b.
Partial-Bug: #1964013
Change-Id: Ic4b6171789c3d360317599310492771bd78828ec
|
|
This patch switches masakari-monitors image to follow nova-compute
and ceilometer-compute images.
This will be used and required after [1] merges.
Usage of libvirt-python from PyPI has already proven to be
problematic on CentOS Stream in our stable branches. [2]
With this patch we avoid those issues as well.
[1] https://review.opendev.org/c/openstack/masakari-monitors/+/804913
[2] https://review.opendev.org/c/openstack/kolla/+/797102
Depends-On: https://review.opendev.org/c/openstack/masakari-monitors/+/804913
Change-Id: I7d4788f5b63fba24e3b2f9b15c16866ff811d83e
|
|
Change-Id: I61734318f2ddd81c3a20571f2be844c08a8b2a26
|
|
Change-Id: I448793566202e672348733b8bbbd6665dc251dfe
|
|
|
|
This is a follow-up on "Refactor httpd install to base image"
[1].
It seems a copy-paste algorithm was used to craft Dockerfiles
for some httpd-enabled services which resulted in an abundance of
ldappool packages getting installed, even in the 'source' case.
This seems to have also kept ldappool at a lower version because
it did not get updated via pip later.
This patch deals with that and also moves ldap deps for Keystone
to their proper place in 'source' case (extras).
Note Keystone client gets installed in openstack-base.
Cinder does not need to include Keystone either.
[1] https://review.opendev.org/744037
Change-Id: I017d7a6a5d2b1ae6c04556dcf172453a36de5be7
|
|
Refactor installing and initial setup of httpd and mod wsgi from
individual services to base image.
Change-Id: I651a55a9ebe258ef403d33de010a4dfb368a4021
|
|
This is necessary for the host monitor to query pacemaker
Change-Id: I41066427169381e2bc57c70f7003bf4d83d9cde7
Partially-Implements: blueprint masakari-hostmonitor
|
|
1. When cyborg images build completed, the /etc/cyborg folder is not
exits, and there is not confs, especially the api-paste.ini
2. When masakari images build completed, it's configs is missing,
this ps add them together
cyborg should keep consistence with the other images[1], this PS
to add it.
[1]: https://github.com/openstack/kolla/blob/master/docker/nova/nova-base/Dockerfile.j2#L137
Change-Id: I8a802617952f80cfb9f906398054ef6d17559589
|
|
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
|
|
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
|
|
Change-Id: I9692dda817ef134d647247431565e1b58cf9da41
|
|
All Apache httpd setup has been moved to a new helper script,
kolla_httpd_setup. This includes the existing clean of /run/httpd,
/var/run/httpd, /tmp/httpd etc.
Horizon has an additional bit of Apache config for Debian/binary, which
has been kept in extend_start.sh for horizon.
Change-Id: Ia2af74b69c151db0bd7e452460b0babcee50b282
Related: blueprint centos-rhel-8
|
|
We have agreed to remove support for Oracle Linux.
http://lists.openstack.org/pipermail/openstack-discuss/2019-June/006896.html
Change-Id: I961dfba1aeef2c509ecdaf376dfe6928926ffb39
Depends-On: https://review.opendev.org/682858
|
|
Masakari provides Instances High Availability Service for
OpenStack clouds by automatically recovering failed Instances.
Change-Id: I279d6b43f8e4d4e30b39deb607823ceca272a4b8
Implements: blueprint masakari-support
|