I think the whitelist is just slack without the file extension.

Also, if you run Ansible with higher verbosity, it will show you which
callbacks are being loaded.


On Thursday, February 4, 2016, Mark Matthews <[email protected]> wrote:

> Hi Matt
>
> Thanks for your quick responses.
>
> I have now added SLACK_WEBHOOK_URL and SLACK_CHANNEL to the environment
> var in the shell
>
>         SLACK_TOKEN=https://hooks.slack.com/services/xxxxxx/yyyyyyyy/token
>         SLACK_CHANNEL=#ansible
>
> I have also added the withlist entry into ansible.cfg:
>
> # set plugin path directories here, separate with colons
> action_plugins     = /usr/share/ansible_plugins/action_plugins
> callback_plugins   = /usr/share/ansible_plugins/callback_plugins
> connection_plugins = /usr/share/ansible_plugins/connection_plugins
> lookup_plugins     = /usr/share/ansible_plugins/lookup_plugins
> vars_plugins       = /usr/share/ansible_plugins/vars_plugins
> filter_plugins     = /usr/share/ansible_plugins/filter_plugins
>
> callback_whitelist = slack.py
>
>
> I then try run the playbook:
> ---
> - name: Check if line is present in config
>   hosts: all
>   tasks:
>     - name: Check if line is present in config
>       win_lineinfile:
>         dest: C:\Websites\Live\Web.config
>         regexp: <test>
>         line: ' <test>'
>
> The playbook run successfully, but nothing is sent to Slack. And im not
> getting any errors.
>
> Is there anything that you can see that I am missing, or that I have done
> something wrong?
>
> Cheers
> Mark
>
>
> On Thursday, February 4, 2016 at 2:12:39 PM UTC, Matt Martz wrote:
>>
>> In Ansible v2 you must whitelist callback plugins in ansible.cfg.
>> Additionally, the environment vars must be set in your shell, not in the
>> playbook.
>>
>> In bash this would be done from a .bash_profile or directly on the
>> command line by using:
>>
>> export SLACK_TOKEN=mytoken
>>
>>
>>
>> On Thursday, February 4, 2016, Mark Matthews <[email protected]> wrote:
>>
>>> Hi Matt
>>>
>>> I have now updated the slack.py with the following code (
>>> https://github.com/sivel/ansible/blob/v2-slack-callback/lib/ansible/plugins/callback/slack.py),
>>> as I am running Ansible v2.
>>>
>>> I have added the environmental variables into a ver basic playbook to
>>> see if it posts the results to Slack (see below):
>>> ---
>>> - name: Check if line is present in config
>>>   hosts: all
>>>   environment:
>>>         SLACK_TOKEN: xxxxxxx/yyyyyyy/token
>>>         SLACK_TEAM: companyname.slack.com
>>>         SLACK_CHANNEL: #ansible
>>>
>>>   tasks:
>>>     - name: Check if line is present in config
>>>       win_lineinfile:
>>>         dest: C:\Websites\Live\Web.config
>>>         regexp: <test>
>>>         line: ' <test>'
>>>
>>> The Playbook runs successfully, but nothing is being sent to Slack.
>>> Is there something that I am missing? Or am I putting the environmental
>>> variables in the wrong place?
>>>
>>> Cheers
>>> Mark
>>>
>>> On Thursday, February 4, 2016 at 1:47:48 PM UTC, Matt Martz wrote:
>>>>
>>>> Those environment variables need to be set in the shell that you execute
>>>> Ansible from.  Also that branch/PR that you reference is for Ansible 1.9.
>>>> If you need a version that works with Ansible 2.0, see
>>>> https://github.com/ansible/ansible/pull/13408
>>>>
>>>> On Thursday, February 4, 2016, Mark Matthews <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi @sivel
>>>>>
>>>>>
>>>>>
>>>>> I am trying to get an Slack callback plugin to work (
>>>>> https://github.com/sivel/ansible/blob/slack-callback/plugins/callbacks/slack.py#L142-L147),
>>>>> but I am getting the following error:#
>>>>>
>>>>>
>>>>>
>>>>> Unexpected Exception: 'module' object has no attribute 'warning'
>>>>>
>>>>>
>>>>>
>>>>> You can see the what I am trying to achieve here:
>>>>> https://github.com/ansible/ansible/pull/8955
>>>>>
>>>>>
>>>>>
>>>>> When looking at the file I see that it mentions the following:
>>>>>
>>>>> class CallbackModule(object):
>>>>>
>>>>>     """This is an example ansible callback plugin that sends status
>>>>>
>>>>>     updates to a Slack channel during playbook execution.
>>>>>
>>>>>     This plugin makes use of the following environment variables:
>>>>>
>>>>>         SLACK_TOKEN    (required): Slack Integration token
>>>>>
>>>>>         SLACK_TEAM     (required): Slack team name TEAM.slack.com
>>>>>
>>>>>         SLACK_CHANNEL  (optional): Slack room to post in. Default:
>>>>> #ansible
>>>>>
>>>>>         SLACK_USERNAME (optional): Username to post as. Default:
>>>>> ansible
>>>>>
>>>>>     Requires:
>>>>>
>>>>>         prettytable
>>>>>
>>>>>     """
>>>>>
>>>>>
>>>>>
>>>>> Where would I need to insert these SLACK environment variables in
>>>>> order for this file to access this information?
>>>>>
>>>>> --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Ansible Project" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to [email protected].
>>>>> To post to this group, send email to [email protected].
>>>>> To view this discussion on the web visit
>>>>> https://groups.google.com/d/msgid/ansible-project/80f9eb05-539d-475a-832d-5d51a68f90c6%40googlegroups.com
>>>>> <https://groups.google.com/d/msgid/ansible-project/80f9eb05-539d-475a-832d-5d51a68f90c6%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>>
>>>>
>>>> --
>>>> Matt Martz
>>>> @sivel
>>>> sivel.net
>>>>
>>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Ansible Project" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> To post to this group, send email to [email protected].
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/ansible-project/d5cd76d1-6491-4a02-8799-0e01613c6756%40googlegroups.com
>>> <https://groups.google.com/d/msgid/ansible-project/d5cd76d1-6491-4a02-8799-0e01613c6756%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>> --
>> Matt Martz
>> @sivel
>> sivel.net
>>
>> --
> You received this message because you are subscribed to the Google Groups
> "Ansible Project" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected]
> <javascript:_e(%7B%7D,'cvml','ansible-project%[email protected]');>
> .
> To post to this group, send email to [email protected]
> <javascript:_e(%7B%7D,'cvml','[email protected]');>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/a85ec092-9164-4068-9566-df9c3e43532c%40googlegroups.com
> <https://groups.google.com/d/msgid/ansible-project/a85ec092-9164-4068-9566-df9c3e43532c%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>


-- 
Matt Martz
@sivel
sivel.net

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/CAD8N0v8DpG%2BfVSE9x57qv1cUqmYLfmqG55JO%2Bxa5MRKM1-MhBw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to