forked from jiz4oh/efb-wechat-slave
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pre-commit
executable file
·31 lines (25 loc) · 1 KB
/
pre-commit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/local/bin/python3
import pathlib
import subprocess
PACKAGE = "efb-wechat-slave"
ROOT_PATH = subprocess.check_output("git rev-parse --show-toplevel".split())\
.decode().strip()
VERSION_FILE = str(pathlib.Path(ROOT_PATH) / PACKAGE / "__version__.py")
# commit_msg_path = sys.argv[1]
stashed = subprocess.run("git diff --cached --name-only".split(),
capture_output=True).stdout.decode().splitlines()
# Ignore Crowdin sync commits
if any(i.endswith('.po') for i in stashed):
print("Discovered pofile stashed, do not bump up version.")
exit(0)
# Ignore commits with version change
if any("__version__.py" in i for i in stashed):
print("Discovered version file stashed, do not bump up version.")
exit(0)
# Bump version by a "dev".
bump_py = str(pathlib.Path(ROOT_PATH) / "bump.py")
subprocess.run((bump_py, '--allow-dirty', '--no-commit', 'dev'),
capture_output=True)
subprocess.run(("git", "add", VERSION_FILE),
capture_output=True)
exit(0)