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
This commit is contained in:
Michal Arbet 2022-02-15 13:50:59 +01:00 committed by Dr. Jens Harbott
parent 36c12676ff
commit 11f65c6c1d
210 changed files with 610 additions and 5 deletions

View File

@ -301,6 +301,59 @@ To remove a package from that list, say ``locales``, one would do:
An example of this is the Grafana plugins, which are mentioned in the next
section.
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.
Grafana plugins
^^^^^^^^^^^^^^^

View File

@ -10,5 +10,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
COPY extend_start.sh /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

@ -34,4 +34,6 @@ RUN ln -s aodh-base-source/* aodh \
&& touch /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,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block aodh_evaluator_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -7,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block aodh_expirer_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -7,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block aodh_listener_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -7,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block aodh_notifier_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -11,6 +11,8 @@ COPY extend_start.sh /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

@ -38,4 +38,6 @@ RUN ln -s barbican-base-source/* barbican \
&& touch /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,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block barbican_keystone_listener_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -7,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block barbican_worker_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -25,7 +25,6 @@ LABEL kolla_version="{{ kolla_version }}"
ENV KOLLA_BASE_DISTRO={{ base_distro }} \
KOLLA_BASE_ARCH={{ base_arch }}
#### Customize PS1 to be used with bash shell
COPY kolla_bashrc /tmp/
RUN cat /tmp/kolla_bashrc >> /etc/skel/.bashrc \
@ -192,7 +191,8 @@ RUN {{ macros.install_packages(base_centos_yum_repo_packages | customizable("cen
'tar',
'util-linux',
'util-linux-user',
'which'
'which',
'patch'
] %}
# Install base packages
@ -279,7 +279,8 @@ COPY apt_preferences /etc/apt/preferences.d/kolla-custom
'python3-pip',
'socat',
'sudo',
'tgt'
'tgt',
'patch'
] %}
{% set base_apt_keys = [
@ -348,6 +349,7 @@ 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 %}
@ -368,6 +370,7 @@ RUN touch /usr/local/bin/kolla_extend_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 \
@ -382,5 +385,7 @@ RUN touch /usr/local/bin/kolla_extend_start \
# ENV UPPER_CONSTRAINTS_FILE=https://releases.openstack.org/constraints/upper/{{ openstack_release }}
{% endblock %}
{{ macros.kolla_patch_sources() }}
{% block base_footer %}{% endblock %}
CMD ["kolla_start"]

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

@ -62,4 +62,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,9 +5,13 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% block blazar_api_header %}{% endblock %}
{% import "macros.j2" as macros with context %}
COPY extend_start.sh /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

@ -24,4 +24,6 @@ RUN ln -s blazar-base-source/* blazar \
&& touch /usr/local/bin/kolla_blazar_extend_start \
&& chmod 644 /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,6 +5,10 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% block blazar_manager_header %}{% endblock %}
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block blazar_manager_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -39,4 +39,6 @@ RUN ln -s ceilometer-base-source/* ceilometer \
&& touch /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,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block ceilometer_central_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -24,6 +24,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
RUN {{ macros.install_pip(ceilometer_compute_pip_packages | customizable("pip_packages")) }}
{{ macros.kolla_patch_sources() }}
{% block ceilometer_compute_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -19,6 +19,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.install_packages(ceilometer_ipmi_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block ceilometer_ipmi_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -10,6 +10,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
COPY extend_start.sh /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

@ -19,5 +19,7 @@ RUN mkdir -p /var/www/cgi-bin/cinder \
&& chmod 644 /usr/local/bin/kolla_cinder_extend_start \
&& chmod 755 /var/www/cgi-bin/cinder/cinder-wsgi
{{ macros.kolla_patch_sources() }}
{% block cinder_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -25,6 +25,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.install_packages(cinder_backup_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block cinder_backup_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -51,4 +51,6 @@ RUN ln -s cinder-base-source/* cinder \
&& touch /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

@ -7,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block cinder_scheduler_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -52,6 +52,8 @@ RUN chmod 750 /etc/sudoers.d \
&& chmod 440 /etc/sudoers.d/kolla_cinder_volume_sudoers \
&& chmod 644 /usr/local/bin/kolla_cinder_extend_start
{{ macros.kolla_patch_sources() }}
{% block cinder_volume_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -15,5 +15,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
COPY extend_start.sh /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

@ -24,4 +24,6 @@ RUN ln -s cloudkitty-base-source/* cloudkitty \
&& touch /usr/local/bin/kolla_cloudkitty_extend_start \
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_cloudkitty_extend_start
{{ macros.kolla_patch_sources() }}
{% block cloudkitty_base_footer %}{% endblock %}

View File

@ -12,6 +12,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.install_packages(cloudkitty_processor_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block cloudkitty_processor_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -72,6 +72,8 @@ RUN chmod 644 /usr/local/bin/kolla_extend_start \
&& chown -R collectd /var/lib/collectd \
&& chown -R collectd /var/run/
{{ macros.kolla_patch_sources() }}
{% block collectd_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -29,5 +29,7 @@ COPY logrotate /etc/cron.daily/logrotate
COPY extend_start.sh /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

@ -16,5 +16,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
RUN {{ macros.install_pip(cyborg_agent_pip_packages | customizable("pip_packages")) }}
{{ macros.kolla_patch_sources() }}
{% block cyborg_agent_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -13,5 +13,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
COPY extend_start.sh /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

@ -26,4 +26,6 @@ RUN ln -s cyborg-base-source/* cyborg \
&& touch /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,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ 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

@ -29,4 +29,6 @@ RUN ln -s designate-base-source/* designate \
&& touch /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

@ -10,6 +10,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
COPY extend_start.sh /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,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block designate_mdns_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -7,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block designate_producer_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -7,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block designate_sink_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -19,6 +19,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% endif %}
{{ macros.install_packages(designate_worker_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block designate_worker_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -10,5 +10,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% set dnsmasq_packages = ['dnsmasq'] %}
{{ macros.install_packages(dnsmasq_packages| customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block dnsmasq_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -23,6 +23,8 @@ RUN chmod 644 /usr/local/bin/kolla_extend_start \
&& chmod 750 /etc/sudoers.d \
&& chmod 440 /etc/sudoers.d/kolla_etcd_sudoers
{{ macros.kolla_patch_sources() }}
{% block etcd_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -54,6 +54,8 @@ COPY extend_start.sh /usr/local/bin/kolla_extend_start
{% endblock %}
{{ macros.kolla_patch_sources() }}
{% block fluentd_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -25,6 +25,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
COPY extend_start.sh /usr/local/bin/kolla_glance_extend_start
RUN chmod 644 /usr/local/bin/kolla_glance_extend_start
{{ macros.kolla_patch_sources() }}
{% block glance_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -48,4 +48,6 @@ RUN ln -s glance-base-source/* glance \
&& touch /usr/local/bin/kolla_glance_extend_start \
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_glance_extend_start
{{ macros.kolla_patch_sources() }}
{% block glance_base_footer %}{% endblock %}

View File

@ -10,5 +10,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
COPY extend_start.sh /usr/local/bin/kolla_gnocchi_extend_start
RUN chmod 644 /usr/local/bin/kolla_gnocchi_extend_start
{{ macros.kolla_patch_sources() }}
{% block gnocchi_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -52,4 +52,6 @@ RUN ln -s gnocchi-base-source/* gnocchi \
&& touch /usr/local/bin/kolla_gnocchi_extend_start \
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_gnocchi_extend_start
{{ macros.kolla_patch_sources() }}
{% block gnocchi_base_footer %}{% endblock %}

View File

@ -7,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block gnocchi_metricd_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -7,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block gnocchi_statsd_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -34,6 +34,8 @@ RUN chmod 750 /etc/sudoers.d \
&& chmod 440 /etc/sudoers.d/kolla_grafana_sudoers \
&& chmod 644 /usr/local/bin/kolla_extend_start
{{ macros.kolla_patch_sources() }}
{% block grafana_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -13,4 +13,6 @@ COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 644 /usr/local/bin/kolla_extend_start
{{ macros.kolla_patch_sources() }}
{% block hacluster_base_footer %}{% endblock %}

View File

@ -10,4 +10,6 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% set hacluster_corosync_packages = ['corosync'] %}
{{ macros.install_packages(hacluster_corosync_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block hacluster_corosync_footer %}{% endblock %}

View File

@ -16,4 +16,6 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.install_packages(hacluster_pacemaker_remote_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block hacluster_pacemaker_remote_footer %}{% endblock %}

View File

@ -16,4 +16,6 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.install_packages(hacluster_pacemaker_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block hacluster_pacemaker_footer %}{% endblock %}

View File

@ -10,4 +10,6 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% set hacluster_pcs_packages = ['pcs','crmsh'] %}
{{ macros.install_packages(hacluster_pcs_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block hacluster_pcs_footer %}{% endblock %}

View File

@ -36,5 +36,7 @@ RUN chmod 644 /usr/local/bin/kolla_extend_start \
COPY update-haproxy-cert.sh /usr/bin/update-haproxy-cert
{{ macros.kolla_patch_sources() }}
{% block haproxy_ssh_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -20,5 +20,7 @@ RUN mkdir -p /var/lib/kolla/haproxy \
&& chown -R haproxy: /var/lib /run \
&& chmod 755 /usr/local/bin/kolla_ensure_haproxy_latest_config
{{ macros.kolla_patch_sources() }}
{% block haproxy_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -10,5 +10,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
COPY extend_start.sh /usr/local/bin/kolla_heat_extend_start
RUN chmod 644 /usr/local/bin/kolla_heat_extend_start
{{ macros.kolla_patch_sources() }}
{% block heat_api_cfn_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -10,5 +10,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
COPY extend_start.sh /usr/local/bin/kolla_heat_extend_start
RUN chmod 644 /usr/local/bin/kolla_heat_extend_start
{{ macros.kolla_patch_sources() }}
{% block heat_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -31,4 +31,6 @@ RUN ln -s heat-base-source/* heat \
&& touch /usr/local/bin/kolla_heat_extend_start \
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_heat_extend_start
{{ macros.kolla_patch_sources() }}
{% block heat_base_footer %}{% endblock %}

View File

@ -7,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block heat_engine_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -71,5 +71,7 @@ RUN ln -s horizon-source/* horizon \
done \
&& chmod 644 /usr/local/bin/kolla_extend_start
{{ macros.kolla_patch_sources() }}
{% block horizon_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -21,6 +21,8 @@ RUN chmod 750 /etc/sudoers.d \
&& chmod 440 /etc/sudoers.d/kolla_influxdb_sudoers \
&& chmod 644 /usr/local/bin/kolla_extend_start
{{ macros.kolla_patch_sources() }}
{% block influxdb_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -38,6 +38,8 @@ RUN ln -s ironic-inspector-source/* ironic-inspector \
&& mkdir -p /var/lib/ironic-inspector/dhcp-hostsdir \
&& chown -R ironic-inspector: /var/lib/ironic-inspector
{{ macros.kolla_patch_sources() }}
{% block ironic_inspector_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -14,5 +14,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
COPY extend_start.sh /usr/local/bin/kolla_ironic_extend_start
RUN chmod 644 /usr/local/bin/kolla_ironic_extend_start
{{ macros.kolla_patch_sources() }}
{% block ironic_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -29,4 +29,6 @@ RUN ln -s ironic-base-source/* ironic \
&& touch /usr/local/bin/kolla_ironic_extend_start \
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_ironic_extend_start
{{ macros.kolla_patch_sources() }}
{% block ironic_base_footer %}{% endblock %}

View File

@ -66,6 +66,8 @@ RUN {{ macros.install_pip(ironic_conductor_pip_packages | customizable("pip_pack
{{ macros.install_packages(ironic_conductor_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block ironic_conductor_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -37,5 +37,7 @@ ENV IRONIC_CONFIG /etc/ironic/ironic.conf
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 755 /usr/local/bin/kolla_extend_start
{{ macros.kolla_patch_sources() }}
{% block ironic_prometheus_exporter_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -49,5 +49,7 @@ COPY tftp-map-file-template /map-file-template
COPY extend_start.sh /usr/local/bin/kolla_ironic_extend_start
RUN chmod 644 /usr/local/bin/kolla_ironic_extend_start
{{ macros.kolla_patch_sources() }}
{% block ironic_pxe_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -30,5 +30,7 @@ COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 644 /usr/local/bin/kolla_extend_start \
&& rm -f /etc/iscsi/initiatorname.iscsi
{{ macros.kolla_patch_sources() }}
{% block iscsid_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -24,5 +24,7 @@ COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 644 /usr/local/bin/kolla_extend_start \
&& chmod 755 /check_alive.sh
{{ macros.kolla_patch_sources() }}
{% block keepalived_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -45,4 +45,6 @@ RUN ln -s keystone-base-source/* keystone \
RUN chmod 755 /var/www/cgi-bin/keystone/*
{{ macros.kolla_patch_sources() }}
{% block keystone_base_footer %}{% endblock %}

View File

@ -28,5 +28,7 @@ COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 644 /usr/local/bin/kolla_extend_start \
&& chmod 755 /usr/local/bin/kolla_keystone_bootstrap /usr/bin/fetch_fernet_tokens.py
{{ macros.kolla_patch_sources() }}
{% block keystone_fernet_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -32,5 +32,7 @@ COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN sed -ri 's/session(\s+)required(\s+)pam_loginuid.so/session\1optional\2pam_loginuid.so/' /etc/pam.d/sshd \
&& chmod 644 /usr/local/bin/kolla_extend_start
{{ macros.kolla_patch_sources() }}
{% block keystone_ssh_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -41,5 +41,7 @@ RUN chmod 644 /usr/local/bin/kolla_extend_start \
{{ macros.install_pip(keystone_plugins_pip_packages) }}; \
fi
{{ macros.kolla_patch_sources() }}
{% block keystone_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -132,6 +132,8 @@ RUN chmod 644 /usr/share/ansible/find_disks.py \
&& chmod 755 /usr/local/bin/kolla_toolbox \
&& chmod 440 /etc/sudoers.d/kolla_ansible_sudoers
{{ macros.kolla_patch_sources() }}
{% block kolla_toolbox_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -25,4 +25,6 @@ RUN ln -s kuryr-base-source/* kuryr-base \
&& mkdir -p /etc/kuryr \
&& chmod 644 /usr/local/bin/kolla_extend_start
{{ macros.kolla_patch_sources() }}
{% block kuryr_base_footer %}{% endblock %}

View File

@ -34,5 +34,7 @@ ADD kuryr-libnetwork-archive /kuryr-libnetwork-source
RUN ln -s kuryr-libnetwork-source/* kuryr-libnetwork \
&& {{ macros.install_pip(kuryr_libnetwork_pip_packages | customizable("pip_packages")) }}
{{ macros.kolla_patch_sources() }}
{% block kuryr_libnetwork_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -9,4 +9,6 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
COPY extend_start.sh /usr/local/bin/kolla_extend_start
{{ macros.kolla_patch_sources() }}
{% block letsencrypt_base_footer %}{% endblock %}

View File

@ -35,5 +35,7 @@ COPY sync-and-update-certificate.sh /usr/bin/sync-and-update-certificate
RUN chmod +x /usr/bin/letsencrypt-certificates /usr/bin/sync-and-update-certificate
{{ macros.kolla_patch_sources() }}
{% block letsencrypt_lego_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -28,5 +28,7 @@ RUN echo > /etc/apache2/ports.conf
COPY extend_start.sh /usr/local/bin/kolla_letsencrypt_extend_start
{{ macros.kolla_patch_sources() }}
{% block letsencrypt_webserver_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -85,3 +85,10 @@ sed -e "/^{{ package_name }}===/d" -i requirements/upper-constraints.txt
{% macro upper_constraints_version_change(package_name, from, to) -%}
sed -e "s/^{{package_name}}==={{ from }}/{{package_name}}=={{ to }}/g" -i requirements/upper-constraints.txt
{%- endmacro %}
{% macro kolla_patch_sources() -%}
{% if patches_path %}
COPY patches /patches
RUN kolla_patch
{% endif %}
{%- endmacro %}

View File

@ -10,6 +10,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
COPY extend_start.sh /usr/local/bin/kolla_magnum_extend_start
RUN chmod 644 /usr/local/bin/kolla_magnum_extend_start
{{ macros.kolla_patch_sources() }}
{% block magnum_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -26,4 +26,6 @@ RUN ln -s magnum-base-source/* magnum \
&& touch /usr/local/bin/kolla_magnum_extend_start \
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_magnum_extend_start
{{ macros.kolla_patch_sources() }}
{% block magnum_base_footer %}{% endblock %}

View File

@ -7,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block magnum_conductor_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -18,6 +18,8 @@ RUN mkdir -p /var/www/cgi-bin/manila \
&& chmod 644 /usr/local/bin/kolla_manila_extend_start \
&& chmod 755 /var/www/cgi-bin/manila/manila-wsgi
{{ macros.kolla_patch_sources() }}
{% block manila_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -42,4 +42,6 @@ RUN ln -s manila-base-source/* manila \
&& touch /usr/local/bin/kolla_manila_extend_start \
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_manila_extend_start
{{ macros.kolla_patch_sources() }}
{% block manila_base_footer %}{% endblock %}

View File

@ -23,6 +23,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.install_packages(manila_data_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block manila_data_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -7,6 +7,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% import "macros.j2" as macros with context %}
{{ macros.kolla_patch_sources() }}
{% block manila_scheduler_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -29,6 +29,8 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{{ macros.install_packages(manila_share_packages | customizable("packages")) }}
{{ macros.kolla_patch_sources() }}
{% block manila_share_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -33,4 +33,6 @@ ARG mariadb_clustercheck_url=https://src.fedoraproject.org/rpms/mariadb/raw/${ma
RUN curl -o /usr/bin/clustercheck ${mariadb_clustercheck_url} \
&& chmod 755 /usr/bin/clustercheck
{{ macros.kolla_patch_sources() }}
{% block mariadb_base_footer %}{% endblock %}

View File

@ -5,11 +5,15 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
{% block mariadb_clustercheck_header %}{% endblock %}
{% import "macros.j2" as macros with context %}
COPY extend_start.sh /usr/local/bin/kolla_extend_start
COPY socat_wrapper.sh /usr/local/bin/socat_wrapper
RUN chmod 644 /usr/local/bin/kolla_extend_start && \
chmod 755 /usr/local/bin/socat_wrapper
{{ macros.kolla_patch_sources() }}
{% block mariadb_clustercheck_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -75,6 +75,8 @@ CMD ["kolla_start"]
{% endblock %}
{% endif %}
{{ macros.kolla_patch_sources() }}
{% block mariadb_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -10,5 +10,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
COPY extend_start.sh /usr/local/bin/kolla_masakari_extend_start
RUN chmod 644 /usr/local/bin/kolla_masakari_extend_start
{{ macros.kolla_patch_sources() }}
{% block masakari_api_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -39,4 +39,6 @@ RUN ln -s masakari-base-source/* masakari \
&& touch /usr/local/bin/kolla_masakari_extend_start \
&& chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_masakari_extend_start
{{ macros.kolla_patch_sources() }}
{% block masakari_base_footer %}{% endblock %}

Some files were not shown because too many files have changed in this diff Show More