--- db/prgsrc/Makefile 2003/01/10 18:55:38 1.39 +++ db/prgsrc/Makefile 2006/09/25 16:35:00 1.84 @@ -1,19 +1,28 @@ +HOSTNAME=$(shell hostname) +ifeq ($(HOSTNAME),bilbo) +ROOT=/home/znatoki +endif ifndef ROOT -ROOT = /home/znatoki +ROOT = $(HOME) endif PERL = perl TMPSAV = /tmp PMODE = 775 LMODE = 664 -KULICHKI=znatoki.kulichki.net -RSYNC = rsync -ruvpte ssh --delete --progress --rsync-path='~/bin/rsync' +KULICHKI=chgk-db-boris@ledorub.chgk.info +RSYNC = rsync -ruvptCe ssh --delete --progress SCP=scp -DESTSRCDIR=~piataev/public_html/dimrub/src/ +DESTSRCDIR=~chgk-db/public_html/dimrub/src/ SRCDIR=../baza -DESTPRGSRC=~piataev/db/prgsrc +DICTDIR=../dict +IMAGEDIR=$(SRCDIR)/images +DESTIMAGEDIR=~chgk-db/public_html/images/db +INSTALLIMAGEDIR=$(ROOT)/public_html/images/db +DESTPRGSRC=~chgk-db/db/prgsrc +DESTCGIBIN=~chgk-db/public_html/cgi-bin DUMPDIR=../dump DESTDUMPDIR=/var/tmp/ -TABLES= Questions Tournaments word2question nf nests Authors A2Q +TABLES= Questions Tournaments word2question nf nests Authors A2Q equalto INDEXWRITER= rubash@yandex.ru, roma7@zaba.ru #INDEXWRITER= boris AUTHORCHECKER = roma7@zaba.ru @@ -23,7 +32,7 @@ DELIVERER = roma7@zaba.ru, boris UPDATELOG = $(DUMPDIR)/update.log UAUTHORS=$(DUMPDIR)/uauthors UNSORTED=$(DUMPDIR)/unsorted -RSPARAMS= 2000 50 +RSPARAMS= 2000 75 TIMESTAMP= $(DUMPDIR)/timestamp DBSCRIPTS = mkdb.pl \ @@ -43,11 +52,15 @@ DBSCRIPTS = mkdb.pl \ updateRS2.pl\ updateRS3.pl\ dumpRS.pl\ + findequal.pl\ dumpin2out.pl\ dump2dump.pl\ checkPBS.pl\ loaddump.pl \ - makeauthors.pl + makeauthors.pl\ + chronicles.pl\ + stats.pl \ + validate.pl LIBS = chgkfiles.pm \ common.pl\ @@ -56,7 +69,8 @@ LIBS = chgkfiles.pm \ check.pl -CGISCRIPTS = db.cgi +CGISCRIPTS = db.cgi\ + dbdefs.pl HTMLS = contribute.html \ @@ -69,11 +83,10 @@ HTMLS = contribute.html \ index.html \ random.html \ reklama.html \ + reklama_bottom.html\ search.html -TEXTS = $(wildcard $(SRCDIR)/*.txt) $(SRCDIR)/index - DBBIN = ../bin MANDIR = ../man @@ -81,17 +94,24 @@ LIBDIR = ../lib CGIBIN = $(ROOT)/public_html/cgi-bin HTMLDIR = $(ROOT)/public_html/dimrub/db +TEXTS = $(wildcard $(SRCDIR)/*.txt) $(SRCDIR)/index +IMAGES = $(wildcard $(IMAGEDIR)/*.jpg) +IMAGENAMES= $(notdir $(IMAGES)) + + + BININSTALL = ${DBSCRIPTS:%=$(DBBIN)/%} CGIINSTALL = ${CGISCRIPTS:%.cgi=$(CGIBIN)/%.cgi} LIBINSTALL = ${LIBS:%=$(LIBDIR)/%} HTMLINSTALL = ${HTMLS:%.html=$(HTMLDIR)/%.html} +IMAGEINSTALL = ${IMAGENAMES:%=$(INSTALLIMAGEDIR)/%} + + +all: $(LIBINSTALL) $(BININSTALL) $(CGIINSTALL) $(HTMLINSTALL) $(IMAGEINSTALL) + -all: $(LIBINSTALL) $(BININSTALL) $(CGIINSTALL) $(HTMLINSTALL) -install: all -test: - echo $(TEXTS) $(DBBIN)/%.pl: %.pl ${PERL} -c $< @@ -152,24 +172,33 @@ $(HTMLDIR)/%.html: %.html cp $< $@ +$(INSTALLIMAGEDIR)/%: $(IMAGEDIR)/% + cp $< $@ srcdeliver: $(RSYNC) $(SRCDIR) $(KULICHKI):$(DESTSRCDIR) +imagedeliver: + cvs update $(SRCDIR) + $(RSYNC) $(IMAGEDIR)/ $(KULICHKI):$(DESTIMAGEDIR)/ + prgdeliver: $(RSYNC) ./ $(KULICHKI):$(DESTPRGSRC) -dbdeliver: - mysqldump --add-drop-table -u piataev chgk $(TABLES) > $(DUMPDIR)/chgkdump.0 - sed 's/TYPE=ISAM PACK_KEYS=1//g' $(DUMPDIR)/chgkdump.0 > $(DUMPDIR)/chgkdump +dbdeliver: imagedeliver + echo "Starting delivering" | mail -s"Starting delivering" $(DELIVERER) + mysqldump --default-character-set=koi8r --add-drop-table --compatible=mysql323 -u piataev chgk $(TABLES) > $(DUMPDIR)/chgkdump + echo "delete from hash;" >> $(DUMPDIR)/chgkdump gzip $(DUMPDIR)/chgkdump - rm $(DUMPDIR)/chgkdump.0 $(SCP) $(DUMPDIR)/chgkdump.gz $(KULICHKI):$(DESTDUMPDIR) - mail -s"Database delivered" $(DELIVERER) + echo "Delivered" | mail -s"Database delivered" $(DELIVERER) update: + cvs update cvs update $(SRCDIR) + cvs update $(DICTDIR) + $(MAKE) all $(MAKE) $(TIMESTAMP) $(TIMESTAMP): $(TEXTS) @@ -177,6 +206,7 @@ $(TIMESTAMP): $(TEXTS) $(DBBIN)/mkdb.pl $(DBBIN)/updateindex.pl -i$(SRCDIR)/index $(DBBIN)/updatedb.pl $(SRCDIR)/*.txt 2>&1 | tee $(UPDATELOG) + $(DBBIN)/findequal.pl $(DBBIN)/makeauthors.pl if [ -s $(UAUTHORS) ]; then \ mail -sUauthors $(AUTHORCHECKER) < $(UAUTHORS); \ @@ -186,15 +216,50 @@ $(TIMESTAMP): $(TEXTS) else \ $(DBBIN)/mkRS.pl; \ $(DBBIN)/updateRS2.pl $(RSPARAMS);\ - mail -s"Ready to deliver" $(DELIVERER);\ + echo "Ready to deliver" | mail -s"Ready to deliver" $(DELIVERER);\ fi touch $(TIMESTAMP) authorsdeliver: - mysqldump --add-drop-table -u piataev chgk Authors A2Q > $(DUMPDIR)/chgkdump.0 + mysqldump --add-drop-table -u piataev chgk Authors A2Q equalto > $(DUMPDIR)/chgkdump.0 sed 's/TYPE=ISAM PACK_KEYS=1//g' $(DUMPDIR)/chgkdump.0 > $(DUMPDIR)/chgkdump gzip $(DUMPDIR)/chgkdump rm $(DUMPDIR)/chgkdump.0 $(SCP) $(DUMPDIR)/chgkdump.gz $(KULICHKI):$(DESTDUMPDIR) + +dbfill: + echo "Starting filling Kulichki database" | mail -s"Starting dbfill" $(DELIVERER) + ssh $(KULICHKI) "echo 'ВНИМАНИЕ! Идёт заливка Базы вопросов. \ + Результаты поиска в Базе могут быть неполны' \ + > ~/public_html/dimrub/db/date;\ + cd db/prgsrc; \ + echo 'SELECT MAX(CreatedAt) FROM Tournaments' | \ + mysql -u piataev --skip-column-names chgk >_timestamp.tmp;\ + gunzip -c /var/tmp/chgkdump.gz | mysql -u piataev chgk;\ + echo makehtml=1 | perl $(DESTCGIBIN)/db.cgi -z; \ + echo "1900-01-01" > _timestamp.tmp;\ + echo makehtml=1 | perl $(DESTCGIBIN)/db.cgi -z; \ + echo "1900-01-01" > _timestamp.tmp;\ + echo makehtml=1 | perl $(DESTCGIBIN)/db.cgi -z; \ + rm -f _timestamp.tmp; \ + date > ~/public_html/dimrub/db/date" + echo "Finished filling Kulichki database" | mail -s"Finished dbfill" $(DELIVERER); \ + $(DBBIN)/stats.pl >> $(SRCDIR)/fill.log; \ + cvs commit -m "Database filled" $(SRCDIR) + +regenerate: + echo "Starting regenerating Kulichki database" | mail -s"Starting regenerate" $(DELIVERER) + ssh $(KULICHKI) "\ + echo "1900-01-01" > _timestamp.tmp;\ + echo makehtml=1 | perl $(DESTCGIBIN)/db.cgi -z; \ + echo "1900-01-01" > _timestamp.tmp;\ + echo makehtml=1 | perl $(DESTCGIBIN)/db.cgi -z; \ + echo "1900-01-01" > _timestamp.tmp;\ + echo makehtml=1 | perl $(DESTCGIBIN)/db.cgi -z; \ + rm -f _timestamp.tmp;" \ + echo "Finished regenerating Kulichki database" | mail -s"Finished regenrate" $(DELIVERER) + + +