X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=Makefile;h=a280889cb5051f7fe27479b879a2a38362987795;hb=1d22636f73953061d5df427041d19644f76f900b;hp=da54aa93c7099f3980146cb26c4c75cbf92c98f6;hpb=b0810e3538c41c723ae47b982a2e87944be828e0;p=freeside.git diff --git a/Makefile b/Makefile index da54aa93c..a280889cb 100644 --- a/Makefile +++ b/Makefile @@ -21,6 +21,11 @@ FREESIDE_EXPORT = /usr/local/etc/freeside MASON_HANDLER = ${FREESIDE_CONF}/handler.pl MASONDATA = ${FREESIDE_CACHE}/masondata +#where to put the default configuraiton used by freeside-setup to initialize +#a new database (not used after that). primarily of interest to distro +#package maintainers +DIST_CONF = ${FREESIDE_CONF}/default_conf + #mod_perl v1 #APACHE_VERSION = 1 #mod_perl v2 prereleases up to and including 1.999_21 @@ -66,8 +71,8 @@ HTTPD_RESTART = /etc/init.d/apache2 restart #apache #HTTPD_RESTART = /usr/local/apache/bin/apachectl stop; sleep 10; /usr/local/apache/bin/apachectl startssl -#(an include directory, not a file, "Include /etc/apachew/conf.d" in httpd.conf) -#deb (3.1+), +#(an include directory, not a file, "Include /etc/apache/conf.d" in httpd.conf) +#deb (3.1+), apache2 APACHE_CONF = /etc/apache2/conf.d FREESIDE_RESTART = ${INIT_FILE} restart @@ -103,6 +108,8 @@ FREESIDE_URL = "http://localhost/freeside/" #for now, same db as specified in DATASOURCE... eventually, otherwise? RT_DB_DATABASE = freeside +RPM_SPECFILE = rpm/freeside.spec + #--- @@ -116,6 +123,8 @@ PERL_INC_DEV_KLUDGE = /usr/local/share/perl/5.8.8/ VERSION=1.9.0cvs TAG=freeside_1_9_0 +DEBVERSION = `echo ${VERSION} | perl -pe 's/(\d)([a-z])/\1~\2/'`-1 + help: @echo "supported targets:" @echo " create-database create-config" @@ -197,6 +206,7 @@ perl-modules: s|%%%FREESIDE_LOCK%%%|${FREESIDE_LOCK}|g;\ s|%%%FREESIDE_CACHE%%%|${FREESIDE_CACHE}|g;\ s|%%%FREESIDE_EXPORT%%%|${FREESIDE_EXPORT}|g;\ + s|%%%DIST_CONF%%%|${DIST_CONF}|g;\ " blib/script/* install-perl-modules: perl-modules @@ -206,6 +216,11 @@ install-perl-modules: perl-modules || true cd FS; \ make install UNINST=1 + #install this for freeside-setup + install -d $(DIST_CONF) + #install conf/[a-z]* $(DEFAULT_CONF) + #CVS is not [a-z] + install `ls -d conf/[a-z]* | grep -v CVS` $(DIST_CONF) dev-perl-modules: perl-modules [ -d ${PERL_INC_DEV_KLUDGE}/FS -a ! -L ${PERL_INC_DEV_KLUDGE}/FS ] \ @@ -232,11 +247,13 @@ install-apache: ( [ ${RT_ENABLED} -eq 1 ] && install -o root -m 755 htetc/freeside-rt.conf ${APACHE_CONF} || true ) && \ perl -p -i -e "\ s'%%%FREESIDE_DOCUMENT_ROOT%%%'${FREESIDE_DOCUMENT_ROOT}'g; \ + s'%%%FREESIDE_CONF%%%'${FREESIDE_CONF}'g; \ s'%%%MASON_HANDLER%%%'${MASON_HANDLER}'g; \ " ${APACHE_CONF}/freeside-*.conf \ ) || true install-selfservice: + [ -e ~freeside ] || cp -pr /etc/skel ~freeside && chown -R freeside ~freeside [ -e ~freeside/.ssh/id_dsa.pub ] || su - freeside -c 'ssh-keygen -t dsa' for MACHINE in ${SELFSERVICE_MACHINES}; do \ scp -r fs_selfservice/FS-SelfService ${SELFSERVICE_INSTALL_USER}@$$MACHINE:. ;\ @@ -250,7 +267,7 @@ install-selfservice: update-selfservice: for MACHINE in ${SELFSERVICE_MACHINES}; do \ RSYNC_RSH=ssh rsync -rlptz fs_selfservice/FS-SelfService/ ${SELFSERVICE_INSTALL_USER}@$$MACHINE:FS-SelfService ;\ - ssh ${SELFSERVICE_INSTALL_USER}@$$MACHINE "cd FS-SelfService; perl Makefile.PL && make" ;\ + ssh ${SELFSERVICE_INSTALL_USER}@$$MACHINE "cd FS-SelfService; make clean; perl Makefile.PL && make" ;\ ssh ${SELFSERVICE_INSTALL_USER}@$$MACHINE "cd FS-SelfService; sudo make install" ;\ done @@ -343,8 +360,22 @@ clean: #these are probably only useful if you're me... #release: upload-docs +.PHONY: release release: - cd /home/ivan/freeside + # Update the changelog + ./CVS2CL + cvs commit -m "Updated for ${VERSION}" ChangeLog + + # Update the RPM specfile + cvs edit ${RPM_SPECFILE} + perl -p -i -e "s/\d+[^\}]+/${VERSION}/ if /%define\s+version\s+(\d+[^\}]+)\}/;" ${RPM_SPECFILE} + cvs commit -m "Updated for ${VERSION}" ${RPM_SPECFILE} + + # Update the Debian changelog + cvs edit debian/changelog + dch -v ${DEBVERSION} -p "New upstream release" + cvs commit -m "Updated for ${VERSION}" debian/changelog + #cvs tag ${TAG} cvs tag -F ${TAG} @@ -355,6 +386,19 @@ release: scp freeside-${VERSION}.tar.gz ivan@420.am:/var/www/www.sisd.com/freeside/ mv freeside-${VERSION} freeside-${VERSION}.tar.gz .. + #these things failing should not make release target fail, so: "|| true" + + #kick off vmware update + #./BUILD_VMWARE_APPLIANCE ${$TAG} || true + + #kick off deb package update + + #kick off rpm package update too? + + #update web demo? + + #update web demo self-service? + update-webdemo: ssh ivan@420.am '( cd freeside; cvs update -d -P )' #ssh root@420.am '( cd /home/ivan/freeside; make clean; make deploy )'