public inbox for cluster-cvs@sourceware.org
help / color / mirror / Atom feed
* cluster: STABLE2 - build: add release script to help release management task
@ 2009-01-22 12:35 Fabio M. Di Nitto
  0 siblings, 0 replies; only message in thread
From: Fabio M. Di Nitto @ 2009-01-22 12:35 UTC (permalink / raw)
  To: cluster-cvs-relay

Gitweb:        http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=8a854f0009b6f2d8441a6e44d40665e868e2328f
Commit:        8a854f0009b6f2d8441a6e44d40665e868e2328f
Parent:        6de42139dae71500a35e0bbfeb978f00810cc999
Author:        Fabio M. Di Nitto <fdinitto@redhat.com>
AuthorDate:    Thu Jan 22 13:33:51 2009 +0100
Committer:     Fabio M. Di Nitto <fdinitto@redhat.com>
CommitterDate: Thu Jan 22 13:33:51 2009 +0100

build: add release script to help release management task

generally nobody, except who does releases, should need this

Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
---
 make/release.mk |   80 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 80 insertions(+), 0 deletions(-)

diff --git a/make/release.mk b/make/release.mk
new file mode 100644
index 0000000..c1dd226
--- /dev/null
+++ b/make/release.mk
@@ -0,0 +1,80 @@
+# NOTE: this make file snippet is only used by the release manager
+# to build official release tarballs, handle tagging and publish.
+#
+# do _NOT_ use for anything else!!!!!!!!!
+
+## do sanity checks
+
+ifndef VERSION
+
+all:
+	@echo WARNING: VERSION= is not defined!
+	@exit 1
+
+else ifndef OLDVER
+
+all:
+	@echo WARNING: OLDVER= is not defined!
+	@exit 1
+
+else
+
+## setup stuff
+
+PROJECT=cluster
+PV=$(PROJECT)-$(VERSION)
+TGZ=$(PV).tar.gz
+TESTTGZ=TEST-$(TGZ)
+
+all: test-tarball
+
+test-tarball:
+	git archive \
+		--format=tar \
+		--prefix=$(PV)/ \
+		HEAD | \
+		gzip -9 \
+		> ../$(TESTTGZ)
+
+release: tag tarballs
+
+tag:
+	git tag -a -m "$(PV) release" $(PV) HEAD
+
+tarballs: master-tarball
+
+master-tarball:
+	git archive \
+		--format=tar \
+		--prefix=$(PV)/ \
+		$(PV) | \
+		tar xp
+	sed -i -e \
+		's#<CVS>#$(VERSION)#g' \
+		$(PV)/gfs-kernel/src/gfs/gfs.h
+	echo "VERSION \"$(VERSION)\"" \
+		>> $(PV)/make/official_release_version
+	tar cp $(PV) | \
+		gzip -9 \
+		> ../$(TGZ)
+	rm -rf $(PV)
+
+publish: master-publish
+
+master-publish:
+	git push --tags origin
+	scp ../$(TGZ) \
+		fedorahosted.org:$(PROJECT)
+	cp ../$(TGZ) \
+		../ftp/$(TGZ)
+	cd ../ftp && \
+		cvs add $(TGZ) && \
+		cvs commit $(TGZ) -m "$(PV) release"
+	git log $(PROJECT)-$(OLDVER)..$(PV) | \
+		git shortlog > ../$(PV).emaildata
+	git diff --stat $(PROJECT)-$(OLDVER)..$(PV) \
+		>> ../$(PV).emaildata
+	@echo Hey you!.. yeah you looking somewhere else!
+	@echo remember to update the wiki and send the email to cluster-devel and linux-cluster
+
+endif


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2009-01-22 12:35 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-01-22 12:35 cluster: STABLE2 - build: add release script to help release management task Fabio M. Di Nitto

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).