Skip to main content
Version: Next ๐Ÿšง

Core ideas

  • A configuration (e.g. of a pipeline) should never be turing complete (We have agents to exec things ๐Ÿ™‚).
  • If possible, follow the KISS principle.
  • What is used most often should be default.
  • Keep different topics separated, so you can write plugins, port new ideas ... more easily, see Architecture.

Addons and extensionsโ€‹

If you are wondering whether your contribution will be accepted to be merged in the Woodpecker core, or whether it's better to write an addon forge, extension or an external custom backend, please check these points:

  • Is your change very specific to your setup and unlikely to be used by anyone else?
  • Does your change violate the guidelines?

Both should be false when you open a pull request to get your change into the core repository.

Guidelinesโ€‹

Forgesโ€‹

A new forge must support these features:

  • OAuth2
  • Webhooks