188 Commits

Author SHA1 Message Date
Sean Mooney
a9e16c8bde introduce bifrost-deploy container
- This change adds support for building and deploying
  a bifrost container for baremetal provisioning.
- This change documents how to manually deploy and bootstrap
  the bifrost container.

Implements: blueprint bifrost-support
Change-Id: I7d895839b11cbf916be33225875465c3358b5aa4
2016-08-31 09:24:24 +00:00
Hui Kang
2973bc7dc5 Add missing container image names to build config file
Change-Id: Ib570bf71a2567653f4643adb3670ecf824d83e61
closes-Bug: #1614354
2016-08-28 23:50:44 -04:00
Jenkins
1fd2d434b1 Merge "Fix bandit gate jobs" 2016-08-28 15:51:00 +00:00
Paul Bourke
fc30d583f9 Fix bandit gate jobs
* Inspected each error and fixed / added nosec where appropriate.
* build-swift-ring.py which was throwing sec errors is no longer used so
  removed it.
* Removed the dev/ directory from being checked.

Closes-Bug: #1617713
Change-Id: I25664cabca4137e5c9f499c1af3f5ce78b86fb56
2016-08-28 08:52:44 +00:00
Jenkins
eb32318e3d Merge "Add dockerfiles for keystone fernet" 2016-08-26 20:09:35 +00:00
Jenkins
1ea09d0752 Merge "Add full support for fernet" 2016-08-26 19:50:58 +00:00
Shaun Smekel
524868c632 Add dockerfiles for keystone fernet
This adds the docker aspects of fernet key bootstrapping as well as
distributed key rotation.

- Bootstrapping is handled in the same way as keystone bootstrap.
- A new keystone-fernet and keystone-ssh container is created to allow
  the nodes to communicate with each other (taken from nova-ssh).
- The keystone-fernet is a keystone container with crontab installed.
  This will handle key rotations through keystone-manage and trigger
  an rsync to push new tokens to other nodes.

The Ansible component is implemented in:
  https://review.openstack.org/#/c/349366

Change-Id: Id610e00e8c63c7f1bc0974c0aa1b3f44c18e1019
Partially-Implements: blueprint keystone-fernet-token
Partially-Implements: blueprint third-party-plugin-support
2016-08-25 20:13:02 +10:00
Shaun Smekel
1c68ae389b Add full support for fernet
This addresses the ansible aspects of fernet key bootstrapping as
well as distributed key rotation.

- Bootstrapping is handled in the same way as keystone bootstrap.
- A new keystone-fernet and keystone-ssh container is created to allow
  the nodes to communicate with each other (taken from nova-ssh).
- The keystone-fernet is a keystone container with crontab installed.
  This will handle key rotations through keystone-manage and trigger
  an rsync to push new tokens to other nodes.
- Key rotation is setup to be balanced across the keystone nodes using
  a round-robbin style. This ensures that any node failures will not
  stop the keys from rotating. This is configured by a desired token
  expiration time which then determines the cron scheduling for each
  node as well as the number of fernet tokens in rotation.
- Ability for recovered node to resync with the cluster. When a node
  starts it will run sanity checks to ensure that its fernet tokens
  are not stale. If they are it will rsync with other nodes to ensure
  its tokens are up to date.

The Docker component is implemented in:
  https://review.openstack.org/#/c/349366

Change-Id: I15052c25a1d1149d364236f10ced2e2346119738
Implements: blueprint keystone-fernet-token
2016-08-25 20:08:22 +10:00
Hui Kang
c096825075 Add etcd container
Change-Id: Ib5a853c0048a45d9085c55804580c7ed2fd0fc07
Partially-implements: bp kuryr-docker-plugin
2016-08-24 13:04:47 -04:00
Jenkins
ed678a829a Merge "add baremetal role to install kolla deps." 2016-08-23 16:28:17 +00:00
Jenkins
20706e223d Merge "Remove log propagate configuration" 2016-08-23 12:02:31 +00:00
Jenkins
e1e28f7505 Merge "Remove Kazoo dependency and Kolla Zookeeper helper" 2016-08-23 10:57:30 +00:00
Lu lei
2fb98a6b82 py3:Remove six.iterXXX
1、As mentioned in [1], we should avoid using six.iteritems/keys
   achieve iterators. We can use dict.items/keys instead, as it
   will return iterators in PY3 as well. And dict.items/keys will
   more readable.
