aboutsummaryrefslogtreecommitdiff
path: root/docker/neutron
AgeCommit message (Collapse)AuthorFilesLines
2015-10-13Fix issue with su and bad kernelsSam Yaple1-1/+1
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-07Remove an oslo.message 2.2.0 pinSteven Dake1-10/+0
In https://bugs.launchpad.net/kolla/+bug/1483667, oslo.messaging was pinned to 2.2.0. This pin is no longer necessary as this bug has been fixed upstream. backport: liberty TrivialFix Change-Id: Ica9ae41876a754291d4c6ee1235f6e69a4213463
2015-10-08Merge "Remove which from neutron-server"Jenkins1-12/+0
2015-10-06Install agent dependencies from source for CentOSSteven Dake1-1/+10
Several packages are not installed from RPM packages which are required in order for CentOS from source to operate correctly. This looked like sudo was failing to execute, but it was because the dnsmasq binary was not found. backport: liberty Change-Id: If23cfbacd55d9089ffec442399ee0151adea923f Closes-Bug: #1503412
2015-10-06Remove which from neutron-serverSteven Dake1-12/+0
The which tool is installed in the base image now and this extra install is duplicated and has no effect. backport:liberty TrivialFix Change-Id: I70c3edb11f5c847063b6e4ab4f9de7184356ce57
2015-10-06Bring Kolla inline with FHSSam Yaple7-15/+15
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-06Common start.shSam Yaple12-39/+33
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-09-28Neutron Agents json supportRyan Hallisey8-137/+19
Neutron Agents is a special case for json support. Since it's a fat container, there will be multiple commnds that will need to be run in the container. In order to account for this, the commands will be hardcoded until the agents are split out to their own containers. The files will be copied the normal way. Co-Authored-By: Steven Dake <stdake@cisco.com> Change-Id: I9fc226cc7b82c2594db5814d30d453a29a4af8c0 Partially-Implements: blueprint replace-config-external Closes-Bug: #1500566
2015-09-28Merge "Implement a install_type and install_metatype"Jenkins5-5/+5
2015-09-28Merge "remove set_configs"Jenkins3-12/+0
2015-09-28Implement a install_type and install_metatypeSteven Dake5-5/+5
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-27remove set_configsSam Yaple3-12/+0
Change-Id: I9bb0a1fac63cc326234b0f06b1e56b43e0753279 Partially-Implements: blueprint replace-config-external
2015-09-27Remove all fail sections for UbuntuSam Yaple1-9/+4
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-25Fix removal of config-externalSam Yaple3-3/+0
I removed the files but not the COPY commands thus breaking all of Kolla Change-Id: I37d3e0cb94a1ecc12971f485f953310ba8fee53c Partially-Implements: blueprint replace-config-external
2015-09-25Remove config-external.shSam Yaple3-60/+0
Removes config-external for all services that have been replaced in Ansible Change-Id: I839a14418638b977fbc1d02ba6839811b0f909ea Partially-Implements: blueprint replace-config-external
2015-09-24Replace config-external with a JSON file for Neutron (thin)Ryan Hallisey3-18/+12
This is only for the Neutron thin containers. The Neutron agents are still in a fat container. I'll replace in another patch. Change-Id: I8533af52bfa3f268aa8ffb1c16ae49f5a300da27 Partially-Implements: blueprint replace-config-external
2015-09-17Fix broken centos-source- build: add rdo repositoryVladislav Belogrudov3-8/+4
openvswitch requires rdo repository to be installed Change-Id: I173bb3d32bcef2b890ab482083b0ffb830c3b7fb Closes-Bug: #1495470
2015-09-14Source type nova-compute and neutron-agents - no ovs-vsctlVladislav Belogrudov1-1/+5
When booting a vm with centos-source nova-compute and some of neutron-agents fails to find ovs-vsctl binary Change-Id: If1e7b6513babd5623666f01c68815ea8d0a05428 Closes-Bug: #1495470
2015-09-04Add 'rhel' for RPM distrosSteven Dake5-8/+9
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-04Merge "Allow arbitrary source archive name to be imported into Dockerfile"Jenkins1-2/+2
2015-09-03Allow arbitrary source archive name to be imported into DockerfileVladislav Belogrudov1-2/+2
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-03Create openstack-base containerSam Yaple1-1/+1
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-08-31Merge "Fix KOLLA_CONFIG_STRATEGY in neutron agents"Jenkins3-6/+6
2015-08-31Remove dest_filename from build.iniSam Yaple1-1/+1
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-30Fix KOLLA_CONFIG_STRATEGY in neutron agentsSteven Dake3-6/+6
The change from: I01220077d8d25db5f69802ad27e745d90826d69b In some way was lost by the gerrit. This patch just basically redoes that work so the neutron agents will work properly. Change-Id: I92ac1b8601d145a0722b37eda937ee2baac7a7c5 Closes-Bug: #1489664
2015-08-28Move docker_templates to docker dirSam Yaple22-0/+563
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-05-15Restructure builds to allow more flexibilitySam Yaple20-783/+0
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-08linuxbridge check.sh not rightFang Fenghua1-1/+1
linuxbridge check.sh script got wrong value of status. Change-Id: I975562a62c9ebf7afc22289dc96e672ed877537c Closes-Bug: #1452626
2015-05-06Make neutron work with KiloSteven Dake1-1/+1
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-06Move dnsmasq-neutron.conf to /etc/neutron/dnsmasqSteven Dake1-1/+3
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-06The Neutron agents need their configuration directory specifiedSteven Dake4-4/+4
Add a --config-dir specification to each agent run. Change-Id: I0426caf2ca17185c0789753d4aa9637c5b4327ec Partially-Implements: blueprint port-kilo
2015-05-06The neutron dockerfile needs an update for KiloSteven Dake2-1/+10
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-06Port to icehouseSteven Dake3-3/+3
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-06Make neutron-server upgrade the database to headSteven Dake1-1/+1
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-04-27Change the default shell to bashChen Zhiwei7-7/+7
Unify the shell to bash in all Kolla scripts. Change-Id: Ib9591b2f8f344eb88455c5e9b7ecf2164fb5960a Implements: blueprint use-bash-shell
2015-04-21Removes existing network namespaces for neutron-agents containerDaneyon Hansen2-0/+10
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-15Add workaround to work with cirros imageSteven Dake1-0/+8
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-14Neutron doa in current formSteven Dake5-5/+5
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-13Removes check_required_vars for Log FilesDaneyon Hansen2-5/+3
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-13Adds Neutron Agents SupportDaneyon Hansen29-296/+374
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-10Adds neutron-server to neutron container-setDaneyon Hansen4-54/+82
Adds neutron-server components of the neutron container set. Partially Implements: blueprint compute-operation-neutron Change-Id: I63525ae85f4ead4e010cdb9b6bc8059bb9d252e7
2015-04-07Adds Initial Logging SupportDaneyon Hansen6-7/+42
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-06Remove EXPOSE options from DockerfilesSteven Dake1-2/+0
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-01Allow check_for_* functions to be consumed by wait_forMartin André1-2/+2
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-03-28Merge "Partially Implements: Container set compute-operation-neutron"Jenkins1-7/+3
2015-03-27Replace ; with && in DockerfileSam Yaple5-5/+5
When using ';' this can allow the previous command to fail and while the docker build proceeds without realizing a command failed. Switching to '&&' allows the exit code to make it to the docker build command and the build to fail appropriately. Change-Id: Idd0991ed4549542bb10d27da1a0a025d0503b6c1
2015-03-27Partially Implements: Container set compute-operation-neutronDaneyon Hansen1-7/+3
Adds the neutron-linuxbridge-agent to the neutron container set. Change-Id: I20752611c24a3110cc5d2e4fca2d501fc32a4d87
2015-03-02Allow changing base imageMartin André6-6/+6
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-02-26Merge "Remove l3_ovs_wip tag from Dockerfiles"Jenkins6-6/+6
2015-02-24Remove l3_ovs_wip tag from DockerfilesSteven Dake6-6/+6
These tags don't belong in docker files. Instead we should put them in the build system since the build system will be creating a custom From line in the Dockerfile. Partially-implements: blueprint multi-baseos Change-Id: I68d0a0e572e35f39dbe21f7c536d7ac4ca885da3