330 Commits

Author SHA1 Message Date
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
Jenkins
354ba01c8f Merge "Fixes Nova NoVNC" 2015-05-14 17:49:46 +00:00
Jenkins
a19f8fd990 Merge "Fix image build for barbican" 2015-05-13 21:13:12 +00:00
Daneyon Hansen
fa51eb4b53 Fixes Nova NoVNC
Previously, vnc was not completely working properly because
nova.conf config flags were not properly implemented in t he correct
containers.

This patch moves the nova.conf config flags for vnc to the proper
containers. Additionally, the patch modifies the proxy client ip
param to be consistent with the param within nova.conf and adds
all the novnc params to docs.

Change-Id: I1944baca64ccd113bbca582784b08f90dc0eff69
2015-05-12 12:11:40 -07:00
Jenkins
91b283ad10 Merge "Add Magnum Containers as a Service to Kolla" 2015-05-11 19:22:00 +00:00
Jeff Peeler
0976ba6b21 Fix image build for barbican
tar package was missing

Change-Id: Ic932455fe341cdb7acfe79c53a450071d1d2b1b6
2015-05-11 15:12:41 -04:00
Steven Dake
5a06901664 Add Magnum Containers as a Service to Kolla
This adds Magnum Containers as a Service to Kolla.

Change-Id: I572cd62845515f42a6a16291d2bd87ad8d972e24
Implements-blueprint: container-magnum
2015-05-11 09:26:02 -07:00
Harm Weites
861ece743e Move Horizon to / and make it work in the first place.
Having the dasboard in /dashboard doesn't feel right, especially
since there is no automatic redirect when people browse to the ip or
hostname. Which would be a natural first try. Moving to / now to make
the process behave in a simpler fashion.

Because of a packaging error the js/css wouldn't load properly, next
to that there is an issue with a supposed missing 'manage.py
compress' run. This is handled through Kolla now as well (for the
time being).
There is another supposed bug in packaging that makes webfont.ttf
return a 404. This is because of a missing alias for /static stuff,
and with moving the whole thing to / this gets adressed as well.

Change-Id: I64cd7c9effad6cf9ec7c6a41f34e1184640c8adc
2015-05-09 21:56:52 +02:00
Jenkins
08f9553339 Merge "linuxbridge check.sh not right" 2015-05-07 16:46:56 +00:00
Fang Fenghua
f374a02a75 linuxbridge check.sh not right
linuxbridge check.sh script got wrong
value of status.

Change-Id: I975562a62c9ebf7afc22289dc96e672ed877537c
Closes-Bug: #1452626
2015-05-08 00:32:54 +08:00
Daneyon Hansen
8b6d7b44b8 Fixes Nova NOVNC and Consoleauth Startup Failure
Previously these services would not start because the start
script requires the associated log file to exist. The default
settings for these 2 log files are blank causing the failure.
Since the log files are not required for the services to start,
this patch removes the parameter requirement from both start
scripts.

Change-Id: I84d3d128728075e52282b49d9df229917a34a7b5
2015-05-07 16:18:34 +00:00
Steven Dake
76bd9e1ab8 Nova deprecated proxying options in the DEFAULT group
In Kilo Nova deprecated proxying options in the DEFAULT group.  Instead
they were moved to the "neutron" group.  This resulted in the metadata
service not serving up metadata.

See this bug for more information:

    https://bugzilla.redhat.com/show_bug.cgi?id=1217999

Change-Id: I4f7eac0100d31c5329f8d1857f6d7da1bb6784da
2015-05-06 13:54:04 -07:00
Steven Dake
14fb8fd69a Make neutron work with Kilo
Neutron was loading a bunch of modules that are not currently
supported in Kolla.  Remove them as they were causing problems
loading Neutron.

Partially-Implements: blueprint port-kilo

Change-Id: If53071bbb0a22aa05219b9e99ca6d693f96db4ce
2015-05-06 13:54:04 -07:00
Steven Dake
57af5e43c4 Add lock_path and instances_path to config
Both of these paths were missing from the configuration
but they appear necessary for Kilo.  I'm not clear on why
it worked ok in Juno, perhaps different defaults.

