Compare commits

..

2 Commits

Author SHA1 Message Date
029abb8fb6 Update readme 2024-02-28 09:55:31 +01:00
0dd6fdb4fb Accept XXXX-nnn and yyyy/XXXX-nnn branch names 2024-02-28 09:51:26 +01:00
2 changed files with 48 additions and 19 deletions

View File

@ -26,6 +26,26 @@ Date: Fri Sep 1 09:57:54 2023 +0200
``` ```
Branch CI/CD prefix such as `feature/` will be handled correctly. If current branch is `feature/CLOUD-12345-some-important-branch` and we add commit:
```
git commit -m "some important message"
```
resulting commit message will be:
```
git log
commit 963dca96dd658a7df590c8b27b45d7f7536f9c1d (HEAD -> feature/CLOUD-12345-some-important-branch)
Author: Eden Kirin <eden@ekirin.com>
Date: Fri Sep 1 09:57:54 2023 +0200
CLOUD-12345: some important message
https://smartvending.atlassian.net/browse/CLOUD-12345
```
## Installation ## Installation
1. Clone repository 1. Clone repository

View File

@ -11,20 +11,25 @@ import re, subprocess, sys
JIRA_ISSUE_URL = "https://smartvending.atlassian.net/browse/" JIRA_ISSUE_URL = "https://smartvending.atlassian.net/browse/"
PREPEND_TICKET = True PREPEND_TICKET = True
APPEND_ISSUE_LINK = True APPEND_ISSUE_LINK = True
REGEX = re.compile("^(.*/)?([A-Z]+-[0-9]+)", re.IGNORECASE)
commit_file = sys.argv[1]
regex = re.compile("^([A-Z]+-[0-9]+)", re.IGNORECASE)
git_branch_name = subprocess.run( def main():
commit_file = sys.argv[1]
git_branch_name = subprocess.run(
["git", "branch", "--show-current"], ["git", "branch", "--show-current"],
stdout=subprocess.PIPE, stdout=subprocess.PIPE,
encoding="utf-8", encoding="utf-8",
) )
match = regex.match(git_branch_name.stdout) match = REGEX.match(git_branch_name.stdout)
if match: if match:
ticket = match.group() try:
ticket = match.group(2)
except IndexError:
return
ticket_url = f"{JIRA_ISSUE_URL}{ticket}" ticket_url = f"{JIRA_ISSUE_URL}{ticket}"
with open(commit_file, "r+") as f: with open(commit_file, "r+") as f:
@ -38,3 +43,7 @@ if match:
f.seek(0) f.seek(0)
f.write(contents) f.write(contents)
if __name__ == "__main__":
main()