| 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 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
|
|
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
|
|
Big patch drops all mentions of binary images support. Suggestions are
welcome how to split it into parts or handle better.
Change-Id: I5d5a46c6ce7734ceb8b844e17b43e359d7cac6e3
|
|
Packages are available for focal and bullseye.
Change-Id: I61623748d1149adb1b096adf2fffb5a902df3181
|
|
1. stop pinning networking-hyperv
Pike release was long time ago so maybe it is time to unpin it?
commit 6dc8e978462fd08122133e273ae956721997d3af
Author: Dan Ardelean <dardelean@cloudbasesolutions.com>
Date: Mon Aug 28 12:56:25 2017 +0300
Change networking-hyperv version for Pike
2. stop install vmware-nsxlib as a plugin
vmware-nsx is a plugin and we install it already
vmware-nsxlib can be fetched from Pypi
Solves:
INFO:kolla.common.utils.neutron-server:The conflict is caused by:
INFO:kolla.common.utils.neutron-server: The user requested vmware-nsxlib 15.0.8.dev129 (from /plugins/vmware-nsxlib-15.0.8.dev129)
INFO:kolla.common.utils.neutron-server: vmware-nsx 15.0.1.dev424 depends on vmware-nsxlib>=17.0.0
Change-Id: I6ef344d463333e5cdc3a0850c8e068218779fdbd
|
|
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
|
|
Change-Id: I9692dda817ef134d647247431565e1b58cf9da41
|
|
The project has been retired and there will be no Train release [1].
This patch removes Neutron LBaaS support in Kolla.
[1] https://review.opendev.org/#/c/658494/
Depends-On: https://review.opendev.org/#/c/663875/
Change-Id: I99484c48ed09f7e015e134bdff1f298c359c6905
|
|
RDO is currently working on python3 support for the next version of
CentOS/RHEL based systems. This package uses the distro_python3 flag
that was added as part of I4028991bad92c0e8e21066cc4173c06ce5eba393 to
use the python3 specific package names. This change only adds python3
package names for RHEL systems.
Conflicts-With: https://review.openstack.org/#/c/636457/
Change-Id: Iad6b70b433a0dd1b0f8ae6790fd280594517661a
Related-Blueprint: python3-support
|
|
Both Ubuntu Stein UCA and Debian 'buster' migrated their OpenStack
packages to Python 3.
Note that Debian 'buster' is not released yet and contains Rocky
packages. Stein ones will be available later.
Co-Authored-By: Lee Yarwood <lyarwood@redhat.com>
Co-Authored-By: Eduardo Gonzalez <dabarren@gmail.com>
Change-Id: I160f79cc57f54ec3eac857c5babd1a6e2656d228
|
|
This change updates the docker files to use base_package_type instead
of doing specific distro checks for the rhel/deb generic cases. The
base_distro is still available and is used when a specific distro needs
a customization but if the differences are purely rpm vs deb, then the
base_package_type can be used.
Change-Id: I8d720bb185df65a0178061ccf20b1ab2265da2c5
|
|
Change-Id: I75c460bda4c85016446f6a8df14e53806f8ef414
|
|
|
|
The pip packages are normally already configurable with the
<image_name>_pip_packages variable. It doesn't make much sense to make
the list of packages installed with the plugins mechanism configurable
via the <image_name>_plugins_pip_packages variable too.
And even if we wanted to, the parameter to the `customizable()`
function should be 'plugins_pip_packages' and not 'pip_packages'.
This commit removes the customizable bits from the plugins install
macro, at least until we get a good use case for it.
Change-Id: I90dd28b8c5d981e6028af353e34645712ef09b0b
|
|
since openstack-neutron-lbaas has beed installed in neutron-base image,
it's no need to install it again install neutron-server.
Change-Id: I5219b1d37a408dfeb61fa54133e36751af1ee389
|
|
Closes-Bug: #1730629
Change-Id: Iae9ab6f3bba8185cf1bf53c3a5748e801404aeb7
Signed-off-by: Michal Nasiadka <michal.nasiadka@pl.ibm.com>
|
|
Change-Id: I56b9ef9ceb449d3fe6f2aa4cf856d6d1d7af7ee9
|
|
Move vmware_nsx and oslo.vmware to neutron_base image to
support this change: I6d1629e93f0efeddd2a9000f66cc6f714bebb07c
Change-Id: I4655086a3f058ec769d3d37ec6a19565b5ea0841
Partially-implements: blueprint kolla-ansible-support-vsphere
|
|
|
|
|
|
python-oslo-vmware was transitional package name
Change-Id: Ieb355e30fe7162c035f342fd5b0fb2573365f428
|
|
Change-Id: I31dd5054ea9bf341323f6d093c0667b98491cc2b
|
|
The plugin mechanism is meant to be for source install type only.
Change-Id: I1371a253236b09dc62ea91dce6d652e1c5603015
Closes-Bug: #1681345
|
|
centos based images have wrong label info,
these changes fix own image's name and build-date.
Change-Id: I1d13f8f386c8db12b5fbe5f8ecbbf9e3fbb4ba1c
Closes-Bug: #1680341
|
|
Use LABEL instruction instead of MAINTAINER (deprecated) instruc-
tion as suggested by Docker's official dockerfile guide.
docs.docker.com/engine/reference/builder/#maintainer-deprecated
Closes-Bug: #1683652
Change-Id: Ie87a1ddf31aefcd0b623fd2837d78de420e76898
|
|
|
|
Add oslo.vmware and vmware_nsx packages into kolla.
Change-Id: I2a1ed314b970a4832f7f8256c1929921f36069f2
Implements: blueprint kolla-support-vsphere
Co-Authored-By: shaofeng cheng <chengsf@winhong.com>
|
|
Debian support is not maintained in Kolla so it got a bit behind Ubuntu
one. This changeset enables Debian for all images. Jessie (even with
backports) may be too old for some images though.
Also unify distro check to ['debian', 'ubuntu'] to keep alphabetical order
like it is done for RPM distributions.
Partially-Implements: blueprint multiarch-and-arm64-containers
Change-Id: I056233fbfa277e0e2360c07c3f80d9558c554357
|
|
1. Enable customization of pip packages in source
branch of most images
2. All pip packages install uniformly through
install-pip macro, user can easily customize his
own pip command (For example using a mirror)
Co-Authored-By: Mauricio Lima <mauriciolimab@gmail.com>
Change-Id: If09582039f690fa4136e8f33200d5da15e092da7
|
|
include_header and include_footer parameter is already removed, remove
them in all Dockerfiles.
Add missing footer block.
Change-Id: I90da03eb9f95a3827361d5f5ede65fde7d6be2b3
|
|
Closes-bug: #1616387
Change-Id: Id97f88b9baa3d48d33ce120962450a374282d044
|
|
1. Install the missing vpnaas python module in neutron-server Dockerfile
2. Remove duplicated neutron-lbaas-common package from neutron-server,
since it is installed in neutron-base
3. Fix service plugin config, it's not vpn`ass` ;)) 'vpnass' ->
'neutron_vpnaas.services.vpn.plugin.VPNDriverPlugin' [1]
[1]:
https://github.com/openstack/neutron-vpnaas/blob/stable/newton/devstack/settings#L8
Change-Id: I5250b6875d96ef5df9cf39bce10ce072982aa80d
Closes-bug: #1625020
|
|
Change needed to add header blocks to all Dockerfiles, similar to the
base.
Use case is to easily run something before packages are installed, e.g.
to COPY a local rpm in that can be added to the package list.
Change-Id: I1bbfdf0b762da0a392aa8bf47781315b45377bee
Closes-Bug: 1618969
|
|
Change-Id: I5dbb030943abfa7eccc424859b694a508358c123
Partially-implements: blueprint third-party-plugin-support
Co-Authored-By: Michal (inc0) Jastrzebski <inc007@gmail.com>
Co-Authored-By: Paul Bourke <paul.bourke@oracle.com>
|
|
Previously, kolla did not support neutron lbaas functionality.
Only Lbaasv2 is supported in Mitaka. Additional information can
be found here:
http://docs.openstack.org/mitaka/networking-guide/adv-config-lbaas.html
Magnum uses Neutron Lbaas to provide high availability to COE API
and Etcd endpoints within a bay. Therefore, Neutron Lbaas is required
for Kolla to support Magnum.
Co-Authored-By: Serguei Bezverkhi <sbezverk@cisco.com>
Partial-Bug: #1551992
Change-Id: I05360b7c447c601fcb3c2b6b2a913ef5cc0f3a1b
|
|
Change-Id: I74aa68d809e9b38a605093abc4e2b8ca14335dee
Partial-Bug: #1546944
|
|
*** Requires Docker 1.10 which is released ***
Documentation will be in the next patch. You must set the following
in your docker.service daemon control file for propogation to work:
[Service]
MountFlags=shared
======================================================================
Thanks to mount propagation in Docker 1.10 we can use thin containers
finally! This is extremely useful to operators since now they can
access the network namespaces from the hosts (outside the neutron
container). But additionally it allows us to implement the VPN agent
and other services easier.
Neutron containers and the neutron role are brought into the standards
of the new Kolla. Completely with drop-root and ansible formating
updates.
The ip_wrapper.py script was (thankfully) not needed so it has been
removed from the repo.
Partially-Implements: blueprint upgrade-neutron
Change-Id: Iaf5555283240457e1912459f397a6393d886fba1
|
|
Change-Id: I368f5b89fbfded0f173b97058061a03783ce1829
Closes-Bug: #1531883
|
|
There were some inconsistencies with pip install instructions
thoughout Kolla. We fix those here.
Additionally, we fix the virtualenv to properly use the site-packages
on the host if a library is not available in the venv.
Change-Id: Ib84d48e8826bb96060338b3fa0782620c98794a8
Related-Bug: #1524684
Closes-Bug: #1529434
|
|
Implements: blueprint neutron-third-party-plugins
Change-Id: I56c56bacd2f06c120b14b00c0b97dd4e39c0afc0
|
|
Added new option in kolla-build.conf
Change-Id: I45fe51966bcb59ea19d112281ba3d5a1ba091a56
Closes-Bug:#1514304
|
|
And fix the fallout.
Change-Id: Iccad3f4fdb0a6a7c14246df3408cae0425b833a5
|
|
In https://bugs.launchpad.net/kolla/+bug/1483667, oslo.messaging
was pinned to 2.2.0. This pin is no longer necessary as this bug
has been fixed upstream.
backport: liberty
TrivialFix
Change-Id: Ica9ae41876a754291d4c6ee1235f6e69a4213463
|
|
The which tool is installed in the base image now and this extra
install is duplicated and has no effect.
backport:liberty
TrivialFix
Change-Id: I70c3edb11f5c847063b6e4ab4f9de7184356ce57
|
|
The majority of the start.sh code is identical. This removes that
duplicate code while still maintaining the ability to call code in a
specific container.
The start.sh is moved into /usr/local/bin/kolla_start in the container
The extend_start.sh script is called by the kolla_start script at the
location /usr/local/bin/kolla_extend_start . It always exists because
we create a noop kolla_extend_start in the base directory. We override
it with extend_start.sh in a specific image should we need to.
Of note, the neutron-agents container is exempt from this new
structure due to it being a fat container.
Additionally, we fix the inconsistent permissions throughout. 644 for
repo files and the scripts are set to 755 via a Docker RUN command to
ensure someones local perm change won't break upstream containers.
Change-Id: I7da8d19965463ad30ee522a71183e3f092e0d6ad
Closes-Bug: #1501295
|
|
This prepares for the RHEL OSP implementation by making the build
tool convert all binary-* into an install_type of binary and * into
an install_metatype variable substitution inside the Dockerfiles.
Further binary-* is substituted as install_name to enable proper
building only.
Change-Id: Ib681b29176eb79a3cab12ec824313fdecb6e7a5f
Partially-Implements: blueprint rhel-based-image-support
|
|
I removed the files but not the COPY commands thus breaking all of
Kolla
Change-Id: I37d3e0cb94a1ecc12971f485f953310ba8fee53c
Partially-Implements: blueprint replace-config-external
|