Change-Id: I8b7c375627ada860356f9b9fcc205751083b804c
Partially-Implements: blueprint port-klo
2015-05-06 13:54:04 -07:00
Steven Dake
2ef9203ece Move dnsmasq-neutron.conf to /etc/neutron/dnsmasq
The default dnsmasq configuration file doesn't operate with the Kilo
agents in /etc/neutron when used with the --config-dir option.  Instead move
it to a subdirectory.

Change-Id: Iab8a54e879f8e630ba38205750ca9670e82834df
Partially-Implements: blueprint port-kilo
2015-05-06 13:54:04 -07:00
Steven Dake
4942e642cf The Neutron agents need their configuration directory specified
Add a --config-dir specification to each agent run.

Change-Id: I0426caf2ca17185c0789753d4aa9637c5b4327ec
Partially-Implements: blueprint port-kilo
2015-05-06 13:54:04 -07:00
Steven Dake
dd06c2347b The neutron dockerfile needs an update for Kilo
policy.json comes from the openstack-neutron package and is required
for the agents to run.  So install it.  fwaas_driver.ini has been deleted
in master and in the kilo branch, but the agents won't run without the
file present.  So copy one from the Juno release.

fwaas_driver.ini is probably not actually required, but there is a
configuration problem somewhere in our Neutron code base.  We are out
of time for the Kilo branch, so this short term workaround should be fine.

Change-Id: I154599925308765349634b1a53e598599fc20ec1
Partially-Implements: blueprint port-kilo
2015-05-06 13:54:04 -07:00
Steven Dake
5a06b0a075 Glance has some undefined dependencies in Kilo packaging
Glance has two undefined dependencies.  Without installing these
dependencies out of band, glance will not operate.

Change-Id: I096881467d8e0022d58e6c6f745e610d9332dd82
Partially-Implements: blueprint port-kilo
2015-05-06 13:54:04 -07:00
Steven Dake
747f80e928 Make nova read config files for Kilo
In Kilo, nova no longer reads the config files automatically.  They must
be specified in the command line to run the nova-* tools.

Change-Id: Ifbdf4fd3f952f7bb65e9937b46cf9b96e262c3b0
Paritally-Impleents: blueprint port-kilo
2015-05-06 13:54:04 -07:00
Steven Dake
c81b003309 Port to Kilo
Use kilo upstream RPM packages

Partially-implements: blueprint port-kilo

Change-Id: Ia0b4db5dc8e40c01184871e77458dc718c3c46cd
2015-05-06 13:54:00 -07:00
Harm Weites
5ffc66cd69 Add a novnc container running the novnc-proxy.
All VNC-specific configuration bits are moved from nova-api-base to
nova-compute and the new nova-novncproxy and nova-consoleauth
containers. The compose specification has been updated to reflect this.

A future patch will make the desired backend configurable (spice/vnc).

Change-Id: I8b64abf125fd1ecd7d3463515e3717dd9bd60420
Blueprint: novnc-container
2015-05-06 22:32:38 +02:00
Steven Dake
d19adb6a6b Readd Zaqar for Juno series since that was where it was introduced
Change-Id: I379844bb46d9ac1b933124b1736b7594700f88a8
Partially-implements: blueprint port-kilo
2015-05-06 10:01:16 -07:00
Steven Dake
68594d873f Port to Juno
This represents the Juno release of the images.

Partially-implements: blueprint port-kilo

Change-Id: I2837ec25a2aa093b7fff7519f3ed608ec93736bf
2015-05-06 09:58:43 -07:00
Steven Dake
6e11af5985 Change nova net config to work properly with Neutron for Juno and later
Change nova networking config to work properly with Neutron Juno and later.

Partially-implements: blueprint port-kilo

