Mercurial > prosody-modules
view mod_pubsub_github/README.markdown @ 4537:53ee391ca689
mod_smacks: Fix traceback due to session being destroyed in send()
Sending something can cause the OS to notice that the connection is dead
and then the connection can be dead at this point. More likely if
opportunistic_writes is enabled.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Thu, 01 Apr 2021 11:35:26 +0200 |
parents | 1fcf3cb7bb50 |
children |
line wrap: on
line source
--- labels: - 'Stage-Beta' summary: Publish Github commits over pubsub --- ## Introduction This module accepts Github web hooks and publishes them to a local pubsub component for XMPP clients to subscribe to. Entries are pushed as Atom payloads. It may also work with Gitlab. ## Configuration Load the module on a pubsub component: ``` {.lua} Component "pubsub.example.com" "pubsub" modules_enabled = { "pubsub_github" } github_secret = "NP7bZooYSLKze96TQMpFW5ov" ``` The URL for Github to post to would be either: - `http://pubsub.example.com:5280/pubsub_github` - `https://pubsub.example.com:5281/pubsub_github` The module also takes the following config options: Name Default Description ----------------------- ------------------- ------------------------------------------------------------ `github_node` `"github"`{.lua} The pubsub node to publish commits on. `github_secret` **Required** Shared secret used to sign HTTP requests. `github_node_prefix` `"github/"`{.lua} `github_node_mapping` *not set* Field in repository object to use as node instead of `github_node` `github_actor` *superuser* Which actor to do the publish as (used for access control) More advanced example ``` {.lua} Component "pubsub.example.com" "pubsub" modules_enabled = { "pubsub_github" } github_actor = "github.com" github_node_mapping = "name" --> github_node_prefix .. "repo" -- github_node_mapping = "full_name" --> github_node_prefix .. "owner/repo" github_secret = "sekr1t" ``` If your HTTP host doesn't match the pubsub component's address, you will need to inform Prosody. For more info see Prosody's [HTTP server documentation](https://prosody.im/doc/http#virtual_hosts). ## Compatibility ------ ------------- 0.10 Should work 0.9 Works ------ -------------