Номер ревізії на сторінці

24 Листопада 2009

Захотілося мені, щоб на сайті відображалався номер ревізії меркуріала, на основі якої зроблений deploy(перенесення скриптів на сервер).

Спочатку думав навісити хук до меркуріала, але вирішив піти легшим шляхом, як завжди. ;))). І переписав мій скрипт для деплою. Отож раніше мій скрипт(deploy.bat) для деплою був наступний: rmdir /S /Q temp mkdir temp cd temp hg clone d:\avcheck ... тут викликаються ще декілька пітоновський скриптів ... результат закидається на сервер Тож щоб дістати номер ревізії додав такі рядки: cd .. hg log --limit 1 > ./deploy/temp/rev.txt cd deploy які дістають опис останньої ревізії і зберігають його в файл deploy/temp/rev.txt

Далі в deploy.bat додав, щоб в кінці запускався пітоновський скрипт, що парсить файл rev.txt, дістає номер ревізії і зберігає його в Джанговський конфіг: import re with open('./temp/rev.txt', 'r') as fr: rev = fr.readline().split(':')[1].strip() if int(rev) < 0: print "error rev" exit with open('./temp/avcheck/avcheck/settings.py', 'r+') as fs: file_origin = fs.read() fs.seek(0) fs.write(file_origin) file_new = re.sub("REVISION_NUMBER = \d*", "REVISION_NUMBER = "+rev, file_origin) fs.write(file_new) Тепер в мене завжди на сайті показується внизу номер ревізії ;)

 
 
 
Роман Хоменко aka PresidentUA
mail/jabber: spirt40@gmail.com