47 Commits

Author SHA1 Message Date
Swapnil Kulkarni (coolsvap)
435b21b90d Update ubuntu dockerfiles for formatting
Change-Id: If4be00b937e14ec93443dcb7249cf17099d57cbe
Closes-Bug: #1569417
2016-05-26 04:09:22 +00:00
Jenkins
adc81a8137 Merge "Update ceilometer dockerfile for formatting" 2016-04-26 21:20:31 +00:00
Swapnil Kulkarni (coolsvap)
db12b0c327 Update ceilometer dockerfile for formatting
Change-Id: I1bb3436d9f702b9680eeb0efc4a648c94dd59cb4
Partial-Bug:#1569417
2016-04-21 17:15:47 +05:30
Hui Kang
a703469265 Add missing extend_start files for ceilometer container
Change-Id: I927c0593fc6b669d760b3744a5e77c532a164ca5
closes-Bug: #1571274
Partially-Implements: blueprint ansible-ceilometer
2016-04-17 14:18:07 -04:00
Jenkins
4899c8c070 Merge "Fix missing libvirt python module in ceilometer-compute" 2016-04-14 11:33:23 +00:00
Swapnil Kulkarni (coolsvap)
970075d49a Update Ceilometer dockerfiles for formatting
Change-Id: If5ead9a476a9fede105b328d7ba7422b45eae8a7
Partial-Bug:#1569417
2016-04-12 20:57:37 +05:30
Hui Kang
e8800f9156 Fix missing libvirt python module in ceilometer-compute
Change-Id: I108397dbc86e44a81f82d6e9fce9ae2ad9d0976b
Closes-Bug: #1565054
2016-04-10 00:28:52 -04:00
Hui Kang
127bd6f5da Ceilometer needs pymongo to start
pymongo is needed when ceilometer uses mongodb as backend database

Change-Id: Id75dc7bed30cdfa12f95bb66ca6d4cdf7be0261c
Closes-Bug: #1559370
Related-Bug: #1559390
2016-03-19 23:00:14 -04:00
Hui Kang
da2e1cfed9 Fix type - python-olso-db for ceilometer
TrivialFix

Change-Id: I58c60025ae536729d9f953a6f2e8a3ed22177179
2016-03-07 11:17:10 -05:00
Hui Kang
cd735fd0a7 Fix missing libraries for ceilometer
Change-Id: I5571a5639f9f1b5cb0c8ea87188c3d0b9557cba7
Closes-Bug: #1551407
2016-03-01 10:01:44 -05:00
Jenkins
ca60b3ee5f Merge "Ceilometer ubuntu binary container" 2016-02-18 17:10:21 +00:00
MD NADEEM
7a6edb5797 Ceilometer ubuntu binary container
Change-Id: I653b6b994de2f4d374d90a831d7a56eaff667404
Partially-Implements: blueprint binary-ubuntu
2016-02-10 05:32:48 +00:00
SamYaple
2514bcf0c3 Correct issue with virtualenv rootwrap
Because we use rootwrap in a venv we need to update the exec_dirs.
Without doing this *some* commands will break for various reasons that
I won't get into in this review in detail. But this is required for
neutron-l3-agent in a container + drop-root.

Change-Id: I1a09f7188fdd501b7ce251d9f2fb0e5b10222142
Partially-Implements: blueprint drop-root
2016-02-06 06:48:59 +00:00
Wanlong Gao
d1d8610d9e Remove old config-external.sh
TrivialFix

Change-Id: Ib1923d8782699904cbc6a71d2f326d9c207d0005
2016-01-15 13:36:11 +08: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
Jenkins
61550cefac Merge "Source installation in virtualenv" 2015-11-27 19:27:42 +00: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
Swapnil Kulkarni (coolsvap)
bd99852935 Unblock the gate for ceilometer-alarm failures
Removing the ceilometer-alarm container since the module
has been replaced with aodh

Change-Id: I1b9a5337e40bddaedd0e112bc9b94fba8a1ba3b4
Closes-Bug:#1520074
2015-11-26 20:03:01 +05:30
Swapnil Kulkarni (coolsvap)
d3efbd07dc Drop root for ceilometer
Updates to ensure commands run in the ceilometer containers
are done as the 'ceilometer' user rather than root.

Change-Id: Ic94b876a002d4413f2038c29ffdb275c68323065
Partially-Implements: blueprint drop-root
2015-11-23 22:45:27 +05:30
Swapnil Kulkarni (coolsvap)
d14666a51d Update ceilometer dockerfiles
Updated ceilometer-base dockerfile to include commons package

Change-Id: Ieff651f0b7e9716b1b73e2e192f22e2e39dbe5a6
Closes-Bug:#1484002
2015-11-23 22:43:42 +05:30
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
c3997b14b7 Use openstack/requirements for ceilometer
See Iccb4e99f8e4b6659a19c1817d0f4c697824af25c for context.

Change-Id: I3dd452d0cf502c0adf892b67b152de1c8930c77f
Partial-Bug: #150530
2015-10-15 11:08:58 +00: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
Vladislav Belogrudov
c22cf33268 Allow arbitrary source archive name to be imported into Dockerfile
Currently we cannot import source archives with names different
than expected by hardcoded line in Dockerfiles. This worked well
for Openstack services' tarballs where we expected SERVICE-* root
folder after extraction or kanaka-noVNC for nova-novncproxy docker.
The latter fails if one tries to clone or get tarball under other
names. This fix allows any archive (tar,tgz,zip) or repo name to be
imported into dockerfile.

Change-Id: I869a6a19afaf0e93925572746c22b7589b6600c9
Closes-Bug: #1491415
2015-09-03 16:49:50 +03:00
Sam Yaple
9d3f3f28e2 Create openstack-base container
This creates and moves the dependencies for Ubuntu into a common
openstack-base container. This commit shows dramatically smaller
sizes for all non-openstack containers. The Openstack container remain
the same size.

