- integration with PP
- integration with Sentry
- helper HTTP endpoint
- Replace bug references with links to trackers
Plumber is a GitHub App built with Probot that helps to automate source-git workflows of Red Hat Plumbers team. Plumber is closely integrated with Red Hat Bugzilla, using NodeJs module bugzilla.
List of features:
- Commit message linting (Resolves, Related)
- Support for Bugzilla flags (qa_ack, devel_ack, release, etc.)
- Y-stream, Z-stream and multi-release support
- Configurable
- prepare for possible jira implementation (jira-client)
- Bugzilla checks (release, etc.)
# .github/plumber.yml
package: "systemd"
config:
- branch: "main"
release: "c9s"
- branch: "rhel-9.0.0"
release: "9.0.0"
- branch: "rhel-9.1.0"
release: "9.1.0"
rules:
bugzillaReference:
label: "needs-bz"
review:
label: "needs-review"
ci:
label: "needs-ci"
upstreamReference:
label: "needs-upstream"
flags:
label: "needs-flags"
flags: ["qa_ack", "devel_ack", "release"]
Repositories that are using Plumber bot: ...
Plumber is configurable using .github/plumber.yml
. Configuration is required to allow Plumber so successfully run on repository.
Plumber configuration supports following keys and values:
Plumber allows to enable Sentry module is invoked using configuration.
...
# Install dependencies
yarn
# Compile sources
yarn build
# Run tests
yarn test
# Run the bot
yarn start
...
# 1. Build container
docker build -t plumber .
# 2. Start container
docker run -e APP_ID=<app-id> -e PRIVATE_KEY=<pem-value> plumber