24 Commits

Author SHA1 Message Date
Michal Arbet
11f65c6c1d 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
2024-11-15 08:04:30 +00:00
Michal Nasiadka
c66a2cd63b openvswitch: Drop ovs_ensure_configured.sh
Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/901695
Change-Id: I9c723b666897883bf5b3343fe92e06aaa0c89d81
2024-05-15 06:34:00 +00:00
Michal Nasiadka
e8a6a45721 openvswitch: Move db conversion from kolla-ansible
Partial-Bug: #2048130
Change-Id: I2f6c9045aa990b36716bb18d9f2eb699a35ee51a
2024-03-23 14:40:55 +00:00
Erik Panter
a840ac0d7c relay non-zero exit codes when creating openvswitch bridges
Calls to `ovs-vsctl` in `ovs_ensure_configured.sh` did not get checked
for errors.
This can cause false success statuses when
the script is run by automation tools such as ansible.

Depends-On: https://review.opendev.org/c/openstack/kolla-ansible/+/870540

Closes-bug: #1999778
Change-Id: Iad83132b61efadbf09aa9aa2edf96235085764c6
2023-01-16 13:25:40 +00:00
Marcin Juszkiewicz
a1510870e8 drop infra_image_prefix
We have one install_type only now so that infra stuff is not needed
anymore.

Change-Id: I60d50ba7699d46d001eaef365fb84b0ce8e9b262
2022-04-11 06:22:21 +00:00
Marcin Juszkiewicz
90adc2b851 introduce 'infra_image_prefix' for infra images
Defaults to 'image_prefix' for now but shows which images gets their
names changed soon.

Change-Id: I0608e8f62f28d6667b4c8753c47553e4cbf75503
2020-07-09 23:31:42 +02:00
Christian Berendt
861f55fbfd Add block labels to all Dockerfiles
Change-Id: I9692dda817ef134d647247431565e1b58cf9da41
2020-03-01 17:25:58 +00:00
Mark Goddard
42b4987cee Remove start-ovsdb-server script from openvswitch-db-server
This script is not used by TripleO, and Kolla Ansible replaces it with a
templated script.

Change-Id: If4418ad1eb7e5b5029a226c3dd65285b23790bd1
2020-02-19 17:45:12 +00:00
Michal Nasiadka
0ec7017f7a Fix ovs-appctl by adding --pidfile to ovsdb command.
Change-Id: I8927ce98d669480866d6fcddaf7b08ef3cbbc37e
Closes-Bug: #1697570
2019-07-02 10:15:08 +02:00
Pavel Glushchak
4489bf24d8 Ensure interface exists before adding OVS port
Otherwise fail.

Change-Id: Ia84d146e568071a84a7d0e06fcd88e64427904b8
Closes-Bug: #1700745
Signed-off-by: Pavel Glushchak <pglushchak@virtuozzo.com>
2017-07-24 08:50:45 +00:00
Jawon Choo
31259fa595 Override image's meta info.
centos based images have wrong label info,
these changes fix own image's name and build-date.

Change-Id: I1d13f8f386c8db12b5fbe5f8ecbbf9e3fbb4ba1c
Closes-Bug: #1680341
2017-05-03 11:08:17 +09:00
Chen
8c463a47a9 Use LABEL instead of MAINTAINER (deprecated) in all Dockerfile.j2
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
2017-04-20 16:50:05 +09:00
Jeffrey Zhang
e5903d5fa9 Remove include_header and include_footer in all Dockerfiles
include_header and include_footer parameter is already removed, remove
them in all Dockerfiles.
Add missing footer block.

Change-Id: I90da03eb9f95a3827361d5f5ede65fde7d6be2b3
2017-02-05 10:44:48 +08:00
Jeffrey Zhang
f62b16f8a4 Move openvswitch db file into docker volume
openvswitch db file is created in /etc/openvswitch/conf.db. It will be
lost during upgrade openvswitch_db container.

This patch moves the db file into /var/lib/openvswitch folder, which
located in docker volume.

Change-Id: I73604fddacd21655590b9e66ee2805014795b9f1
Closes-Bug: #1649290
2016-12-15 16:42:09 +00:00
pangliye
b4e3ab5e63 Fix some typo
Co-Authored-By: caoyuan <cao.yuan@99cloud.net>
TrivialFix

Change-Id: Ie576114a3f6f4579a4df3175232a5f6c63c7a795
2016-12-11 08:35:21 +08:00
Paul Bourke
b41247c656 Add header blocks to all Dockerfiles
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
2016-09-13 16:53:31 +01:00
Pengfei Du
8bc778e8cd Fix lost parameter --remote in generated start_ovsdb_server.sh
Change-Id: I2e2546fbc292975742f48ab35b92455b1bfc685c
Closes-Bug: #1616779
2016-09-06 15:38:59 +08:00
Serguei Bezverkhi
41ec75b567 Introduce a script to launch ovsdb-server process
The reason for introducing this script is to be able
to launch ovsdb-server and initialize it (create external bridge and plug
external interface) in one shot. It is applicable ONLY to Kubernetes environment
and it is required for Kubernetes DaemonSet usage. The behavior in classical
Kolla has not been changed.

TrivialFix

Change-Id: I54897cc2c0f2bcaaf0411822f3409bf96e92833d
2016-08-09 19:03:20 -04:00
riwinter
f96458fcbf Customizations for openvswitch
This patchset contains customization of Dockerfiles
of openvswitch containers

Change-Id: I9404fbee8552d5218ac57abf8a01bf259db729f5
Partially-implements: blueprint third-party-plugin-support
2016-07-26 19:26:48 -04:00
Hui Kang
54919dc498 Enable openvswitch container logs in host volumes
Allow heka container to pick up the openvswitch logs like other
services

Change-Id: I396ae9419540070c6ab01b8f62607ab46b1f08aa
closes-Bug: #1573199
2016-06-26 23:45:33 -04:00
Sean Mooney
9ce814619a configure ovs bridge in openvswitch-db container
- this change moves the ovs_ensure_configured.sh  file to the
  openvswitch-db container.
- this change reorders the plays in ansible/roles/neutron/tasks/start.yml
  to configure the ovs bridges before starting the vswitchd container.

Change-Id: Ied1a82d48377534c15680406df9a96caf3b79515
Closes-Bug: #1522133
2015-12-03 20:13:21 +00:00
Swapnil Kulkarni (coolsvap)
59a1c8b9fb Remove hardcoded MAINTAINER in Dockerfiles
Added new option in kolla-build.conf

Change-Id: I45fe51966bcb59ea19d112281ba3d5a1ba091a56
Closes-Bug:#1514304
2015-11-23 11:03:47 +00:00
Sam Yaple
cb4e875ae1 Common start.sh
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
2015-10-06 03:30:26 +00:00
Sam Yaple
76920be5fa Rename ovs to openvswitch
Our openvswitch image does not follow the naming convention of any of
our other containers and it should.

Change-Id: If1b815117bb39df74061218e48778479b8d674bc
Closes-Bug: #1500392
2015-09-28 11:10:17 +00:00