Change-Id: I18c324c34b4c3af8526d32b3e42f426ec519750b
2015-05-06 09:58:43 -07: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
Steven Dake
d8a7af93eb Remove Zaqar for Icehouse
Zaqar was introduced in Juno, so remove it prior to branching
icehouse, then add it back in after branching icehouse.

Partially-implements: port-kilo

Change-Id: Icce95b4d404e6d8238206716e74f6826bc860860
2015-05-06 09:58:39 -07:00
Steven Dake
35c17ebb5a Setup nova networking properly for Icehouse
This sets up nova networking properly to work with Neutron in the Icehouse
release.

Partially-implements: blueprint port-kilo

Change-Id: I0d37411c61d0d705d1ddf39c25c6610ea04f56f1
2015-05-06 05:33:55 -07:00
Steven Dake
ea0f5c7efa Add heat-api-cfn
Add Heat-api-cfn for wait conditions

Magnum needs wait conditions in order to operate properly.  heat-api-cfn
is where wait conditions connect.

Change-Id: I56742dd96e4607dc0042d0cef4e18c922f9ed736
Implements: blueprint container-heat-api-cfn
2015-05-06 05:33:55 -07:00
Steven Dake
61cc479e90 Make neutron-server upgrade the database to head
Rather then upgrading to a specific version of OpenStack, just
upgrade to Head.  This works for both juno and kilo.

Change-Id: I6305218eabd7de0878e24c8fdae968ac6d612175
Partially-implements: blueprint port-kilo
2015-05-06 05:33:55 -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
Jenkins
005ca3d90e Merge "remove wait_for from glance-api" 2015-04-21 20:53:47 +00:00
Daneyon Hansen
17fc2d9b47 Removes existing network namespaces for neutron-agents container
Previously, network namespaces would not work correctly when
restarting or stop/rm/start the neutron-agents container. This
is because network namespaces created within the container are
associated to the container's pid: /pid/$CONTAINER_PID/ns/net.
With this patch, when a container starts or restarts, the l3/dhcp
agent start scripts will remove any existing qrouter/qdhcp network
namespaces before starting the agents. The agents will recreate the
necessary network namespaces since they are stored in the db.

Closes-Bug: 1444219

Change-Id: Ia86729766fe8c2fc145b3a02d519746b149a73bb
2015-04-21 07:50:48 +00:00
Steven Dake
64a2cf40a5 Add workaround to work with cirros image
The cirros image uses an old dhcp client which does not work
properly with hardware that has checksum offload enabled.  Add
a bootp rule to rewrite the checksum via iptables.

Latest cirros 0.3.33 is afflicted by this bug.

Change-Id: Ibfd1f87af5d0bef9fcb1354121e76e4e0db8ab5e
2015-04-15 19:18:41 -07:00
Steven Dake
095fbd7d7c Neutron doa in current form
The nova-config.sh script was exiting because of incorrect shell syntax.

The correct syntax for a regex search is
[[ haystack =~ needle ]].  The .*needle.* is unnecessary.  I think this shell
script exited because a period was missing.

Change-Id: I3aca5e0729eb5fedbe9ecb4d75ed85d5a1c7815a
2015-04-14 18:55:48 -07:00
Steven Dake
f8768acff7 remove wait_for from glance-api
For some reason glance sometimes fails to permanently find keystone
while other services do find keystone.  The host also has full access
to keystone.  Change wait_for to fail_unless.

This could be a docker bug, a wait_for bug, or some other problem.

Change-Id: I02d611d65b7ffddb9c27101fd60e2a8b7cc25658
2015-04-14 11:20:03 -07:00
Steven Dake
f4319a9a21 CentOS 7.1 image doesn't work with libvirt
The libvirt package has a dependency on systemd-libs and systemd,
while the centos 7.1 container installs systemd-container-libs
and systemd-container.  We don't need either of these systemd tools
but they reuslt in a broken build of the system if they are missing.

As is, the libvirt container will not build.