Change-Id: I2f46420d4b9edcfddda374caddcce906fc708f6c
Partially-Implements: blueprint openstack-common-container
2015-09-03 10:37:45 +00:00
Sam Yaple
45f625a73e Remove dest_filename from build.ini
We can, and should, figure out the filename dynamically rather than
hardcode that value in build.ini since it is not actually a
configurable paramater.

Change-Id: I496d6555e9fa356ab09e62063fd707f43ed08121
Closes-Bug: #1490386
2015-08-31 04:09:59 +00:00
Sam Yaple
cbd42ca6e9 Move docker_templates to docker dir
Updated build.py to reflect this change.
Deprecate --template option and make it a noop.

Change-Id: I7cd98d1ee684a4c64984a49597159868152683b2
Partially-Implements: blueprint remove-docker-dir
2015-08-28 13:33:50 +00:00
Sam Yaple
13062e23e8 Restructure builds to allow more flexibility
As a restructure, nothing is changed from the original behaviour and
naming despite the file structure changing. The symlinks to build had
to be updated generating lots of "deleted" and "new_file".

The new structure is:

docker/${base_distro}/${type}/${container}

base_distro == centos, ubuntu, fedora, etc
type == source, binary, rdo

type rdo is a symlink to binary for backwards compatibility

Two new flags are added to the build-all script to support the ability
to support different base distros and a flag to support binary or source
containers.

There are several added folders that are empty to hold the directory
structure for future containers of these types.

To use a prefix other than centos-rdo- you can set PREFIX in the toplevel
directory .buildconf file

Change-Id: Ifc7bac0d827470f506c8b5c004a833da9ce13b90
2015-05-15 01:32:22 -05:00
Steven Dake
d30f69bc83 Port to icehouse
This represents making build-docker-images --release build
with the icehouse tag and causes docker-compsoe to pull from
the icehouse tag.

Partially-implements: blueprint port-kilo

Change-Id: I66b2c39abc55c0f47152dd90e696fc46b9c58f50
2015-05-06 09:58:43 -07:00
Chen Zhiwei
76c1fe6371 Change the default shell to bash
Unify the shell to bash in all Kolla scripts.

Change-Id: Ib9591b2f8f344eb88455c5e9b7ecf2164fb5960a
Implements: blueprint use-bash-shell
2015-04-27 13:26:37 +08:00
Steven Dake
a87980e5c2 Remove EXPOSE options from Dockerfiles
The EXPOSE options will create a local docker-proxy.  This is
unnecessary with --net=host mode.  The docker-proxy adds about
20 microseconds of latency.  Add documentation to the specification
to indicate where to find the ports that are exposed by the
services in case someone were to desire to add EXPOSE back to
the Dockerfiles.

Change-Id: I398e922fe096d6022a2d5985bb92498f89a5ea31
2015-04-06 20:25:18 -07:00
Martin André
34872c1c2f Allow check_for_* functions to be consumed by wait_for
In order for the `check_for_*` functions to be consumed by `wait_for`,
they should notify of their success but not exit.

As a consequence, the previous behavior is restored by the fail_unless_*
companion functions.

With this change, it is now possible to do:

    wait_for 30 1 check_for_os_service_running keystone

Change-Id: I16ddf8913027030c3ccb5487713d172904508fd6
2015-04-01 16:39:44 +09:00
Martin André
0764fd7dea Allow changing base image
By changing the PREFIX variable in the .buildconf one is now able to
build docker images from different bases.

For example, add the following line to your .buildconf file to build
CentOS based images:

    PREFIX=centos-rdo-

Default base image is Fedora. For now only RH family is supported.

Additionally, changing the namespace either with the NAMESPACE variable
in .buildconf or via --namespace commandline option now changes the
source namespace as well from the default kollaglue one.

Implements: blueprint multi-baseos
Co-Authored-By: Steven Dake <stdake@cisco.com>
Change-Id: I3964cd2292789ea883a1f2d2738a5731a4fff49b
2015-03-02 14:08:06 +09:00
Jenkins
26b564dd06 Merge "Cleanup required variables checks for all containers" 2015-02-06 19:08:46 +00:00
Martin André
5ed1c04c98 Fix validate-maintainer.sh script
The script wasn't reporting any errors due to a typo.
Also fix MAINTAINER field for ceilometer-collector image.

Change-Id: Idf1e2746ae395bb05ee679ca71a10a3f103ebfa8
2015-01-19 16:51:22 +09:00
Martin André
91ca8d4b00 Cleanup required variables checks for all containers
This allows Kubernetes to reschedule containers in case a required
variable is missing, for example when the Kubernetes pod is started
before the service.

The checks were cleaned using the following method:
  * remove duplicates
  * remove check for variables that get a default value in the same file
  * check for all variables used in the file
  * check for required services when it is obvious.

Change-Id: Ib7e0530c410c61f828d36efe8925a20dc9781eab
2015-01-19 16:29:59 +09:00
Martin André
bfa5d0a2ec Fix use of undefined KEYSTONE_SERVICE_HOST in Ceilometer
This variable is never defined anywhere, and it is not one of the
variable automatically exported by k8s or docker.
It should be KEYSTONE_PUBLIC_SERVICE_HOST instead.

Change-Id: Ib65b0189d0a767212fbb7eff4ce81717d492c3e2
2014-12-17 13:22:20 +09:00
Pradeep Kilambi
aed78804ef Add Ceilometer service support
Implements: blueprint kube-ceilometer-container

Change-Id: Ic9be6f2fb57641aa77f7f3a31481b166adad3f36
2014-11-12 14:31:03 -05:00