aboutsummaryrefslogtreecommitdiff
path: root/docker/base
AgeCommit message (Collapse)AuthorFilesLines
2015-11-04Fix RHEL buildsRyan Hallisey1-4/+4
Register with RHEL on the host machine and use yum to setup the repos in the container. Change-Id: I38aaf43fffaf7a235e69b330d5d9f0f1be31fe83 Backport: Liberty Closes-Bug: #1513088
2015-11-03Download, install, and enable rabbitmq_clusterSam Yaple1-1/+3
Change-Id: I84d7587fca64dc8a9f05e326a27511ded79e902d Partially-Implements: blueprint rabbitmq-clusterer
2015-10-23Use EL7 repostitory instead of EL6 for perconaSteven Dake1-2/+1
This patch uses the EL7 binary bits for percona's software instead of EL6. To match binary ABIs, it is recommended to use the same major version of EL for CentOS. backport: liberty Change-Id: I1d2b146a036806c7fd2baef97a6ed861a570d26e Partial-Fix: #1509281
2015-10-21Improve dry-ness of base dockerfile.j2Steven Dake1-13/+3
The delorean repositories no longer have a separate location for openvswitch. Now openvswitch is located in delorean-deps.repo and the rest of delorean master is located in the delorean.repo file. These files can be installed for both RDO and SOURCE, but not for RHOS. This patch uses the install_metatype to make a determination as to when to install these two repos. In the process, we can remove the source RPM installation. Change-Id: Ieedddd9d7ee234b6acdb03f7043d57c18e024951 Closes-Bug: #1508326
2015-10-20Increase Ceph RPM gpg key timeout to 90 secondsSteven Dake1-0/+2
The default timeout for Ceph GPG rpm key retrieval is 30 seconds. In my testing, the GPG key takes approximately 50 seconds to download often resulting in a failure to build containers that need to retrieve the Ceph GPG sign key. Crank up the timer to 90 seconds so the key is more likely to be downloaded, allowing images to be built. backport: liberty TrivialFix Change-Id: I7420cdf8d3b61aa9f4f52795fccbe5da3e48d57b
2015-10-13Make Ceph work for RPM based distributionsSteven Dake2-0/+17
Ceph packages need to be installed in nova, glance, and cinder. Once that is done, Ceph works like a champ! Change-Id: I296da1d04d0c1bcb729f22e65e432d53d561b49c backport: liberty Closes-Bug: #1505549
2015-10-08Merge "Remove debug output in base image yum command"Jenkins1-1/+1
2015-10-06Enable source for openstack-base for RPM distrosSteven Dake1-19/+3
Make openstack-base optimized for from source builds for RPM based distributions. backport: liberty Change-Id: I5f1056ebc09fd55cd5d46da7a09331e38940d888 Implements: blueprint openstack-common-container
2015-10-06Remove debug output in base image yum commandSteven Dake1-1/+1
The base image contains -d 10 in a yum command which prints unhelpful debug output for one of the yum commands. Remove the extranous debug output. backport: liberty TrivialFix This patch is a trivial fix and is a test to set boundaries on what a trivial fix looks like that doesn't require a bug tracker entry. If reviewers feel a trivial fix isn't documented properly by this commit message, please weigh in, as this is a slight suggested change to our policy as first institued by the Magnum community and brought to my attention by Jeff Peeler. Hopefully this compromise won't be abused :) Change-Id: I57f00978d0baaefd73592f4ad6a655e663d83478
2015-10-06Bring Kolla inline with FHSSam Yaple3-5/+4
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 Yaple3-6/+20
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-29Merge "Make a openstack-common container for CentOS variants"liberty-rc1Jenkins1-82/+0
2015-09-29Make a openstack-common container for CentOS variantsSteven Dake1-82/+0
Only implements CentOS (RPM family) binary in openstack-common. Change-Id: I5249d0ffaf4c0c946ee2347d5519391ded160cea Partially Implments: blueprint openstack-common-container
2015-09-29Fix ceph after config-external removalSam Yaple1-3/+5
Change-Id: I46dc2f02dda8219878eee3755b0891f4c3450682 Partially-Implements: blueprint replace-config-external
2015-09-28Merge "Allow conf files to be optional"Jenkins1-6/+17
2015-09-28Merge "Significant refactor of base image"Jenkins1-28/+59
2015-09-28Merge "Implement a install_type and install_metatype"Jenkins1-0/+1
2015-09-28Allow conf files to be optionalSam Yaple1-6/+17
There are situations where we need to copy-if-exists mainly in cluster setups. This is needed to replace config-external for ceph right now Change-Id: I3c0898d8c584338a38e6ce4c4146e145910c5a52 Partially-Implements: blueprint replace-config-external
2015-09-28Merge "remove set_configs"Jenkins1-20/+3
2015-09-28Significant refactor of base imageSteven Dake1-28/+59
This refactor organizes the code as follows: If RPM family: execute YUM repo setup if binary install binary tools if source install source tools IF DEB family: install source tools I have tested building and everything seems fairly solid except possilby RHOS. The long term goal of this patch is to allow us to add our own repos in the "execute YUM repo setup" section of the base file based upon OpenStack Infrastructure YUM repos. Partially-Implements: blueprint rhel-based-image-support Change-Id: I759fb8fc050973460c9c69bb500de68e88a68b3b
2015-09-28Implement a install_type and install_metatypeSteven Dake1-0/+1
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 Yaple1-20/+3
Change-Id: I9bb0a1fac63cc326234b0f06b1e56b43e0753279 Partially-Implements: blueprint replace-config-external
2015-09-27Remove all fail sections for UbuntuSam Yaple1-0/+23
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-21Merge "Add missing dependency repository for Liberty for EL"Jenkins1-0/+1
2015-09-20Merge "Remove ceph as external repo"Jenkins2-4/+0
2015-09-20Merge "Add sudo for RHEL builds"Jenkins1-0/+2
2015-09-20Merge "Install which if its not installed in base"Jenkins1-0/+2
2015-09-19Remove ceph as external repoSam Yaple2-4/+0
* The cloud-archive now provides the most recent version of Ceph (hammer) and should be preferred over adding a new repo. * The ceph signing key changed.[1] [1] https://securityblog.redhat.com/2015/09/17/important-security-notice-regarding-signing-key-and-distribution-of-red-hat-ceph-storage-on-ubuntu-and-centos/ Change-Id: I5992184f115106a9c853d205d7d79c35e1b0cf27 Closes-Bug: #1497507
2015-09-18Add missing dependency repository for Liberty for ELDavid Moreau Simard1-0/+1
There are three repositories for liberty in entreprise linux: - delorean - delorean-liberty-testing - delorean-common-testing This commit adds the two missing ones so that delorean can pull the proper dependencies. Otherwise, it might have either broken dependencies or outdated ones from EPEL. Change-Id: Ia815b38d3a83a89c582ea874e39c170d618b99e5 Closes-Bug: #1497436
2015-09-18Merge "Fix broken centos-source- build: add rdo repository"Jenkins1-0/+8
2015-09-17Refactor set_configs.pySam Yaple1-144/+119
This refactor brings the logging in line with the rest of Kolla. The fucntion names were updated to reflect thier new role. Additionally, it fixes several issues with the permissions which currently break all containers that use set_configs.py It will also work with source being a directory or a file now. Change-Id: I4a197a343e3baf3bd31532debdff5972adb8aefa Partially-Implements: blueprint replace-config-external
2015-09-17Add sudo for RHEL buildsSteven Dake1-0/+2
RHEL does not include sudo in the default container image, while other RPM based distros do. As a result, some services don't work. Add sudo to the base image. Change-Id: I7014d8cbd90288456e5ab3badcd601ef9cdd0c87 Partially-Implements: blueprint rhel-based-image-support
2015-09-17Install which if its not installed in baseSteven Dake1-0/+2
Some variants of RHEL containers are missing the 'which' command. Percona's software used by mariadb depends on which, but doesn't have a hard dependency requirement since it is usually installed in the distribution. To make mariadb work multinode on RHEL, install which all the time for RPM distros. Change-Id: I2c6aaa77a1fc8b7028b658a0dfd1935c1f1d738e Partially-Implements: blueprint rhel-based-image-support
2015-09-17Fix broken centos-source- build: add rdo repositoryVladislav Belogrudov1-0/+8
openvswitch requires rdo repository to be installed Change-Id: I173bb3d32bcef2b890ab482083b0ffb830c3b7fb Closes-Bug: #1495470
2015-09-17Merge "Use Liberty cloudarchive repo for Ubuntu"Jenkins2-9/+2
2015-09-16Use Liberty cloudarchive repo for UbuntuSam Yaple2-9/+2
Additionally remove rabbitmq since the correct version is now provided in cloudarchive repo. Change-Id: I215f03c4770f3049a9498c36c6ee9e819ce0acae Closes-Bug: #1495836
2015-09-15Replace config-external with a JSON filerthallisey2-1/+219
Replace config-external with JSON file. The JSON file will be placed in each of the services directories with expected location and destination. Set-configs.py will be responsible for interpreting the JSON file, creating the necessary directories, moving config files, and and providing a command line for start.sh to run the service with the correct config files specified. Partially-Implements: blueprint replace-config-external Change-Id: I5e2e69dfe3ae7f938fcf51f1cd450aaa10e7f1e3
2015-09-12Make RHEL build from sourceSteven Dake1-8/+9
This patch enables building from source in RHEL. It works by making the repositoroies specific to RHEL7 run in either from source or from binary/rhos builds. Change-Id: I795284cccc87c4a87d58c93ec73b3f9ea08878f2 Partially-Implements: blueprint rhel-based-image-support
2015-09-04Add support to the base image for RHELSteven Dake1-5/+12
Add support to the base image for running RHEL containers. Document how to register a system with RHN in image-buliding.rst. Change-Id: Id69c114cf734a8242066b8d7d05ba19c07af036a Partially-Implements: blueprint rhel-based-image-support
2015-09-03Rename Galera to MariaDBSam Yaple1-1/+1
Change-Id: I3134ba72e2ce4e85a17facbc3b5af4c1c3438d33 Closes-Bug: #1491740
2015-09-03Create openstack-base containerSam Yaple1-39/+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-09-03Reduce install sizeSam Yaple1-0/+15
This is a trade-off, it increases the base size some _but_ it decreases the total size by a few hundred MB. Partially-Implements: blueprint openstack-common-container Change-Id: I1216deed122aa734e0c84325264a53711d94ea4c
2015-08-31Merge "Add Ansible support for Heat"Jenkins1-3/+7
2015-08-30Ceph containerrthallisey2-0/+4
Running ceph in a container requires 2 pieces: - ceph-mon - objectstorage-daemon (osd) Co-Authored-By: Sam Yaple <sam@yaple.net> Change-Id: I33e5baf72e4bc493889da0d796041acfd1a2cad3 Partially-Implements: blueprint ceph-container
2015-08-30Remove pam+noauditSam Yaple1-19/+1
This version of pam conflicts with ceph-common and needs to be removed which is fine since we now have true Ubuntu images. Change-Id: I1e85352a869d814bc2e26b9568ac1ccc93ca899f Partially-Implements: blueprint ceph-container
2015-08-29Add Ansible support for HeatSteven Dake1-3/+7
This changes bootstrapping of the Heat container to bootstrap the Heat container with a heat domain user. This requires some work from bootstrap.yml to pass in several environment variables needed by the heat domain setup script. Co-Authored-By: Sam Yaple <sam@yaple.net> Change-Id: Iab05983754fa514835cb5ff54d775faa18773110 Partially-implements: blueprint ansible-heat
2015-08-28Move docker_templates to docker dirSam Yaple4-0/+285
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 Yaple2-215/+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-06Readd Zaqar for Juno series since that was where it was introducedSteven Dake1-0/+3
Change-Id: I379844bb46d9ac1b933124b1736b7594700f88a8 Partially-implements: blueprint port-kilo
2015-05-06Remove Zaqar for IcehouseSteven Dake1-3/+0
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