aboutsummaryrefslogtreecommitdiff
path: root/kolla/image/build.py
AgeCommit message (Collapse)AuthorFilesLines
2020-02-17Get rid of Python 2 supportMarcin Juszkiewicz1-19/+17
2020 came, everyone should be using Python 3 now. As per the official python support timeline set forth by the OpenStack TC [1], OpenStack Train (in our case, kolla 9.x) is the last release that will support python2.7. [1] https://governance.openstack.org/tc/resolutions/20180529-python2-deprecation-timeline.html Related bug: https://bugs.launchpad.net/tripleo/+bug/1856678 Merging depends on TripleO team - once they move CI job to CentOS 8 we can merge. Implements: blueprint drop-py2-support Change-Id: Ic459561ab6ab8c62993c044c7a82d887839da289
2020-02-14kibana: enable for non-x86 on Debian/UbuntuMarcin Juszkiewicz1-2/+2
As upstream generated 'all' package as 'amd64' one I took some time and repackaged it. Change-Id: Ie84ed771ffa9ecd70b945673727895c8edad30eb
2020-02-14Remove kolla Ceph container imagesMichal Nasiadka1-1/+0
This change removes ceph* Dockerfiles and relevant kolla python code bits. Kolla-Ansible part has been removed, and K-A was the only consumer. Change-Id: I9568261fdbbe4b9156d0e07c414ec911ca2e8557
2020-02-04aarch64: enable influxdb and telegraf for Debian/UbuntuMarcin Juszkiewicz1-2/+1
Turns out that upstream provides repos also for aarch64. CentOS one is not usable due to wrong arch name used (arm64 instead of aarch64). Change-Id: I1b4ef1fae0914d6826af5456cc9ea53bb26972ee
2020-01-31Merge "CentOS 8: Use upstream Ceph/master"Zuul1-7/+0
2020-01-31Merge "CentOS 8: Remove shellinabox from ironic-conductor"Zuul1-1/+0
2020-01-30Merge "CentOS 8: Update packages in images"Zuul1-96/+30
2020-01-30CentOS 8: Use upstream Ceph/masterMichal Nasiadka1-7/+0
The only Ceph version that will support CentOS 8 is Octopus. It will be released end of March 2020 - so for now let's use master. Change-Id: I5955acb41e7346802d76f4f2b244cbf5c36f5bf2 Partially-Implements: blueprint centos-rhel-8
2020-01-29CentOS 8: Remove shellinabox from ironic-conductorMark Goddard1-1/+0
shellinabox is used by ironic-conductor to provide a browser-based shell to access the consoles of nodes. It is not used by all console drivers, and is not used in the integration with nova serial consoles. The package was previously installed from EPEL7, but is not currently provided by EPEL8. This change removes the package to allow the ironic-conductor image to build. Change-Id: I210d9fddd6948dab1feb5abf59a50bce86f21f0f Partially-Implements: blueprint centos-rhel-8
2020-01-29Merge "CentOS 8: base and openstack-base images"Zuul1-2/+96
2020-01-29CentOS 8: Update packages in imagesMark Goddard1-96/+30
* Some further changes for python2 vs python3 packages * Allow rabbitmq 3.7.*, since a newer erlang is available * Switch from qemu-img-ev to qemu-img on CentOS 8 * bridge-utils no longer available on CentOS 8 * libvirt-daemon-driver-lxc no longer available on CentOS 8 * Mark some more images buildable for CentOS 8 Change-Id: Iaf5b68ff6d944ae730ca0b1d5832172c106a6c08 Partially-Implements: blueprint centos-rhel-8 Partially-Implements: blueprint centos-rhel-python-3
2020-01-28Merge "Add new option to enable unbuildable images"Zuul1-3/+5
2020-01-28Merge "Reduce duplication in kolla.image.build.run()"Zuul1-17/+3
2020-01-28Merge "Revert "To-revert: Temporarily disable Ubuntu bifrost image building""Zuul1-3/+0
2020-01-28Reduce duplication in kolla.image.build.run()Mark Goddard1-17/+3
Small refactor, now that all call paths use the same methods. Change-Id: I2cd8d3997eec171db043c7042e42174c5ba8c298
2020-01-28Add new option to enable unbuildable imagesMarcin Juszkiewicz1-3/+5
I7a92b762f6a783f92ebca61e5595e1422a92df4f added checking for unbuildable images when someone wants just templates (like TripleO for example). But what if someone wants all images despite their buildability status? Or wants to build for some new distro/arch combo? --enable-unbuildable just ignores internal UNBUILDABLE_IMAGES list and tries all images. Change-Id: I20312b9719c6f5e3dca0b4198607ddae183152f1
2020-01-27build: list only buildable templates for --template-onlyMarcin Juszkiewicz1-0/+10
TripleO uses --template-only to generate Dockerfiles and then use buildah to create container images. But as Kolla generates all files then they need to have a way to exclude not buildable ones. https://review.opendev.org/#/c/699024 is one of such attempts. But if we remove not buildable Dockerfiles then they get what they can build. Change-Id: I7a92b762f6a783f92ebca61e5595e1422a92df4f
2020-01-24Merge "Provision building netcontrold container"Zuul1-0/+1
2020-01-21Merge "centos: disable EPEL by default"Zuul1-1/+1
2020-01-21Revert "To-revert: Temporarily disable Ubuntu bifrost image building"Radosław Piliszek1-3/+0
This reverts commit 347bd599e597f382b0b6b8ddebedad5a90a67f55. Bifrost should be buildable on Ubuntu now. See: https://review.opendev.org/703343 Change-Id: If87adc868dc412e01fa2e18dcadd2eacad87c83c Closes-bug: #1860229
2020-01-21Provision building netcontrold containerGowrishankar Muthukrishnan1-0/+1
Netcontrold container service[1] is used to load balance PMD threads in OpenVSwitch for the dataplane traffic. This patch enables building netcontrold container for Openstack. [1] https://github.com/netcontrold/netcontrold-py Change-Id: I09cb42323d36fcff49da81fc2356c9f83400d5d6 Signed-off-by: Gowrishankar Muthukrishnan <gmuthukr@redhat.com>
2020-01-20To-revert: Temporarily disable Ubuntu bifrost image buildingRadosław Piliszek1-0/+3
We want to support it but it is blocking gate atm due to py3 on Ubuntu. Not affecting C7 due to no py3. Change-Id: I6d0ced90d511405f600e7c4677b1b7083a6adbd2 Related-bug: #1860229
2020-01-09CentOS 8: base and openstack-base imagesMark Goddard1-2/+96
Adds support to the base and openstack-base images for CentOS 8. These images have been removed from the list of unbuildable images, and replaced with all dependent images. Change-Id: I18fba8a5c2f99b700990cbf41c76077a1ec2408a Partially-Implements: blueprint centos-rhel-8
2020-01-09CentOS 8: Add zuul build and publish jobsMark Goddard1-1/+14
Adds build and publishing jobs for CentOS 8 images: - kolla-build-centos8-binary - kolla-build-centos8-source - kolla-publish-centos8-binary - kolla-publish-centos8-source The 'base' image has been added to the list of unbuildable images for CentOS 8 (now separate from the list for CentOS 7). This means that no images will be built - the jobs should essentially be a 'noop'. Change-Id: Ie9a0109bd4eef337358d714e4b5088b8e3de2f23 Partially-Implements: blueprint centos-rhel-8
2020-01-02Add '--quiet' switchMarcin Juszkiewicz1-2/+1
Quiet option turns off all image build logs above CRITICAL level. Handy for checking build/push queue. Change-Id: I9d49c9e6851341c084673ef2946acf4490c3ae8b
2020-01-02centos: disable EPEL by defaultMarcin Juszkiewicz1-1/+1
Our images use 'scsi-target-utils' from EPEL and then can be built without it. So let's disable this repository right after installing package from it. Images can enable EPEL with 'enable_extra_repos' macro. Also added 'disable_extra_repos' macro as we have some images in a need. Change-Id: Id70474e7602b531b63fdc11ae690fd9ed33def74
2019-12-13Merge "Build images with healthcheck scripts for core services"Zuul1-0/+2
2019-12-11skydive: mark as unbuildable on !x86Marcin Juszkiewicz1-8/+2
Ie586b0f249e545877ab1dd156d08e1863cd479ba removed use of rpm packages so it is time to disable building for non-x86 platforms. Upstream provides own container images for several architectures. Change-Id: I4778db57dae0953f5c7116105466c2830592b514
2019-12-10Merge "Revert "Introduce macro to remove Py3 only plugins on CentOS 7""Zuul1-4/+0
2019-12-09Build images with healthcheck scripts for core servicesMichal Nasiadka1-0/+2
blueprint container-health-check Now docker supports healthcheck directive[0] in Dockerfile, which is helpful for checking container aliveness. Base for this patch were healthcheck scripts from tripleo[1]. [0] https://docs.docker.com/engine/reference/builder/#healthcheck [1] https://github.com/openstack/tripleo-common/tree/master/healthcheck Change-Id: Ifc32713cd4d6b45c74855c0ebf5bb65784701d44
2019-12-06Merge "Vitrage: build images for Debian"Zuul1-1/+0
2019-12-06Revert "Introduce macro to remove Py3 only plugins on CentOS 7"Mark Goddard1-4/+0
This reverts the following commits: df987c9d3fca40e0a7529e48a3626dfdd58e2168 d866c63a32a494b8643b166c3b1e36e463a7502f 6b40b655f124d0a95f1b7d89ce04236606a02010 These are no longer necessary as we are using stable/train branch for source images until CentOS 8 / python 3 support is available and working. Change-Id: I5aedf1141862d51c5bb676a7393fc131c452c914 Related: blueprint centos-rhel-python-3
2019-12-06Disable building binary images for senlin-conductor andDincer Celik1-0/+4
senlin-health-manager on debian/ubuntu Change-Id: I370b07c488934b286a8162b1eea0f9b090ec8cab
2019-12-04Merge "Enable repos only when needed"Zuul1-0/+1
2019-12-04Vitrage: build images for DebianViktor Michalek1-1/+0
Change-Id: I73b1964b7b22f1a2d5637209b86559b79602131b
2019-12-02Added Neutron Mellanox agent imageHamdy Khader1-0/+2
Neutron Mellanox agent image is a Neutron base image plus package: python-networking-mlnx. Ubuntu and Debian image bases when build type is binary is not supported because of missing python-networking-mlnx package. Change-Id: If57c34bd5c3aee3e5b1f1c7b3703fd544ce498da
2019-11-29Enable repos only when neededMarcin Juszkiewicz1-0/+1
Disable external repositories by default and enable only when needed. Depends-on: https://review.opendev.org/696480 Implements: blueprint repos-off-by-default Change-Id: Icf2a8397a8349e0fe849d88d160409fd234480a9
2019-11-13Merge "Remove deprecated images"Zuul1-4/+0
2019-11-13Remove deprecated imagesRadosław Piliszek1-4/+0
Change-Id: I2fe57f7cd79724fa8a36bd702d75b013a68ecd1b
2019-11-12Disable Searchlight for CentOS 7/sourceMarcin Juszkiewicz1-0/+5
Searchlight is Python 3 while CentOS 7/source images are Python 2 Change-Id: I9d2e4f3630efad91b5cc94085ad1dd1f6680e017
2019-10-23Do not build rally image for Ubuntu binaryRadosław Piliszek1-0/+1
UCA does not provide rally and the Ubuntu rally depends on python2 packages which conflict with python3 packages. Change-Id: I36c1feaecf2e07e2d9fb8a7f42e899477eaabae4 Closes-bug: #1848295
2019-10-16handle push error properlyMarcin Juszkiewicz1-2/+9
If there was some error during pushing then Kolla was greeting with "all went fine" message anyway: INFO:kolla.common.utils.aodh-api:Trying to push the image ERROR:kolla.common.utils.aodh-api:Get http://10.101.16.1:5000/v2/: dial tcp 10.101.16.1:5000: connect: no route to host INFO:kolla.common.utils.aodh-api:Pushed successfully This patch changes that. Now if there is an error during push then proper exception is raised to PushTask and image is marked with PUSH_ERROR status. This way at the end of build it is easy to spot which images did not got pushed to registry: INFO:kolla.common.utils:=========================== INFO:kolla.common.utils:Images that failed to build INFO:kolla.common.utils:=========================== ERROR:kolla.common.utils:base Failed with status: push_error ERROR:kolla.common.utils:nova-api Failed with status: push_error ERROR:kolla.common.utils:nova-base Failed with status: push_error ERROR:kolla.common.utils:nova-compute Failed with status: push_error ERROR:kolla.common.utils:nova-compute-ironic Failed with status: push_error ERROR:kolla.common.utils:nova-conductor Failed with status: push_error Closes-Bug: #1848019 Change-Id: Id2ab97bf4c0dc3423268a0ea435b56f4a65f7196
2019-10-02Merge "debian: enable congress and zaqar images"Zuul1-2/+0
2019-10-01mistral-event-engine: enable for Debian/UbuntuMarcin Juszkiewicz1-2/+0
Depends-On: https://review.opendev.org/685901 Change-Id: I0c5e5cc895238094e30fac49dfc6e7bd880ca55e
2019-10-01debian: enable congress and zaqar imagesMarcin Juszkiewicz1-2/+0
Change-Id: I331d8ed68ab32d7c56e891cf2e71c4a8157a26de
2019-09-26added broken images to UNBUILDABLE_IMAGESMarcin Juszkiewicz1-1/+3
Change-Id: I52933c535023e8681bbde887364a188450c15663
2019-09-20Merge "Fix retries when pushing images"Zuul1-0/+3
2019-09-19Merge "ppc64le: add UNBUILDABLE_IMAGES entries"Zuul1-1/+35
2019-09-19Fix retries when pushing imagesMark Goddard1-0/+3
Currently the retry mechanism is broken for pushing because the image state gets set to an error state, and is never reset to 'built'. This prevents the PushTask from setting success to True. This change sets the image state to 'built' if the push succeeds, ensuring it overrides any previous failures. Change-Id: I93fc0e383da8fec6b3ca31f8094321c2a0c3af71 Closes-Bug: #1844697
2019-09-19Merge "build.py: fix pep8 warnings"Zuul1-6/+6