Browse Source

Add Salt Pillar sample shell script

master
Pekka Helenius 6 years ago
committed by GitHub
parent
commit
1098e4e5e7
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 71 additions and 0 deletions
  1. +71
    -0
      scripts/salt_pillar_sample.sh

+ 71
- 0
scripts/salt_pillar_sample.sh View File

@ -0,0 +1,71 @@
#!/bin/sh
# Author: Pekka Helenius (~Fincer), 2018
#
# - This script creates two different text strings for two minions: minion_1 & minion_2
# - This script is meant to be run on Salt master
#
# - This script creates the following files on master:
# /srv/pillar/top.sls
# /srv/pillar/minion-1.sls
# /srv/pillar/minion-2.sls
# /srv/salt/files/pillarfile
# /srv/salt/myfirstpillar.sls
if [ $(id -u) -eq 0 ]; then
mkdir -p /srv/pillar
tee /srv/pillar/top.sls <<PILLAR_TOP
base:
'minion_1':
- minion-1
'minion_2':
- minion-2
PILLAR_TOP
tee /srv/pillar/minion-1.sls <<MINION_1_DATA
test_variable: 'secret like coffee shop wants to say hello to the world'
MINION_1_DATA
tee /srv/pillar/minion-2.sls <<MINION_2_DATA
test_variable: 'hidden miniart: superman vs. hulk figures'
MINION_2_DATA
mkdir -p /srv/salt/files
tee /srv/salt/files/pillarfile << PILLARFILE_CONTENT
This is my pillarfile which has the following content:
{{ pillar['test_variable'] }}
PILLARFILE_CONTENT
tee /srv/salt/myfirstpillar.sls <<GENERIC_PILLAR
pillar_file:
file.managed:
- user: 1000
- group: 1000
- name: /tmp/pillarfile_for_{{ grains['id'] }}
- source: salt://files/pillarfile
- makedirs: True
- template: jinja
GENERIC_PILLAR
if [ ! -f /srv/salt/myfirstpillar.sls ] || \
[ ! -f /srv/salt/files/pillarfile ] || \
[ ! -f /srv/pillar/top.sls ]; then
echo "Salt files missing. Aborting."
exit 1
else
salt 'minion_*' test.ping
if [ $? -eq 0 ]; then
salt 'minion_*' pillar.items
salt 'minion_*' state.apply myfirstpillar
salt 'minion_*' cmd.run 'head /tmp/pillarfile_for*'
fi
fi
else
echo "Run this script as root (or with sudo)"
fi

Loading…
Cancel
Save