I have two ssh keys that I'm trying to deploy to one of my minions. But I can't seem to get it to deploy. It errors out. Here is the init.sls
in pillars:
/xxx/yyy/zzz/id_rsa:
file.managed:
- source: salt://private/id_rsa
/xxx/yyy/zz/id_rsa.pub:
file.managed:
- source: salt://private/id_rsa.pub
Here is my init.sls
state:
ssh:
file.managed:
- name: {{ pillar['private'] }}
I must be doing something wrong (obviously), but I'm not sure what. Any suggestions?
Best Answer
The Salt Pillar system does not have an init.sls file. Both states and pillars has a top.sls file. States that are subdirectories may have an init.sls file.
Step 1: Define your users in /srv/pillar/users.sls
Step 2: Add the new pillar to /srv/pillar/top.sls
Step 3: Use jinja to map pillar to states in /srv/salt/user/init.sls
Don't forget to sync the minions with the new pillars!