All Foreman projects have source code hosted on GitHub under theforeman.

Creating a repository

An organisation admin has permission to create repos and assign the appropriate permissions. This is Ohad or Dominic - request on foreman-dev mailing list or IRC.

  1. Create the repo under theforeman at
  2. Set a repo description and external URL if relevant
  3. Assign one or more teams with Write level permission from the repo settings
    • Most plugins should have a team with access all related repos
    • Hammer CLI plugins should also have the "cli-tools" team assigned to help maintain it
    • Smart proxy DNS plugins should also have the "Proxy DNS plugins" team assigned to help maintain it
  4. Add the prprocessor webhook if Redmine updates are desired

Further optional steps:

  1. Add the repo to prprocessor's list to enforce commit message styles
  2. Add the repo to Redmine's list of synced repositories. Add it under the Redmine project settings after.
  3. Add the repo to Jenkins' list of tested plugins
  4. Add it to the list of known Foreman plugins, smart proxy plugins or Hammer CLI plugins