OpenStack Orchestration (Heat) Agents
Go to file
Steve Baker 8b7af86908 Refactor docker cmd arg building
This change refactors the arg building so that the logic is contained
in dedicated functions for 'docker run' and 'docker exec', instead of
being split between the main loop and docker_arg_map.

Minor changes in behaviour which don't affect the tests include:
- No longer force ascii encoding of arg values
- Extra check to ensure the command is a list before extending cmd
- Remove the unicode/empty-string list value check

Change-Id: I09f3d2ee98020de556a3d0aa72721fe8b7420b2a
2017-02-20 16:27:54 -05:00
heat-config Merge "Prevent trailing whitespace in rendered JSON" 2017-01-23 21:36:44 +00:00
heat-config-ansible Add --skip-tags to ansible hook 2017-01-23 16:30:28 +00:00
heat-config-apply-config Move elements at the top level 2017-01-04 16:57:10 +01:00
heat-config-cfn-init Move elements at the top level 2017-01-04 16:57:10 +01:00
heat-config-chef Prevent trailing whitespace in rendered JSON 2017-01-13 12:07:51 +01:00
heat-config-docker-cmd Refactor docker cmd arg building 2017-02-20 16:27:54 -05:00
heat-config-docker-compose Move elements at the top level 2017-01-04 16:57:10 +01:00
heat-config-hiera Prevent trailing whitespace in rendered JSON 2017-01-13 12:07:51 +01:00
heat-config-json-file Prevent trailing whitespace in rendered JSON 2017-01-13 12:07:51 +01:00
heat-config-kubelet Prevent trailing whitespace in rendered JSON 2017-01-13 12:07:51 +01:00
heat-config-puppet Move elements at the top level 2017-01-04 16:57:10 +01:00
heat-config-salt Move elements at the top level 2017-01-04 16:57:10 +01:00
heat-config-script Move elements at the top level 2017-01-04 16:57:10 +01:00
tests Rename containers to their desired name 2017-02-20 14:24:55 -05:00
.gitignore Move elements at the top level 2017-01-04 16:57:10 +01:00
.gitreview Move elements at the top level 2017-01-04 16:57:10 +01:00
.testr.conf Move elements at the top level 2017-01-04 16:57:10 +01:00
LICENSE Reinstate LICENSE file 2017-01-13 11:37:47 -05:00
MANIFEST.in Add setup files for packaging 2017-01-25 16:15:23 +01:00
README.rst Use heat-agents instead of heat-templates 2017-01-09 16:44:07 +08:00
requirements.txt Move elements at the top level 2017-01-04 16:57:10 +01:00
setup.cfg Add setup files for packaging 2017-01-25 16:15:23 +01:00
setup.py Add setup files for packaging 2017-01-25 16:15:23 +01:00
test-requirements.txt Move elements at the top level 2017-01-04 16:57:10 +01:00
tox.ini Move elements at the top level 2017-01-04 16:57:10 +01:00

Software configuration hooks

This directory contains diskimage-builder elements to build an image which contains the software configuration hook required to use your preferred configuration method.

These elements depend on some elements found in the tripleo-image-elements repository. These elements will build an image which uses os-collect-config, os-refresh-config, and os-apply-config together to invoke a hook with the supplied configuration data, and return any outputs back to heat.

When building an image only the elements for the preferred configuration methods are required. The heat-config element is automatically included as a dependency.

An example fedora based image containing all hooks can be built and uploaded to glance with the following:

git clone https://git.openstack.org/openstack/diskimage-builder.git
git clone https://git.openstack.org/openstack/tripleo-image-elements.git
git clone https://git.openstack.org/openstack/heat-agents.git
git clone https://git.openstack.org/openstack/dib-utils.git
export PATH="${PWD}/dib-utils/bin:$PATH"
export ELEMENTS_PATH=tripleo-image-elements/elements:heat-agents/
diskimage-builder/bin/disk-image-create vm \
  fedora selinux-permissive \
  os-collect-config \
  os-refresh-config \
  os-apply-config \
  heat-config \
  heat-config-ansible \
  heat-config-cfn-init \
  heat-config-docker-compose \
  heat-config-kubelet \
  heat-config-puppet \
  heat-config-salt \
  heat-config-script \
  -o fedora-software-config.qcow2
openstack image create --disk-format qcow2 --container-format bare fedora-software-config < \
  fedora-software-config.qcow2