lobicornis

command module
v1.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 24, 2020 License: Apache-2.0 Imports: 13 Imported by: 0

README

Myrmica Lobicornis - Update and Merge Pull Request

GitHub release Build Status Docker Build Status

Description

The bot:

  • find all open PRs with a specific label (--marker.need-merge)
  • take one PR
    • with a specific label (--marker.merge-in-progress) if exists
    • or the least recently updated PR
  • verify:
    • GitHub checks (CI, ...)
    • "Mergeability"
    • Reviews (--min-review)
  • check if the PR need to be updated
    • if yes: rebase or merge with the base PR branch (ex: master)
  • merge the PR with the chosen merge method. (--merge-method, --marker.merge-method-prefix)
  • closes related issues and add the same milestone as the PR
  • if errors occurs add a specific label (--marker.need-human-merge)
  • if the description of the PR contains a co-author (Co-authored-by: login <email@email.com>) the co-author is set on the merge commit.
Myrmica Lobicornis: Update and Merge Pull Request from GitHub.

Usage: lobicornis [--flag=flag_argument] [-f[flag_argument]] ...     set flag_argument to flag(s)
   or: lobicornis [--flag[=true|false| ]] [-f[true|false| ]] ...     set true/false to boolean flag(s)

Available Commands:
        version                                            Display the version.
Use "lobicornis [command] --help" for more information about a command.

Flags:
    --check-up-to-date           Use GitHub repository configuration to check the need to be up-to-date. (default "false")
    --debug                      Debug mode.                                                             (default "false")
    --dry-run                    Dry run mode.                                                           (default "true")
    --force-up-to-date           Forcing need up-to-date. (check-up-to-date must be false)               (default "true")
    --git-email                  Git user email.
    --git-name                   Git user name.
    --github-url                 GitHub API URL (GitHub Enterprise) [optional]
    --marker                     GitHub Labels.                                                          (default "true")
    --marker.light-review        Label use when a pull request need a lower minimal review as default.   (default "bot/light-review")
    --marker.merge-in-progress   Label use when the bot update the PR (merge/rebase).                    (default "status/4-merge-in-progress")
    --marker.merge-method-prefix Use to override default merge method for a PR.                          (default "bot/merge-method-")
    --marker.merge-retry-prefix  Use to manage merge retry.                                              (default "bot/merge-retry-")
    --marker.need-human-merge    Label use when the bot cannot perform a merge.                          (default "bot/need-human-merge")
    --marker.need-merge          Label use when you want the bot perform a merge.                        (default "status/3-needs-merge")
    --marker.no-merge            Label use when a PR must not be merge.                                  (default "bot/no-merge")
    --merge-method               Default merge method. (merge|squash|rebase|ff)                          (default "squash")
    --min-light-review           Minimal number of review (light review).                                (default "0")
    --min-review                 Minimal number of review.                                               (default "1")
    --need-milestone             Forcing PR to have a milestone.                                         (default "true")
-o, --owner                      Repository owner. [required]
    --port                       Server port.                                                            (default "80")
-r, --repo-name                  Repository name. [required]
    --retry                      Merge retry configuration.                                              (default "false")
    --retry.interval             Time between retry.                                                     (default "1m0s")
    --retry.number               Number of retry before failed.                                          (default "0")
    --retry.on-mergeable         Retry on PR mergeable state (GitHub information).                       (default "false")
    --retry.on-statuses          Retry on GitHub checks (aka statuses).                                  (default "false")
    --server                     Server mode.                                                            (default "false")
    --ssh                        Use SSH instead HTTPS.                                                  (default "false")
-t, --token                      GitHub Token. [required]
-h, --help                       Print Help (this message) and exit 

Examples

lobicornis --debug --ssh -t xxxxxxxxxxxxx -o containous -r traefik --min-review=3
lobicornis --debug --ssh -t xxxxxxxxxxxxx -o containous -r traefik --min-review=3 \
    --marker.merge-in-progress="merge-pending" \
    --marker.need-human-merge="merge-fail" \
    --marker.need-merge="merge-now"
lobicornis --debug --ssh -t xxxxxxxxxxxxx -o containous -r traefik --min-review=3 \
    --marker.merge-method-prefix="merge-method-" \
    --merge-method="rebase" 

What does Myrmica Lobicornis mean?

Myrmica Lobicornis

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL