Steven Hardy 3c6ec654b4 Bump template version for all templates to "ocata"
Heat now supports release name aliases, so we can replace
the inconsistent mix of date related versions with one consistent
version that aligns with the supported version of heat for this
t-h-t branch.

This should also help new users who sometimes copy/paste old templates
and discover intrinsic functions in the t-h-t docs don't work because
their template version is too old.

Change-Id: Ib415e7290fea27447460baa280291492df197e54
2016-12-23 11:43:39 +00:00

59 lines
1.6 KiB
YAML

heat_template_version: ocata
description: >
Extra config to add swap space to nodes.
# Parameters passed from the parent template - note if you maintain
# out-of-tree templates they may require additional parameters if the
# in-tree templates add a new role.
parameters:
servers:
type: json
swap_size_megabytes:
type: string
description: Amount of swap space to allocate in megabytes
default: '4096'
swap_path:
type: string
description: Full path to location of swap file
default: '/swap'
resources:
SwapConfig:
type: OS::Heat::SoftwareConfig
properties:
group: script
config: |
#!/bin/bash
set -eux
if [ ! -f $swap_path ]; then
dd if=/dev/zero of=$swap_path count=$swap_size_megabytes bs=1M
chmod 0600 $swap_path
mkswap $swap_path
swapon $swap_path
else
echo "$swap_path already exists"
fi
echo "$swap_path swap swap defaults 0 0" >> /etc/fstab
inputs:
- name: swap_size_megabytes
description: Amount of swap space to allocate in megabytes
default: '4096'
- name: swap_path
description: Full path to location of swap file
default: '/swap'
{% for role in roles %}
{{role.name}}SwapDeployment:
type: OS::Heat::SoftwareDeploymentGroup
properties:
config: {get_resource: SwapConfig}
servers: {get_param: [servers, {{role.name}}]}
input_values:
swap_size_megabytes: {get_param: swap_size_megabytes}
swap_path: {get_param: swap_path}
actions: ["CREATE"]
{% endfor %}