build-system: guard parts irrevokable parts of release target with REALLY_UPLOAD

This supports both testing and use by non-upload privileged
users. Along with previous commits in the series, this lets one do a
dry run of the release process and created a tarball, signature file,
and release announcement to inspect before uploading.
This commit is contained in:
David Bremner 2011-07-04 08:39:04 -03:00
parent 9b0dfd11c5
commit 466f3b57aa

View file

@ -100,12 +100,14 @@ release: verify-source-tree-and-version
$(MAKE) VERSION=$(VERSION) $(GPG_FILE) $(MAKE) VERSION=$(VERSION) $(GPG_FILE)
ln -sf $(TAR_FILE) $(DEB_TAR_FILE) ln -sf $(TAR_FILE) $(DEB_TAR_FILE)
pristine-tar commit $(DEB_TAR_FILE) $(VERSION) pristine-tar commit $(DEB_TAR_FILE) $(VERSION)
scp $(TAR_FILE) $(SHA1_FILE) $(GPG_FILE) $(RELEASE_HOST):$(RELEASE_DIR)
ssh $(RELEASE_HOST) "rm -f $(RELEASE_DIR)/LATEST-$(PACKAGE)-[0-9]* && ln -s $(TAR_FILE) $(RELEASE_DIR)/LATEST-$(PACKAGE)-$(VERSION)"
mkdir -p releases mkdir -p releases
mv $(TAR_FILE) $(SHA1_FILE) $(GPG_FILE) releases mv $(TAR_FILE) $(SHA1_FILE) $(GPG_FILE) releases
git push origin $(VERSION)
$(MAKE) VERSION=$(VERSION) release-message > $(PACKAGE)-$(VERSION).announce $(MAKE) VERSION=$(VERSION) release-message > $(PACKAGE)-$(VERSION).announce
ifeq ($(REALLY_UPLOAD),yes)
git push origin $(VERSION)
cd releases && scp $(TAR_FILE) $(SHA1_FILE) $(GPG_FILE) $(RELEASE_HOST):$(RELEASE_DIR)
ssh $(RELEASE_HOST) "rm -f $(RELEASE_DIR)/LATEST-$(PACKAGE)-[0-9]* ; ln -s $(TAR_FILE) $(RELEASE_DIR)/LATEST-$(PACKAGE)-$(VERSION)"
endif
@echo "Please send a release announcement using $(PACKAGE)-$(VERSION).announce as a template." @echo "Please send a release announcement using $(PACKAGE)-$(VERSION).announce as a template."
.PHONY: release-message .PHONY: release-message