Using pillar data in states
How to do it...
Create a new state user by creating a directory called
user
in the base directory of theqa
environment and create aninit.sls
file in theuser
directory.Edit
/opt/salt-cookbook/qa/user/init.sls
and populate it with the following entries:qa_deploy_user: user.present: - name: {{ pillar['users']['qa_user'] }} - password: {{ pillar['users']['qa_user_password'] }}
Run the following command to apply the state to the minion:
[root@salt-master ~]# salt 'salt-minion' state.sls user \ saltenv=qa --state-output=terse salt-minion: Name: qa-app - Function: user.present - Result: Changed Summary ------------ Succeeded: 1 Failed: 0 ------------ Total: 1
Edit the
/opt/salt-cookbook/pillar/qa/user/init.sls
file and remove the following line:qa_user: qa-app
Reopen the
/opt/salt-cookbook/qa/user/init.sls
file and edit it to have the following entries:qa_deploy_user: user.present: - name: {{ salt['pillar.get']('users:qa_user', 'qa- deploy-user...