Carlos Camacho 44ef2a3ec1 Change template names to rocky
The new master branch should point now to rocky.

So, HOT templates should specify that they might contain features
for rocky release [1]

Also, this submission updates the yaml validation to use only latest
heat_version alias. There are cases in which we will need to set
the version for specific templates i.e. mixed versions, so there
is added a variable to assign specific templates to specific heat_version
aliases, avoiding the introductions of error by bulk replacing the
the old version in new releases.

[1]: https://docs.openstack.org/heat/latest/template_guide/hot_spec.html#rocky
Change-Id: Ib17526d9cc453516d99d4659ee5fa51a5aa7fb4b
2018-05-09 08:28:42 +02:00

54 lines
1.5 KiB
YAML

heat_template_version: rocky
description: Template file to add a swap file to a node.
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:
name: {{role.name}}SwapDeployment
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 %}