I have the next conf files for salt reactor:
- reactor.conf
- 'salt/netapi/hook/cd':
- /srv/reactor/dev.sls
- dev.sls
# vim: sts=2 ts=2 sw=2 et ai {% set payload = data.get('post') %} {% set master = [grains.fqdn] %} core|api|{{ master }}|jenkins-cd: runner.state.orchestrate: - tgt: {{ master }} - mods: myreactor.deploy - pillar: temp_var_transmit: {{ payload }}
- deploy.sls
{% set payload = salt.pillar.get('temp_var_transmit') %} {% set master = [grains.fqdn] %} my_state: salt.function: - name: cmd.run - tgt: {{ master }} - arg: - "salt-run state.orch my-reactor.cd_state pillar='{\"temp_var_transmit\":{\"host\":\"{{payload['host']}}\",\"artifact_id\":\"{{payload['artifact_id']}}\",\"artifact_version\":\"{{payload['artifact_version']}}\"}}'" {% endfor %}
4. cd_state.sls
{% set data = salt.pillar.get('temp_var_transmit') %} my_deploy: salt.state: - tgt: {{ member }} - expr_form: compound - sls: '{{ data.artifact_id }}_{{ data.artifact_version }}' - queue: true - test: {{ dry_run_mode }}
When I send API request and run salt-runner.events, I get the next error:
jid": "20180119065728472630",
"return": "Exception occurred in runner state.orchestrate: Traceback (most recent call last):\n File \"/usr/lib/python2.7/dist-packages/salt/client/mixins.py\", line 395, in _low\n data['return'] = self.functions[fun](*args, **kwargs)\nTypeError: orchestrate() argument after ** must be a mapping, not list\n",
"success": false,
"user": "Reactor"
Any thoughts?
temp_var_transmit