Main goal for that app is to push commits between branches
but just those which pass evaluation checks.
Example use case "push all commits pushed to branch develop more than 30 minutes ago to branch master"
Usage:
github-flow-manager [OWNER] [REPOSITORY] [SOURCE_BRANCH] [DESTINATION_BRANCH] [EXPRESSION] [flags]
Flags:
-c, --commits-number int Number of commits to get under evaluation (>0, <=100) (default 100)
-d, --dry-run Don't modify repository
-f, --force Use the force Luke... - Changes branch HEAD with force
-t, --github-token string GitHub token (can be passed also as GITHUB_TOKEN env variable
-h, --help help for github-flow-manager
-v, --verbose Print table with commits evaluation status
GITHUB_TOKEN=xxx github-flow-manager octocat Hello-World test master "StatusSuccess == false" --verbose --dry-run
SHAMessagePushedDate- when commit was pushedStatusSuccess- f.ex. CI status
Message contains "HOTFIX"
Message NOT contains "FEATURE"
Message == "very important commit"
StatusSuccess == true
PushedDate < "now-30m"
PushedDate < "now-30m" AND StatusSuccess == true