NAME = opencloud SPECFILE = $(NAME).spec VERSION = $(shell rpm -q --specfile $(SPECFILE) --qf '%{VERSION}\n' | head -n 1) RELEASE = $(shell rpm -q --specfile $(SPECFILE) --qf '%{RELEASE}\n' | head -n 1) UPLOAD_SLICE=princeton_planetstack PWD = $(shell pwd) dist rpm: $(NAME)-$(VERSION)-$(RELEASE).rpm $(NAME)-$(VERSION).tar.gz: mkdir -p $(NAME)-$(VERSION) rsync -av --exclude=.svn --exclude=.git --exclude=*.tar.gz --exclude=*.rpm --exclude=__history --exclude=$(NAME)-$(VERSION)/ ./ $(NAME)-$(VERSION) tar -czf $@ $(NAME)-$(VERSION) rm -fr $(NAME)-$(VERSION) $(NAME)-$(VERSION)-$(RELEASE).rpm: $(NAME)-$(VERSION).tar.gz mkdir -p build rpmbuild -bb --define '_sourcedir $(PWD)' \ --define '_builddir $(PWD)/build' \ --define '_srcrpmdir $(PWD)' \ --define '_rpmdir $(PWD)' \ --define '_build_name_fmt %%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm' \ $(SPECFILE) srpm: $(NAME)-$(VERSION)-$(RELEASE).src.rpm $(NAME)-$(VERSION)-$(RELEASE).src.rpm: $(NAME)-$(VERSION).tar.gz rpmbuild -bs --define "_sourcedir $$(pwd)" \ --define "_srcrpmdir $$(pwd)" \ $(SPECFILE) clean: rm -f $(NAME)-$(VERSION).tar.gz $(NAME)-$(VERSION)-$(RELEASE).src.rpm $(NAME)-$(VERSION)-$(RELEASE).noarch.rpm rm -rf build upload: $(NAME)-$(VERSION)-$(RELEASE).rpm ifndef UPLOAD_HOST $(error please specify UPLOAD_HOST= on make command line) endif scp $(NAME)-$(VERSION)-$(RELEASE).x86_64.rpm $(UPLOAD_SLICE)@$(UPLOAD_HOST):/root/ install: upload ssh $(UPLOAD_SLICE)@$(UPLOAD_HOST) yum -y install gcc graphviz-devel graphviz-python postgresql postgresql-server python-pip python-psycopg2 libxslt-devel python-httplib2 GeoIP ssh $(UPLOAD_SLICE)@$(UPLOAD_HOST) rpm --install --upgrade --replacefiles --replacepkgs /root/$(NAME)-$(VERSION)-$(RELEASE).x86_64.rpm scp /opt/planetstack/hpc_wizard/bigquery_credentials.dat /opt/planetstack/hpc_wizard/client_secrets.json $(UPLOAD_SLICE)@$(UPLOAD_HOST):/opt/planetstack/hpc_wizard/ install-keys: ifndef UPLOAD_HOST $(error please specify UPLOAD_HOST= on make command line) endif scp /opt/planetstack/hpc_wizard/bigquery_credentials.dat /opt/planetstack/hpc_wizard/client_secrets.json $(UPLOAD_SLICE)@$(UPLOAD_HOST):/opt/planetstack/hpc_wizard/ .PHONY: dist