2、In py2, the performance about list should be negligible,
   see the link [2].

  [1] https://wiki.openstack.org/wiki/Python3
  [2] http://lists.openstack.org/pipermail/openstack-dev/
      2015-June/066391.html

TrivialFix.

Change-Id: I0cbe8af3210233a58d25f0df187c3d085405aa2a
2016-08-23 14:34:35 +08:00
Jeffrey Zhang
9946b566d5 Remove log propagate configuration
Disable the log propagate for all logger is bad.

TrivialFix

Change-Id: I5e9a3356c7a34710ac2c020fa32370b5172411d2
2016-08-21 00:54:01 +00:00
Jeffrey Zhang
04d6736e89 Pin to Ubuntu 16.04
Upgrade Ubuntu base image to Xenial

Closes-Bug: #1593599
Change-Id: I5832a729a9a4fa73c02442047c92ba088ce20db3
2016-08-20 22:30:28 +08:00
Szymon Konefal
e0a9347ebc Remove Kazoo dependency and Kolla Zookeeper helper
Related-Bug: #1577194

Change-Id: Idad2a78d3b4251a321c1a05b435bff4625d5fe56
2016-08-19 17:07:19 +02:00
MD NADEEM
e70f8e1439 Add Dockerfile for congress
Change-Id: I30c4d7929940c751bf88c4bf9a0e200025ebd5c8
Partially-Implements: blueprint enable-congress-container
2016-08-19 09:29:24 +05:30
Jenkins
9a7e4c1592 Merge "Skips a debug log during image build" 2016-08-18 03:08:45 +00:00
Jenkins
bed0f0f8d7 Merge "enhancements to install_packages macro" 2016-08-16 17:02:27 +00:00
Sajauddin Mohammad
dbc50ab246 Skips a debug log during image build
Added a condition to skip debug message during image build, when the 
base image is dependent on image of other service

Closes-Bug: #1513904. 
  
Change-Id: I68d568981cebf442b34c958e125b0f921b883247
2016-08-16 10:34:33 +00:00
Jenkins
4adc366d92 Merge "Dockerfiles for Networking-SFC Container" 2016-08-15 15:37:18 +00:00
Abe Music
29fcb04cf3 enhancements to install_packages macro
- Adds debian_package_install method to the jinja environment
  that will return the necessary set of commands needed to
  install packages via apt-get and/or URLs to .deb packages
- Updates install_packages macro to make use of the method
  above

Change-Id: Ie9318a7def54b5034ba91375fd8fd3b589d18349
Partially-implements: blueprint third-party-plugin-support
2016-08-15 08:17:13 -05:00
Sean Mooney
3e8f9986d1 add baremetal role to install kolla deps.
Change-Id: Ie70db1b18a73528b1194e4fbcf53d09fed20f4a0
Implements: blueprint kolla-host
2016-08-10 16:03:08 +00:00
Robin Naundorf
a7c41a8893 Fix inconsistencies in git url
Github is just a mirror of the OpenStack git-repo.
Changed from Github to OpenStack git url wherever possible.

Change-Id: I7941ef86967de4efe7f23ff9fb11ec86c793901e
2016-08-06 14:21:23 +02:00
prithiv
eb41179a73 Dockerfiles for Networking-SFC Container
Networking-SFC is a neutron big-tent project
Kolla does not have Networking-SFC agent support for now. This
is essential for Service Function Chaining use case. Build Networking-SFC
Container.