Change-Id: I8e5aac0e3a7e9d88a81733a3048971fe9d48ba56
2015-04-14 10:56:41 -07:00
Daneyon Hansen
882a859ff5 Removes check_required_vars for Log Files
Previously, check_required_vars was requiring log file variables
to be set in openstack.env. This would cause an error when
starting nova/neutron containers that used default (blank) log
file settings. Since the log files are not required
for the services to start, the default log files are left blank
(without a value in the K/V pair). This patch removes the
log_file variable for check_required_vars in each nova/neutron
script.

Change-Id: I169baab28f63a0e0ae06c8aef21b5e8d3155bdda
2015-04-13 17:17:52 +00:00
Daneyon Hansen
ed107a5e26 Adds Neutron Agents Support
Previously, the agents ran in seperate containers. Since some of
the agents create and use network namespaces, runnning them in
seperate containers has become a challenge. This patch adds
neutron agent support in a single container.

Partially Implements: blueprint compute-operation-neutron

Change-Id: If4f893abd50d90b58e8435ec2659870dce36951c
2015-04-13 07:34:12 +00:00
Daneyon Hansen
2f2bb366e0 Adds neutron-server to neutron container-set
Adds neutron-server components of the neutron container set.

Partially Implements: blueprint compute-operation-neutron

Change-Id: I63525ae85f4ead4e010cdb9b6bc8059bb9d252e7
2015-04-10 03:11:23 +00:00
Daneyon Hansen
0b671ad58d Adds Initial Logging Support
Previously, logging was hard coded into the nova and neutron
containers. This patch creates two common params for logging:

DEBUG_LOGGING
VERBOSE_LOGGING

and sets default values of verbose=true and debug=false. This patch
implements logging for Nova and Neutron. Add'l OS service config
scripts and images will need to be updated to use the logging
params.

Change-Id: I03d48005d5b4789aa3c519879a20d963ef1cbaa3
2015-04-07 19:13:29 +00:00
Jenkins
5ea37557cf Merge "Remove building of pam+noaudit and place in copr instead" 2015-04-07 14:53:52 +00:00
Jenkins
7a29958949 Merge "libvirtd provides was removed from centos7.1" 2015-04-07 14:50:47 +00: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
Steven Dake
f4506ddd60 Remove building of pam+noaudit and place in copr instead
COPR is a repository for third party packages built by the Fedora build
system.  Instead of dragging in 250MB of dependencies to build pam, build
externally and load only the RPM into the image.

The pam that is built externally is built with the --with-noaudit flag
and a Provides: pam line.

Change-Id: I28396996943d2fdc12b253faf62af8623c8b0e73
2015-04-06 20:22:34 -07:00
Steven Dake
1a530dca4c libvirtd provides was removed from centos7.1
the libvirtd package "Provides" wwas removed from the libvirt packaging.
To workaround this problem just install libvirt-daemon in CentOS 7.1 or Fedora
20+.

WIthout this change, an install of libvirtd does not actually install
libvirtd.  The yum tool will not fail if libvirtd is specified so we weren't
catching this in the build.

Change-Id: I81e64f6f659aa0466369dad4b0574ebb24c99555
2015-04-06 11:09:19 -07:00
Jenkins
0573da4424 Merge "Load appropriate modules for libvirt" 2015-04-03 18:01:15 +00:00
Jenkins
ba175c61e1 Merge "Simplify wait_for calls" 2015-04-02 13:53:06 +00:00
Jenkins
92b129968d Merge "Deal with CentOS 7.1 breakage" 2015-04-02 01:06:40 +00:00
Steven Dake
82db9eb6c7 Deal with CentOS 7.1 breakage
The baseurl is busted in CentOS latest RDO images

Change-Id: Id619a28a6207a8c70835a12416e6f7b432d49811
2015-04-01 16:00:14 -07:00
Sam Yaple
2f0f37f97b Load appropriate modules for libvirt
Loads ebtable_nat, ip6_tables, ip_tables, and the appropriate kvm module
if the cpu supports it.

Change-Id: I69995b06da6da4169a2f0d207608543820d8a89e
2015-04-01 08:35:34 -05:00