| #!/usr/bin/make -f |
| # -*- makefile -*- |
| # Sample debian/rules that uses debhelper. |
| # |
| # This file was originally written by Joey Hess and Craig Small. |
| # As a special exception, when this file is copied by dh-make into a |
| # dh-make output file, you may use that output file without restriction. |
| # This special exception was added by Craig Small in version 0.37 of dh-make. |
| # |
| # Modified to make a template file for a multi-binary package with separated |
| # build-arch and build-indep targets by Bill Allombert 2001 |
| |
| DEBVERS := $(shell dpkg-parsechangelog | sed -n -e 's/^Version: //p') |
| VERSION := $(shell echo '$(DEBVERS)' | sed -e 's/^[[:digit:]]*://' -e 's/[~-].*//') |
| PACKAGE = $(shell dh_listpackages|head -n 1|cut -d '-' -f 1) |
| SYSCONFDIR = "/etc" |
| DESTDIR = "debian/tmp" |
| |
| # Uncomment this to turn on verbose mode. |
| export DH_VERBOSE=1 |
| |
| # This has to be exported to make some magic below work. |
| export DH_OPTIONS |
| |
| configure: configure-stamp |
| configure-stamp: |
| dh_testdir |
| cp packaging/debian/replace.properties replace.properties.tmp |
| echo VERSION=${VERSION} >> replace.properties.tmp |
| touch configure-stamp |
| |
| build: build-indep |
| |
| build-indep: build-indep-stamp |
| |
| build-indep-stamp: configure |
| mvn package -Pawsapi -DskipTests -Dsystemvm \ |
| -Dcs.replace.properties=replace.properties.tmp \ |
| ${ACS_BUILD_OPTS} |
| touch $@ |
| |
| clean: |
| dh_testdir |
| dh_testroot |
| rm -f build-arch-stamp build-indep-stamp configure-stamp |
| rm -f replace.properties.tmp |
| dh_clean |
| |
| install: |
| dh_testdir |
| dh_testroot |
| dh_prep -s |
| |
| # Common packages |
| mkdir -p $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE) |
| mkdir -p $(DESTDIR)/$(SYSCONFDIR)/init.d |
| mkdir -p $(DESTDIR)/var/cache/$(PACKAGE) |
| mkdir -p $(DESTDIR)/var/log/$(PACKAGE) |
| mkdir -p $(DESTDIR)/var/lib/$(PACKAGE) |
| mkdir -p $(DESTDIR)/usr/bin |
| mkdir -p $(DESTDIR)/usr/share |
| |
| # cloudstack-agent |
| mkdir $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/agent |
| mkdir $(DESTDIR)/var/log/$(PACKAGE)/agent |
| mkdir $(DESTDIR)/usr/share/$(PACKAGE)-agent |
| mkdir $(DESTDIR)/usr/share/$(PACKAGE)-agent/plugins |
| install -D agent/target/cloud-agent-$(VERSION)-SNAPSHOT.jar $(DESTDIR)/usr/share/$(PACKAGE)-agent/lib/$(PACKAGE)-agent.jar |
| install -D plugins/hypervisors/kvm/target/cloud-plugin-hypervisor-kvm-$(VERSION)-SNAPSHOT.jar $(DESTDIR)/usr/share/$(PACKAGE)-agent/lib/ |
| install -D plugins/hypervisors/kvm/target/dependencies/* $(DESTDIR)/usr/share/$(PACKAGE)-agent/lib/ |
| install -D packaging/debian/init/cloud-agent $(DESTDIR)/$(SYSCONFDIR)/init.d/$(PACKAGE)-agent |
| install -D agent/bindir/cloud-setup-agent.in $(DESTDIR)/usr/bin/cloudstack-setup-agent |
| install -D agent/bindir/cloud-ssh.in $(DESTDIR)/usr/bin/cloudstack-ssh |
| install -D agent/target/transformed/* $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/agent |
| |
| # cloudstack-management |
| mkdir $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/server |
| mkdir $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/management |
| mkdir -p $(DESTDIR)/$(SYSCONFDIR)/security/limits.d/ |
| mkdir -p $(DESTDIR)/$(SYSCONFDIR)/sudoers.d/ |
| mkdir -p $(DESTDIR)/usr/share/$(PACKAGE)-management |
| mkdir -p $(DESTDIR)/usr/share/$(PACKAGE)-management/webapps/client |
| mkdir $(DESTDIR)/usr/share/$(PACKAGE)-management/setup |
| mkdir $(DESTDIR)/var/log/$(PACKAGE)/management |
| mkdir $(DESTDIR)/var/cache/$(PACKAGE)/management |
| mkdir $(DESTDIR)/var/cache/$(PACKAGE)/management/work |
| mkdir $(DESTDIR)/var/cache/$(PACKAGE)/management/temp |
| mkdir $(DESTDIR)/var/log/$(PACKAGE)/ipallocator |
| mkdir $(DESTDIR)/var/lib/$(PACKAGE)/management |
| mkdir $(DESTDIR)/var/lib/$(PACKAGE)/mnt |
| cp -r client/target/utilities/scripts/db/* $(DESTDIR)/usr/share/$(PACKAGE)-management/setup/ |
| cp -r client/target/cloud-client-ui-$(VERSION)-SNAPSHOT/* $(DESTDIR)/usr/share/$(PACKAGE)-management/webapps/client/ |
| cp server/target/conf/* $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/server/ |
| cp client/target/conf/* $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/management/ |
| |
| # nast hack for a couple of configuration files |
| mv $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/server/cloudstack-limits.conf $(DESTDIR)/$(SYSCONFDIR)/security/limits.d/ |
| mv $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/server/cloudstack-sudoers $(DESTDIR)/$(SYSCONFDIR)/sudoers.d/cloudstack |
| chmod 0440 $(DESTDIR)/$(SYSCONFDIR)/sudoers.d/cloudstack |
| |
| ln -s tomcat6-nonssl.conf $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/management/tomcat6.conf |
| ln -s server-nonssl.xml $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/management/server.xml |
| install -D packaging/debian/init/cloud-management $(DESTDIR)/$(SYSCONFDIR)/init.d/$(PACKAGE)-management |
| install -D client/bindir/cloud-update-xenserver-licenses.in $(DESTDIR)/usr/bin/cloudstack-update-xenserver-licenses |
| ln -s /usr/share/tomcat6/bin $(DESTDIR)/usr/share/$(PACKAGE)-management/bin |
| # Remove configuration in /ur/share/cloudstack-management/webapps/client/WEB-INF |
| # This should all be in /etc/cloudstack/management |
| rm $(DESTDIR)/usr/share/$(PACKAGE)-management/webapps/client/WEB-INF/classes/*.* |
| ln -s ../../..$(SYSCONFDIR)/$(PACKAGE)/management $(DESTDIR)/usr/share/$(PACKAGE)-management/conf |
| ln -s ../../../usr/share/tomcat6/lib $(DESTDIR)/usr/share/$(PACKAGE)-management/lib |
| ln -s ../../../var/log/$(PACKAGE)/management $(DESTDIR)/usr/share/$(PACKAGE)-management/logs |
| ln -s ../../../var/cache/$(PACKAGE)/management/temp $(DESTDIR)/usr/share/$(PACKAGE)-management/temp |
| ln -s ../../../var/cache/$(PACKAGE)/management/work $(DESTDIR)/usr/share/$(PACKAGE)-management/work |
| |
| # cloudstack-common |
| mkdir -p $(DESTDIR)/usr/share/$(PACKAGE)-common |
| mkdir $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts |
| mkdir $(DESTDIR)/usr/share/$(PACKAGE)-common/setup |
| mkdir $(DESTDIR)/usr/share/$(PACKAGE)-common/lib |
| cp -r scripts/installer $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts |
| cp -r scripts/network $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts |
| cp -r scripts/storage $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts |
| cp -r scripts/util $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts |
| cp -r scripts/vm $(DESTDIR)/usr/share/$(PACKAGE)-common/scripts |
| install -D client/target/utilities/bin/cloud-migrate-databases $(DESTDIR)/usr/bin/cloudstack-migrate-databases |
| install -D client/target/utilities/bin/cloud-set-guest-password $(DESTDIR)/usr/bin/cloudstack-set-guest-password |
| install -D client/target/utilities/bin/cloud-set-guest-sshkey $(DESTDIR)/usr/bin/cloudstack-set-guest-sshkey |
| install -D client/target/utilities/bin/cloud-setup-databases $(DESTDIR)/usr/bin/cloudstack-setup-databases |
| install -D client/target/utilities/bin/cloud-setup-management $(DESTDIR)/usr/bin/cloudstack-setup-management |
| install -D client/target/utilities/bin/cloud-setup-encryption $(DESTDIR)/usr/bin/cloudstack-setup-encryption |
| install -D client/target/utilities/bin/cloud-sysvmadm $(DESTDIR)/usr/bin/cloudstack-sysvmadm |
| install -D services/console-proxy/server/dist/systemvm.iso $(DESTDIR)/usr/share/$(PACKAGE)-common/vms/systemvm.iso |
| # We need jasypt for cloud-install-sys-tmplt, so this is a nasty hack to get it into the right place |
| install -D agent/target/dependencies/jasypt-1.9.0.jar $(DESTDIR)/usr/share/$(PACKAGE)-common/lib |
| |
| # cloudstack-python |
| mkdir -p $(DESTDIR)/usr/lib/python2.7/dist-packages |
| cp -r python/lib/cloud* $(DESTDIR)/usr/lib/python2.7/dist-packages |
| |
| # cloudstack-usage |
| mkdir $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/usage |
| mkdir $(DESTDIR)/var/log/$(PACKAGE)/usage |
| mkdir $(DESTDIR)/usr/share/$(PACKAGE)-usage |
| mkdir $(DESTDIR)/usr/share/$(PACKAGE)-usage/plugins |
| install -D usage/target/cloud-usage-$(VERSION)-SNAPSHOT.jar $(DESTDIR)/usr/share/$(PACKAGE)-usage/lib/$(PACKAGE)-usage.jar |
| install -D usage/target/dependencies/* $(DESTDIR)/usr/share/$(PACKAGE)-usage/lib/ |
| cp usage/target/transformed/* $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/usage/ |
| install -D packaging/debian/init/cloud-usage $(DESTDIR)/$(SYSCONFDIR)/init.d/$(PACKAGE)-usage |
| |
| # cloudstack-awsapi |
| mkdir $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/awsapi |
| mkdir $(DESTDIR)/var/log/$(PACKAGE)/awsapi |
| mkdir $(DESTDIR)/usr/share/$(PACKAGE)-bridge |
| mkdir -p $(DESTDIR)/usr/share/$(PACKAGE)-bridge/webapps/awsapi |
| mkdir $(DESTDIR)/usr/share/$(PACKAGE)-bridge/setup |
| cp -r awsapi/target/cloud-awsapi-$(VERSION)-SNAPSHOT/* $(DESTDIR)/usr/share/$(PACKAGE)-bridge/webapps/awsapi |
| install -D awsapi-setup/setup/cloud-setup-bridge $(DESTDIR)/usr/bin/cloudstack-setup-bridge |
| install -D awsapi-setup/setup/cloudstack-aws-api-register $(DESTDIR)/usr/bin/cloudstack-aws-api-register |
| cp -r awsapi-setup/db/mysql/* $(DESTDIR)/usr/share/$(PACKAGE)-bridge/setup |
| for i in applicationContext.xml cloud-bridge.properties commons-logging.properties crypto.properties xes.keystore ec2-service.properties; do \ |
| mv $(DESTDIR)/usr/share/$(PACKAGE)-bridge/webapps/awsapi/WEB-INF/classes/$$i $(DESTDIR)/$(SYSCONFDIR)/$(PACKAGE)/management/; \ |
| done |
| rm $(DESTDIR)/usr/share/$(PACKAGE)-bridge/webapps/awsapi/WEB-INF/classes/log4j-vmops.xml |
| rm $(DESTDIR)/usr/share/$(PACKAGE)-bridge/webapps/awsapi/WEB-INF/classes/log4j.properties |
| rm $(DESTDIR)/usr/share/$(PACKAGE)-bridge/webapps/awsapi/WEB-INF/classes/db.properties |
| rm $(DESTDIR)/usr/share/$(PACKAGE)-bridge/webapps/awsapi/WEB-INF/classes/LICENSE.txt |
| rm $(DESTDIR)/usr/share/$(PACKAGE)-bridge/webapps/awsapi/WEB-INF/classes/NOTICE.txt |
| rm $(DESTDIR)/usr/share/$(PACKAGE)-bridge/webapps/awsapi/WEB-INF/classes/services.xml |
| rm -rf $(DESTDIR)/usr/share/$(PACKAGE)-bridge/webapps/awsapi/WEB-INF/classes/META-INF |
| |
| dh_installdirs |
| dh_install |
| dh_python2 |
| |
| binary: install |
| dh_install |
| dh_installchangelogs |
| dh_installdocs -A tools/whisker/LICENSE tools/whisker/NOTICE INSTALL.md |
| dh_installman |
| dh_link |
| dh_strip |
| dh_compress |
| dh_fixperms |
| dh_makeshlibs |
| dh_installdeb |
| dh_gencontrol |
| dh_md5sums |
| dh_builddeb |