Change-Id: I67b4d6e061dbe31e2211cd3210726ab4c30cd087
Partially-Implements: blueprint enable-networking-sfc-support
2016-08-06 12:06:39 +00:00
Lu lei
684b483fa8 Using sys.exit(main()) instead of main()
As we known, Exceptions are raised by the sys.exit() function. When they
are not handled, no stack traceback is printed in the Python interpreter.

In this patch we have known main() got return values(eg:0, 1), but
it can't specifies exit status when terminate the main thread by
unusing sys.exit(). So when using sys.exit(main()) instead of main()
may be more readable and reasonable.
TrivialFix.

Change-Id: I184289d28b92a7e345907247c045535a0c42c974
2016-08-02 09:32:28 +08:00
Swapnil Kulkarni (coolsvap)
843f934ede Make kolla-build list-dependencies option work
Change-Id: I465cc8a79b12c188569c9537e14763a6bef8dd43
Closes-Bug:#1606450
2016-07-27 12:37:11 +05:30
qinchunhua
9f596ffe4f Fix dict.values() PY3 compatible
The dict.values()[0] will raise a TypeError in PY3
as dict.values() doesn't return a list any more in PY3
but a view of list.

TrivialFix.

Change-Id: I01297bb68e45db4d15800d2d42e08560da7346bd
2016-07-27 03:55:51 +00:00
Dave Walker (Daviey)
77296ebdee Build docker images for OpenStack Watcher
Watcher is part of the OpenStack big-tent and is formally
known as "OpenStack Infrastructure Optimization service".

Whilst it provides a range of default goals and strategies,
the most relevant case is to enable re-balancing of the
compute hosts by taking CPU usage (data from Ceilometer)
into account and live migrating instances as required.

Currently this only builds the Docker images for type source
but binary builds are gracefully ignored.

The ansible configurations will be part of a later commit.

Change-Id: I9bb81ee625d9fcf6513e44e2ed20384e34da2adc
Partial-bug: #1598929
Partially-implements: bp watcher
Signed-off-by: Dave Walker (Daviey) <email@daviey.com>
2016-07-08 11:29:38 +01:00
Jenkins
02eec8a20c Merge "Add Senlin Docker container" 2016-07-08 09:59:12 +00:00
Eduardo Gonzalez
1d399461ac Add Senlin Docker container
Change-Id: I52e08e2df77106969c5975ebda2510ea8aefa8b5
Partially-implements: bp senlin-container
Signed-off-by: Eduardo Gonzalez <dabarren@gmail.com>
2016-06-30 16:36:25 +02:00
Joshua Harlow
43a38c179a Fix broken save,list images/dependencies options
It's sorta required to actually build the image
list (and strucutre) to make any of these commands
do anything.

TrivalFix

Change-Id: Ib601bd4d2cc84af6d35a8623b77f9b512124d2ad
2016-06-29 17:53:14 -07:00
Joshua Harlow
3bd1f14c4f Be smarter about what to do when making a docker client
Instead of having the program sys.exit when a docker
client object can not be created (which kills all the threads
and messes up the program and its associated state) have a
exception be raised when this (for whatever reason) fails.

Also refactor so that there is a docker task that the docker
client using tasks can all inherit from.

TrivalFix

Change-Id: Ie81aff10cfe6f2fc5c65d53402200e3928fb460c
2016-06-27 14:09:25 -07:00
Jenkins
01d183da27 Merge "Stop using a global logger for all the things" 2016-06-27 06:48:08 +00:00
Michal (inc0) Jastrzebski
dfb0e55740 Customizations continued
To correctly customize lists, we need to specify *_append, *_remove or
*_override variable in customization file.

Change-Id: I18d67ab89089e2696399ff1b99c1047a2f554442
Partially-implements: blueprint third-party-plugin-support
2016-06-24 13:56:20 +00:00
Jenkins
24404a1b5a Merge "Update urls for Delorean repo files" 2016-06-24 11:29:18 +00:00
Paul Bourke
3af14c3402 Update urls for Delorean repo files
delorean.repo is now redirected from trunk.rdoproject.org to
buildlogs.centos.org [0]

