cluster: STABLE2 - build: add release script to help release management task
Fabio M. Di Nitto
fabbione@fedoraproject.org
Thu Jan 22 12:35:00 GMT 2009
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
More information about the Cluster-cvs
mailing list