Commit Graph

56 Commits

Author SHA1 Message Date
Mark Goddard
48c4d923c6 magnum-base image has no footer block
Change-Id: I60c64f0933c0c690f888134956eb3fece1fe0ab7
Closes-Bug: #1699462
2017-06-21 10:44:34 +01:00
Marcin Juszkiewicz
43de60caaf introduce 'install_kubectl' macro
Both kubetoolbox and magnum-conductor install 'kubectl'. In different
versions. And only for x86-64.

New macro knows how to handle other architectures. AArch64 binary is
fetched properly, other architectures (ppc64le for now) gets info that
there is no binary upstream.

Also updated to v1.5.4 as this one is used by kube/* images.

Change-Id: Ia491d6ec7156201742f28b5d1018f2794529b5b4
Partially-Implements: blueprint multiarch-and-arm64-containers
2017-05-12 14:22:29 +02: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
Jenkins
b9e320a7cd Merge "Use LABEL instead of MAINTAINER (deprecated) in all Dockerfile.j2" 2017-04-20 12:32:55 +00: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
Marcin Juszkiewicz
471e669154 magnum-conductor: mark as x86-64 only
"kubectl" used by image is x86-64 binary

Change-Id: I5bd39a899e74acdebdbf467051d9c7bd53be4c6f
Partially-Implements: blueprint multiarch-and-arm64-containers
2017-04-19 15:59:40 +02:00
Marcin Juszkiewicz
69fef5cd59 debian: enable all images enabled for Ubuntu
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
2017-04-04 22:48:18 +02:00
Chao Guo
961224c6cf Use install-pip macro in most source images
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
2017-02-17 08:49:32 -03:00
Jenkins
b43efe5377 Merge "Remove include_header and include_footer in all Dockerfiles" 2017-02-07 14:56:26 +00: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
8bc3628e8a Install osprofiler in magnum base container
Change-Id: Iaa3b0f61902382b473357d6acef951973cd5b673
Closes-Bug: #1661813
2017-02-04 16:27:09 +08:00
Sam Yaple
58eee09c15 use static uid/gid in images
This centralizes all user and group creation into a single source. This
will fix any current and furture uid/gid mismatches (such as with
nova-libvirt).

In the process, we also unify users between the distros in a standard
way. The users in the following containers change from thier defaults:

Ubuntu: _chrony user is now chrony
Ubuntu: memcache user is now memcached
All: qemu user is used for ownership and socket permissions

All uid and gid numbers are customizable via kolla-build.conf

Co-Authored-By: Kris Lindgren <klindgren@godaddy.com>
Change-Id: I120f26ab0683dc87d69727c3df8d4707e52a4543
Partially-Implements: blueprint static-uid-gid
2017-01-17 09:02:21 -03:00
Jeffrey Zhang
48bb37fa37 Remove adding repo in magnum-base Dockerfile
delorean repo is added in base image. No need add it in magnum.

Change-Id: I2bcbd31ee60fc52a01d08d501e8c668982d14576
Closes-Bug: #1640022
2016-11-08 13:17:14 +08:00
Christian Berendt
5cd30d4914 Remove Fedora support
Closes-bug: #1616387
Change-Id: Id97f88b9baa3d48d33ce120962450a374282d044
2016-11-03 10:50:22 +01:00
Vikram Hosakote
3c45625197 Fix Magnum trustee issues
This patch set fixes all Magnum issues in kolla master.

The [trust] section set to magnum.conf
using created trustee domain and user for Magnum
in ansible/roles/magnum/tasks/register.yml using ansible
openstack modules.

Bump shade to 1.5.0 in kolla-toolbox because of
os_user_role ansible module dependency.

Certificate storage is changed from 'local' (non-production)
to magnum's internal storage (x509keypair) or barbican.

Co-Authored-By: Martin Matyas <martinx.maty@intel.com>
Change-Id: Ifcb016c0bc4c8c3fc20e063fa05dc8838aae838c
Closes-Bug: #1551992
2016-09-27 21:23:46 -07: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
Eduardo Gonzalez
8e98e5f15e Change source with dot at extend_start files
Is a best practice in Unix/Linux scripts to use dots
instead of source command.
Using dots will avoid issues with non BASH shells

TrivialFix
Change-Id: Ie6480a1954f853f79faffa093452715ebd9f7d90
Signed-off-by: Eduardo Gonzalez <dabarren@gmail.com>
2016-08-29 07:29:16 +02:00
Shaun Smekel
a9d08726f5 Handle empty package list for install_packages
Currently if the install_packages macro is run with an empty
package list, it will add a yum or apt-get command with no
packages listed.

This bug fix aims to omit this line when no packages have
been given, or, the operator wants to use the "_override" /
"_remove" functionality to disable all packages being
installed in a Dockerfile.

Co-Authored-By: Paul Bourke <paul.bourke@oracle.com>
Change-Id: Ifaaaebfccc3adb0f2f68a35ac08e59378bc87fdb
Closes-bug: 1612446
2016-08-19 10:49:03 +00:00
Eduardo Gonzalez
d4373ed4a6 Update kubectl version at magnum-conductor container
Download kubectl binary instead of download and unpack
kubernetes.tar.gz with all content inside.

Change-Id: I9cc036a922c1986539af4403b5c56091b607e8e7
Closes-Bug: #1609289
Signed-off-by: Eduardo Gonzalez <dabarren@gmail.com>
2016-08-18 12:43:08 +02:00
liyingjun
3486d5bda3 Fix tar command path for magnum conductor using ubuntu
In ubuntu, the tar binary path is /bin/tar instead of /usr/bin/tar.
Change to use tar directly for all os.

TrivialFix

Change-Id: I12562d3ac186acab651ffae715e5c7788cd98b7e
2016-08-17 07:55:33 +08:00
Eduardo Gonzalez
5b45d47369 Customizations for magnum
This patchset contains customization of Dockerfile of magnum
containers

Change-Id: I0655cab1f1fc12bc109a49a20874170b5a99125e
Partially-implements: blueprint third-party-plugin-support
Signed-off-by: Eduardo Gonzalez <dabarren@gmail.com>
2016-08-05 07:45:16 +02:00
Swapnil Kulkarni (coolsvap)
b60d8bc629 Add support for magnum ubuntu binary containers
Change-Id: I5ad90f96aa58a99765feb2a3bc96157a4a61310f
Depends-On: If4be00b937e14ec93443dcb7249cf17099d57cbe
Closes-Bug:#1582518
2016-05-25 12:25:09 +00:00
Swapnil Kulkarni (coolsvap)
2a19d8e6e3 Update Magnum dockerfiles for formatting
Change-Id: Ieaad94d423d58b153bbf7f634be44a0e48ac775f
Partial-Bug:#1569417
2016-04-12 21:37:56 +05:30
Éric Lemoine
feca4a3f4a Remove duplicate code in magnum extend_start.sh
Change-Id: Iaa7049834be784c7410970fb9f0b25086891211d
Partial-Bug: #1546944
2016-02-24 12:04:03 +01:00
Éric Lemoine
d935f2da68 Make Heka collect Magnum logs
Partially implements: blueprint heka
Change-Id: I91a977c6a3632c570f7a6054c8de3f5e3cb6932c
2016-02-19 21:56:10 +00:00
Vikas Jain
8eb2f83eee Use rdo magnum instead of sdake's copr for magnum
Steve is tired of maintaining a copr for Magnum.  People bug him
all the time to update the rpm for RDO.  The RDO community
has offered to take on the maintainance of the Magnum RPM. As this
RPM won't be in current-passed-ci for some time so it needs
to be pulled from current repo for the foreseeable future,
possibly nearing the release of Mitaka.

Change-Id: I9cfb02ab828251ef5bf40ca236f18b5f0f715e34
Closes-Bug: #1539325
2016-01-28 20:32:50 -08:00
David Moreau Simard
d0026fad3d Have curl follow redirects when downloading magnum repository
Otherwise curl downloads an html 302 found file

Closes-Bug: 1537100
Change-Id: Ib77ef0efea54f03f187b97fac4322b473ff35dac
2016-01-22 10:31:32 -05:00
SamYaple
cda0459ad1 Fix pip install settings
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
2015-12-27 03:35:35 +00:00
Jeffrey Zhang
b39c8e2918 import the gpg public key properly
include:
* CentOS 7 RPM GPG key
* Percona repo GPG key
* OpenStack Magnum repo GPG key

Closes-Bug: #1528988
Change-Id: I2419d1d130c2cc4466e884e4022b64d81109943b
2015-12-24 15:54:51 +08:00
Michal Rostecki
febcb600f1 Source installation in virtualenv
Use virtualenv for installation of OpenStack projects and
dependencies to avoid conflicts with Python libraries installed
by non-OpenStack binary packages.

Change-Id: I21ecd673b2e93335b1d3dd4e279e940c9d694c3c
Implements: blueprint virtualenv
2015-11-27 10:22:17 +01:00
Paul Bourke
31cee99d28 Add missing usermod for magnum
Change-Id: I19921f38c858ee7a88830773423d50a1a8162204
Trivial-Fix
2015-11-24 15:55:11 +00:00
Paul Bourke
b3fa0fefee Install magnum-common packages for binary builds
User magnum is missing from the binary image, install magnum-common to
fix this.

Closes-Bug: 1519390
Change-Id: I23e1206ab14b02de716374d28be2ef42e75e5beb
2015-11-24 15:54:33 +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
Paul Bourke
2e50ead57e Fix missing policy.json in Magnum
The magnum api falls over on a request without this file in place

Change-Id: Ic7ff8af22c3142d93e0dcf2b2ed5455685dec658
Closes-Bug: #1517152
2015-11-18 12:10:38 +00:00
Jenkins
3e97fdf4d8 Merge "Drop root for Magnum" 2015-11-18 00:50:40 +00:00
Jenkins
e63c0458f5 Merge "Remove old config-external.sh scripts for magnum" 2015-11-18 00:48:10 +00:00
Paul Bourke
1a536124ad Drop root for Magnum
This change ensures commands run in the magnum containers are done as the
'magnum' user rather than root.

Change-Id: I18e2febae98aae6d6fc6c61cc2817442f408cb75
Partially-Implements: blueprint drop-root
2015-11-17 18:02:18 +00:00
Paul Bourke
9f6106c8f5 Remove old config-external.sh scripts for magnum
These are no longer used.

Trivial-Fix

Change-Id: Ia4dced3b8ac8512097f5cafbb1b06661c6f3eb88
2015-11-17 17:39:25 +00:00
Paul Bourke
1d0b8afa8b Use pip upper-constraints in magnum-base
Change-Id: Ibb5636d897c2b9177c54dfc13f6193e00107776b
Closes-Bug: #1517144
2015-11-17 17:13:15 +00:00
Michal Rostecki
2cd5d9ed74 Add Ansible support for Magnum
Change-Id: Idb25ac4d3148c9b9400cf675ac2e47d35cce6224
Implements: blueprint ansible-magnum
2015-11-13 11:31:34 +01:00
Sam Yaple
5f200e0446 Fix issue with su and bad kernels
Long story short, some kernels before 3.15 had an issue with using su
in a container when the network namespace was --net=host. The gate
has a 3.10 and a 3.13 kernel and has a problem with this. This changes
everything to use sudo

backport: liberty
Partially-Implements: blueprint functional-testing-gate
Change-Id: I4d79ccaa1cddffcc8393f64e7e1be2538efe33e5
2015-10-13 15:13:55 +00:00
Sam Yaple
94162bd08f Bring Kolla inline with FHS
This brings Kolla images inline with FHS and should make finding
locations of things more consistent and reliable with the linux world
at large.

Change-Id: Iece5b4da4bace0fb8b1f41a65ab2c852ec73e6f8
Closes-Bug: #1485742
2015-10-06 03:30:53 +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
Jenkins
6a622ec82c Merge "Implement a install_type and install_metatype" 2015-09-28 10:49:53 +00:00
Jenkins
aadbbcbee0 Merge "remove set_configs" 2015-09-28 10:34:58 +00:00
Steven Dake
0e99b69de4 Implement a install_type and install_metatype
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
2015-09-28 03:16:48 -07:00
Sam Yaple
160f1cc011 remove set_configs
Change-Id: I9bb0a1fac63cc326234b0f06b1e56b43e0753279
Partially-Implements: blueprint replace-config-external
2015-09-27 13:44:50 +00:00
Sam Yaple
39aba34b2a Remove all fail sections for Ubuntu
Ubuntu binary is not supported and may never be. Installing from
cloud-archive packaging is only for the current stable distros, Ubuntu
does not have a Delorean type repo. We place a fail message in the
base image to catch this and remove the messages throughout the
project.

An additional fail message is placed to catch all other things.

Change-Id: Id2953f503ebd42226f6a08e75979ae56511c40f7
Implements: blueprint install-from-ubuntu
2015-09-27 08:10:59 +00:00
Steven Dake
6992049323 Add 'rhel' for RPM distros
Add 'rhel' to list for RPM based distros.  Also sort the distro
list for rpm packages for affected lines.

Change-Id: Ied4cb3e9763d6c6359f314d16185383ac3e006ed
Partially-Implements: blueprint rhel-based-image-support
2015-09-04 03:12:15 -07:00
Jenkins
91bc4b094c Merge "Allow arbitrary source archive name to be imported into Dockerfile" 2015-09-04 06:24:28 +00:00