[0] https://www.redhat.com/archives/rdo-list/2016-June/msg00206.html

Closes-Bug: 1595568

Change-Id: I650abc34d9cf0c00f9025bd2c62f1bf03fbd96b7
2016-06-24 11:19:00 +01:00
Jenkins
8790492c6b Merge "Update kollaglue repo on docker to kolla" 2016-06-23 15:36:49 +00:00
Hui Kang
480c479ebf Add Kuryr Docker container
Co-authored-by: Mohammad Banikazemi <mb@us.ibm.com>
Partially-implements: bp kuryr-docker-plugin
Change-Id: Ife54f71984ff6c9825769e81fd39e3444c6fe310
2016-06-21 22:54:44 -04:00
Joshua Harlow
929d84b143 Stop using a global logger for all the things
Instead of using the same logger for all the things
which makes it incredibly hard to figure out what the images
and there builds are doing; instead have it so that each
image gets its own logger which is then used by tasks that
process that image.

Each images logs now will (optionally) go to a logs directory
that can be more easily read and looked over and leaves
the main logger for informational/task kind of
output only.

Closes-Bug: #1586478

Change-Id: I939e073a2bc5ed8b5a1e969888fc743d80f468c9
2016-06-21 15:25:05 -07:00
Michal (inc0) Jastrzebski
f1c3422582 Macro install packages
Simplification of package installations

Change-Id: I78c0a84c55e891dec7c9bd21bc61700dba244526
Partially-implements: blueprint third-party-plugin-support
2016-06-15 19:42:02 +00:00
Jenkins
4133778a5f Merge "Change the search path to look locally" 2016-06-14 19:02:13 +00:00
Jeffrey Zhang
3afe149e51 Implement Rally Dockerfile
Partially Implements: blueprint rally-container

Change-Id: If8c4fdb51b8083078dddc68598d48c6e139a615a
2016-06-14 14:30:03 +00:00
Swapnil Kulkarni (coolsvap)
3f063626a2 Update kollaglue repo on docker to kolla
[1] http://lists.openstack.org/pipermail/openstack-dev/2016-June/097227.html

Change-Id: I73af59dcf1e755dbe0579486f1fb0ebe5ca0119c
Closes-Bug: #1592286
2016-06-14 12:34:34 +05:30
Ryan Hallisey
d360d4e5af Change the search path to look locally
In order to use tools/build.py, we need to search
locally for imports.

Closes-bug: #1592030
Change-Id: Idfa651c1268f93366de9f4e3fa80c33be42c71c3
2016-06-13 07:05:26 -04:00
TuanLAF
3772ac05f7 Fix typos in Kolla
TrivialFix

Change-Id: Id916352b419a100d1cae463031e3182bd1080776
2016-06-13 17:46:42 +07:00
Jenkins
9afb69c8de Merge "Mechanism for Dockerfile customization" 2016-06-12 23:58:54 +00:00
Jenkins
319fd3e794 Merge "Add non-intrusive ctrl-c handling" 2016-06-10 03:14:05 +00:00
Joshua Harlow
869e117b53 Add non-intrusive ctrl-c handling
Instead of trying to use a signal handler to stop
when ctrl-c is triggered use technique that cooperates
better with the threads that are running and lets
them die a happy death vs being forced to die in
unpleasant ways.

Closes-Bug: #1586476

Change-Id: I7fdb6a77a144bdd02276cca07b616bbb0c2f1957
2016-06-08 22:00:25 -07:00
Joshua Harlow
a45dc94e8c Use 'image' not 'item'
The things in self.images are images, not items so
reflect these to use the shared 'image' name vs
having a one-off that uses 'item'.

TrivalFix

Change-Id: I781514d3e116de32b4fe61a7f55455282680fec1
2016-06-08 17:50:39 -07:00