heat-templates/hot/software-config/elements
Dan Prince 7c5aae183a A hook which invokes os-apply-config.
The intent is for this element (hook script) to be used in place of the
one in tripleo-image-elements which relies on an external signal handling
shell script at the end of the os-refresh-config run
(99-refresh-completed).

This version will run os-apply-config and return a signal immediately.
Because it uses the heat-hook mechanisms it also supports a broader set of
signal handling capabilities... which 99-refresh-completed doesn't fully
support.

Change-Id: Ic9402ff93cbc840bec1debcd8881de563d03cbf0
2016-09-29 14:46:45 -04:00
..
heat-config Make hooks dir discovery more flexible 2016-09-01 10:15:31 +12:00
heat-config-ansible Add test code for software config hook for ansible 2015-10-05 08:14:24 +00:00
heat-config-apply-config A hook which invokes os-apply-config. 2016-09-29 14:46:45 -04:00
heat-config-cfn-init Use relative path for cfn-init 2015-02-27 12:40:35 +13:00
heat-config-chef Chef-Zero software config hook 2016-01-12 15:50:31 -06:00
heat-config-docker-compose Truncate docker-compose.yaml to zero bytes 2016-01-13 11:18:24 +05:30
heat-config-kubelet Add missing SCRIPTDIR variable 2015-04-22 20:21:50 +05:30
heat-config-puppet Fix some typos 2016-07-19 18:01:30 +02:00
heat-config-salt Clean imports in code 2016-09-08 15:41:51 +07:00
heat-config-script Enable script hook to handle Json input 2014-11-21 13:05:21 +08:00
README.rst Fix example of image building for heat 2015-08-06 14:31:47 +03:00

README.rst

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-templates.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-templates/hot/software-config/elements
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
glance image-create --disk-format qcow2 --container-format bare --name fedora-software-config < \
  fedora-software-config.qcow2