Apache Flink Jira Bot

Clone this repo:

Branches

  1. fe3c5db Merge pull request #12 from knaufk/hotfix-config-formatting by Konstantin Knauf · 11 days ago master
  2. 1c4ab41 [hotfix] fix indentation in config.yaml by Konstantin Knauf · 11 days ago
  3. 9e04944 [hotfix] Make comment language friendly to contributors by Seth Wiesman · 2 weeks ago
  4. 67b61dc Merge pull request #8 from knaufk/FLINK-22036 by Konstantin Knauf · 14 days ago
  5. 37190da Merge pull request #9 from knaufk/FLINK-22340 by Konstantin Knauf · 2 weeks ago

Apache Flink Jira Bot

The Flink Jira Bot partially enforces the Apache Flink Jira process. Please see Apache Flink Jira Process for all the guidlines and conventions that we try to follow.

Usage

./venv/bin/python3 flink_jira_bot.py --help
usage: flink_jira_bot.py [-h] [-d] [-c CONFIG]

Apache Flink Jira Bot

optional arguments:
  -h, --help            show this help message and exit
  -d, --dry-run         no action on Jira, only logging
  -c CONFIG, --config CONFIG
                        path to config file (default: config.yaml)

There are also make targets for the important actions:

Run

make run

Dry-Run

The dry-run does not make any changes to the Apache Flink Jira, but instead only logs the actions it would do.

make dry-run

Configuration

Both make run and make dry-run look for the password of flink-jira-bot in an environment variable called JIRA_PASSWORD.

The configuration of the rules can be found in config.yaml.

About the Rules

Rule 1 Major+ Need Assignee or Discussion

Tickets major and above need an assignee, or an update within {stale_<blocker|critical|major>.stale_days}, otherwise the priority will be reduced after a warning period of {stale_<blocker|critical|major>.warning_days} days. An update of a Sub-Task counts as an update to the ticket. Before this happens the assignee/reporter/watchers are notified that the ticket is about to become stale and will be deprioritized. The time periods before warning differ based on the priority:

Rule 2: Unassign Stale Assigned Tickets

Assigned tickets without an update for {stale_assigned.stale_days} are unassigned after a warning period of {stale_assigned.warning_days}. Before this happens the assignee is notified that this is about to happen and asked for an update on the status of her contribution.

Rule 3: Close Stale Minor Tickets

An unresolved Minor ticket without an update for {stale_minor.stale_days} is closed after a warning period of {stale_minor.warning_days} with a comment that encourages users to watch, comment and simply reopen with a higher priority if the problem insists.

About Apache Flink

Apache Flink is an open source project of The Apache Software Foundation (ASF).

Flink is a distributed data processing framework with powerful stream and batch processing capabilities. Learn more about Flink at http://flink.apache.org/