Browse Source

Fix for AllNodesExtraConfig and fix environment files to create swap files/partitions

This submission:

 - Fix an error in the AllNodesExtraConfig resource.
   (Can't merge servers multiple times).
 - Add environment files to deploy swap file/partition
   without manual edit over the templates.
 - If a swap partition is mounted without having it available
   the deployment will fail, the fix checks that if the
   partition is not created then the deployment continues.
 - Removing empty extra lines in swap templates.
 - Adjust description and remove unnecessary comments in
   swap templates.

Closes-Bug: 1652184

Change-Id: I828bbbbd4c178956aac74af49f80fcd4f62fa16b
changes/73/418273/6
Carlos Camacho 5 years ago
parent
commit
92e203aab6
  1. 3
      environments/enable-swap-partition.yaml
  2. 3
      environments/enable-swap.yaml
  3. 17
      extraconfig/all_nodes/swap-partition.j2.yaml
  4. 8
      extraconfig/all_nodes/swap.j2.yaml
  5. 3
      overcloud.j2.yaml

3
environments/enable-swap-partition.yaml

@ -0,0 +1,3 @@
# Use this environment to create a swap partition in all Overcloud nodes
resource_registry:
OS::TripleO::AllNodesExtraConfig: ../extraconfig/all_nodes/swap-partition.yaml

3
environments/enable-swap.yaml

@ -0,0 +1,3 @@
# Use this environment to create a swap file in all Overcloud nodes
resource_registry:
OS::TripleO::AllNodesExtraConfig: ../extraconfig/all_nodes/swap.yaml

17
extraconfig/all_nodes/swap-partition.j2.yaml

@ -1,11 +1,7 @@
heat_template_version: ocata
description: >
Extra config to add swap space to nodes.
description: Template file to add a swap partition to a node.
# 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
@ -14,9 +10,7 @@ parameters:
description: Swap partition label
default: 'swap1'
resources:
SwapConfig:
type: OS::Heat::SoftwareConfig
properties:
@ -25,8 +19,13 @@ resources:
#!/bin/bash
set -eux
swap_partition=$(realpath /dev/disk/by-label/$swap_partition_label)
swapon $swap_partition
echo "$swap_partition swap swap defaults 0 0" >> /etc/fstab
if [ -f "$swap_partition" ]; then
swapon $swap_partition
echo "$swap_partition swap swap defaults 0 0" >> /etc/fstab
else
echo "$swap_partition needs to be a valid path"
echo "Check that $swap_partition_label is a valid partition label"
fi
inputs:
- name: swap_partition_label
description: Swap partition label

8
extraconfig/all_nodes/swap.j2.yaml

@ -1,11 +1,7 @@
heat_template_version: ocata
description: >
Extra config to add swap space to nodes.
description: Template file to add a swap file to a node.
# 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
@ -18,9 +14,7 @@ parameters:
description: Full path to location of swap file
default: '/swap'
resources:
SwapConfig:
type: OS::Heat::SoftwareConfig
properties:

3
overcloud.j2.yaml

@ -593,8 +593,9 @@ resources:
- {{role.name}}AllNodesValidationDeployment
{% endfor %}
properties:
servers:
{% for role in roles %}
servers: {get_attr: [{{role.name}}, attributes, nova_server_resource]}
{{role.name}}: {get_attr: [{{role.name}}, attributes, nova_server_resource]}
{% endfor %}
# Upgrade steps for all roles

Loading…
Cancel
Save