mirror of
https://github.com/zulip/zulip.git
synced 2025-11-08 16:01:58 +00:00
We leave the stuff under api/ alone for now, since we need to be able to ship it as a standalone thing. tools/post-receive wasn't using the function anyway. For push to master: Push this commit, update post-receive per instructions at the top of that file, then push the rest of the branch to confirm that the hook still works. No manual instructions for prod. (imported from commit 9bcbe14c08d15eda47d82f0b702bad33e217a074)
38 lines
961 B
Python
Executable File
38 lines
961 B
Python
Executable File
#!/usr/bin/env python
|
|
import os
|
|
import sys
|
|
import subprocess
|
|
import pylibmc
|
|
import traceback
|
|
|
|
from humbug_tools import check_output
|
|
|
|
# Color codes
|
|
OKBLUE = '\033[94m'
|
|
OKGREEN = '\033[92m'
|
|
WARNING = '\033[93m'
|
|
FAIL = '\033[91m'
|
|
ENDC = '\033[0m'
|
|
|
|
os.chdir("/home/humbug/humbug")
|
|
if len(sys.argv) > 1:
|
|
oldrev = sys.argv[1]
|
|
newrev = sys.argv[2]
|
|
refname = sys.argv[3]
|
|
|
|
subprocess.check_call(["git", "fetch"], stdout=open('/dev/null', 'w'))
|
|
subprocess.check_call(["git", "reset", "--hard", refname], stdout=open('/dev/null', 'w'))
|
|
|
|
subprocess.check_call(["./tools/restart-server"])
|
|
|
|
if newrev == '0000000000000000000000000000000000000000':
|
|
# 0000000000000000000000000000000000000000 means we're deleting the ref
|
|
commits = ''
|
|
else:
|
|
commits = check_output(["git", "log", "%s..%s" % (oldrev, newrev)])
|
|
|
|
if '[schema]' in commits:
|
|
print
|
|
print FAIL + "Schema change detected! Please make the appropriate changes manually." + ENDC
|
|
print
|