Software / code / prosody-modules
File
mod_pubsub_github/README.md @ 6191:94399ad6b5ab
mod_invites_register_api: Use set_password() for password resets
Previously the code relied on the (weird) behaviour of create_user(), which
would update the password for a user account if it already existed. This has
several issues, and we plan to deprecate this behaviour of create_user().
The larger issue is that this route does not trigger the user-password-changed
event, which can be a security problem. For example, it did not disconnect
existing user sessions (this occurs in mod_c2s in response to the event).
Switching to set_password() is the right thing to do.
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Thu, 06 Feb 2025 10:13:39 +0000 |
| parent | 6003:fe081789f7b5 |
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 ------ -------------