Extensions & Hooks

The extensions & hooks section references three concepts regularly, so to clarify what is meant each time, read the following definitions:

  • Plugin: A Plugin is software that adds a specific feature to an existing software application.
  • Extension: An extension extends the capabilities of, or the data available to, an existing software application.
  • Hook: A hook intercepts function calls, messages, or events passed between software components and can be used to trigger plugins, or their extensions.

Hooks

Within RhodeCode Enterprise there are two types of supported hooks.

  • Internal built-in hooks: The internal Mercurial, Git or Subversion hooks are triggered by different VCS operations, like push, pull, or clone and are non-configurable, but you can add your own VCS hooks, see Adding Custom Hooks.
  • Custom rcextensions hooks: User defined hooks centre around the lifecycle of certain actions such are repository creation, user creation etc. The actions these hooks trigger can be rejected based on the API permissions of the user calling them.

On instructions how to use the custom rcextensions see rcextensions integrations section.