github_webhook – Manage GitHub webhooks¶
New in version 2.8.
Synopsis¶
Create and delete GitHub webhooks
Requirements¶
The below requirements are needed on the host that executes this module.
PyGithub >= 1.3.5
Parameters¶
Parameter | Choices/Defaults | Comments |
---|---|---|
active
boolean
|
|
Whether or not the hook is active
|
content_type
-
|
|
The media type used to serialize the payloads
|
events
-
|
A list of GitHub events the hook is triggered for. Events are listed at https://developer.github.com/v3/activity/events/types/. Required unless
state is absent |
|
github_url
-
|
Default: "https://api.github.com"
|
Base URL of the GitHub API
|
insecure_ssl
boolean
|
|
Flag to indicate that GitHub should skip SSL verification when calling the hook.
|
password
-
|
Password to authenticate to GitHub with
|
|
repository
-
/ required
|
Full name of the repository to configure a hook for
aliases: repo |
|
secret
-
|
The shared secret between GitHub and the payload URL.
|
|
state
-
|
|
Whether the hook should be present or absent
|
token
-
|
Token to authenticate to GitHub with
|
|
url
-
/ required
|
URL to which payloads will be delivered
|
|
user
-
/ required
|
User to authenticate to GitHub as
|
Examples¶
- name: create a new webhook that triggers on push (password auth)
github_webhook:
repository: ansible/ansible
url: https://www.example.com/hooks/
events:
- push
user: "{{ github_user }}"
password: "{{ github_password }}"
- name: create a new webhook in a github enterprise installation with multiple event triggers (token auth)
github_webhook:
repository: myorg/myrepo
url: https://jenkins.example.com/ghprbhook/
content_type: json
secret: "{{ github_shared_secret }}"
insecure_ssl: True
events:
- issue_comment
- pull_request
user: "{{ github_user }}"
token: "{{ github_user_api_token }}"
github_url: https://github.example.com
- name: delete a webhook (password auth)
github_webhook:
repository: ansible/ansible
url: https://www.example.com/hooks/
state: absent
user: "{{ github_user }}"
password: "{{ github_password }}"
Return Values¶
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
hook_id
integer
|
when state is 'present' |
The GitHub ID of the hook created/updated
Sample:
6206
|
Status¶
This module is not guaranteed to have a backwards compatible interface. [preview]
This module is maintained by the Ansible Community. [community]