Support manila as container. First step only supports
building from source.
Change-Id: I60bb67536c9afdb9f0532b3cdc2c400a68608003
Partially-Implements: blueprint enable-manila-containers
* add a base TestCase class
* load the tests from the project root rather than only tests dir
* add a test case for WorkerThread builder function
Change-Id: Icf878f9249b475a311123c8235c42b1212d02ca6
Partially-implements: bp add-ut-codebase
Replacing dict.iteritems()/.itervalues() with
six.iteritems(dict)/six.itervalues(dict) was preferred in the past,
but there was a discussion suggesting to avoid six for this.
ref:
http://lists.openstack.org/pipermail/openstack-dev/2015-June/066391.html
Partially implements: blueprint python3
Change-Id: Ie931bc02f558f6db3677b44f645eb3bdf78ccae8
Two things broke in the related patches. This patch aims to fix that.
1) tools/build.py was no longer usable as it imported kolla from the
global pip install source. If that didnt exist (because kolla wasn't
installed with pip) then it breaks on import.
2) When kolla was installed globally it looked up the path that
matched the installation of docker-py instead of looking up a path
that had the stuff we wanted (kolla images directory)
Change-Id: I94f1856547ce54d506de72926b08c966a36ac608
Related-Id: I05f10d13e7ba1e2b985c2944aec71ce55630442b
Related-Bug: #1530256
Closes-Bug: #1531569
The try-except-finally block in push thread was catching only
ConnectionError and logging information about successful push
even if some other error occured during push.
TrivialFix
Change-Id: I94f5ed67237d291701469a65f76146881cd67a35
By using
./tools/build.py --save-dependency a.dot
to gen the Graphviz dot dependency file. Later, you can use the `dot`
to draw the picture.
dot -Tjpg -o a.jpg a.dot
Implements: blueprint images-dependency-tree
Depends-On: I8e07a1b69fab5f1c587470bfd2104aaba93f0050
Change-Id: If00f4f3fb9d0b10a07ab2abb7ffb1cd9d64902f2
* Use oslo.config library
* kolla-build section is deprecated in favor of DEFAULT section
* Remove the deprecated `--template` option
* `--no-cache` is deprecated in favor of `--cache` and `--nocache`
options, which are using oslo BoolOpt inverse feature[0]
[0] https://github.com/openstack/oslo.config/blob/master/oslo_config/cfg.py#L1074
Closes-Bug: #1528542
Change-Id: I62c5ca3c8e057917d2798256e9d9efc8f6578f60
- Removed hardcoded yum repository configuration in favor of
commands dynamically generated based on repo-url and repo-file
arguments. We maintain a sane default set of repositories.
- Added generic rpm_setup_config parameter to add support for
installing .rpm or .repo files before building containers.
Co-Authored-By: Ryan Hallisey <rhallise@redhat.com>
Implements: blueprint custom-repos
Change-Id: I1b3a7647a9e7239de3cd162cb6f464f05632bde1
We want to record kolla version of running containers to be able to
detect whether or not we need to perform certain downtime-causing
actions during upgrade.
Change-Id: Ie113029da98303e6809d56edbf6d8de37be128d7
Implements: blueprint record-version
This changes default behaviour of build.py to instad of putting latest
tag on it, it puts current kolla version as found in setup.cfg
Change-Id: I4d6e9a0159c6a5598abd58072594df4204427308
Partially-Implements: blueprint upgrade-nova
Partially-Implements: blueprint record-version
The build script now creates now creates a plugins directory for source
builds to store plugins required for the container, and creates a tar
of all plugins that is extracted at runtime.
However, the creation of the 'plugins' directory is not handled
correctly and generate an exception in the running thread if the
directory exists. This is the case for example if the build script
retries a failing image.
This commit fixes the timeout issues we've experienced with the gate.
Change-Id: Ic5d4fd1ddf71f01c547130518e311fded911c445
Closes-Bug: 1524897
This change allows additional archives to be fetched as part of the
build and added to images.
An example use case is the installation of plugins for neutron. For
example, to add the networking-arista plugin to neutron-server, one
would do the following in kolla-build.conf:
[neutron-server-plugin-networking-arista]
type = url
location = http://tarballs.openstack.org/networking-arista/networking-arista-master.tar.gz
The format for plugin sections is <image-name>-plugin-<plugin-name>
The required Dockerfile additions will be added in the next patchset.
Background to this change:
https://review.openstack.org/#/c/207545/3/docker_templates/neutron/neutron-server/Dockerfile.j2
Related: blueprint neutron-third-party-plugins
DocImpact
Change-Id: Idec2ca9fd06163c7d820e8c4bc9ebca8d9673856
Off by one error made the --retries option control the number of tries
rather than the number of retries.
Closes-Bug: #1514730
backport: Liberty
Change-Id: I976a8bb9e489d226f44926a6562d4d2af5de099c
pip install default prefix in Ubuntu is /usr/local, and Kolla tools scripts
didnt respect that. So I added few OS checks in this scripts.
I improve config path check in build.py. Added more verbose error if we can't
find config directory.
Change-Id: Ide521ed205b0dc1fc27e237a9a8f4da0168e664f
Closes-Bug: #1512302
build.py -b rhel -t [rdo|rhos|source|binary]
The last patch for this didn't quite fix the problem properly as
it only permitted RHOS builds.
backport: liberty
Change-Id: I27eed202560adce450c07d043cc224e7a6c6bbf6
Closes-Bug: #1513088
Use the absoluate path rather than that with `..`. This will be
helpfull for end-user to see where is the folder/file.
Closes-Bug: #1513726
Change-Id: I7169952d874ddf14469605444044de0163b033d3