make release: Add Debian package building and upload 0.2
authorCarl Worth <cworth@cworth.org>
Fri, 16 Apr 2010 20:13:12 +0000 (13:13 -0700)
committerCarl Worth <cworth@cworth.org>
Fri, 16 Apr 2010 20:20:22 +0000 (13:20 -0700)
Finally, a single button to push to do all the uploading.

.gitignore
Makefile.local
RELEASING

index e00355ca2d0673801dc1d30f86b4a568104c7863..217440d50fd2487094d3d769b1f067052c523e0c 100644 (file)
@@ -13,4 +13,3 @@ libnotmuch.so*
 .*.swp
 *.elc
 releases
-debian-build
index 854cf5200393707ca4ab8cc8dbf81d69bfec95eb..5bb570b1a7a4b3f4c6365dd651d8948cdffcc4bc 100644 (file)
@@ -89,11 +89,17 @@ dist: $(TAR_FILE)
 release: verify-source-tree-and-version
        $(MAKE) VERSION=$(VERSION) verify-newer
        $(MAKE) VERSION=$(VERSION) test
+       rm -rf ./debian-build
+       git-buildpackage
+       cp debian-build/notmuch_$(VERSION).tar.gz notmuch-$(VERSION).tar.gz
        $(MAKE) VERSION=$(VERSION) $(GPG_FILE)
        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
        mv $(TAR_FILE) $(SHA1_FILE) $(GPG_FILE) releases
+       (cd debian-build; dput *.changes)
+       mv debian-build/* releases
+       rmdir debian-build
        git tag -s -m "$(PACKAGE) $(VERSION) release" $(VERSION)
        git push origin $(VERSION)
        $(MAKE) VERSION=$(VERSION) release-message > $(PACKAGE)-$(VERSION).announce
index 70a2ec547d2653379c476c99bc9dbd54173a7c07..d314a6c68a3f63c87a8c1e3a488910618eb0a561 100644 (file)
--- a/RELEASING
+++ b/RELEASING
@@ -69,20 +69,28 @@ repository. From here, there are just a few steps to release:
        release, (taking entries from NEWS and the version from the
        version file, and creating a new commit, etc.)
 
-5) Run "make release" which will perform the following steps:
+5) Run "make release" which will perform the following steps.
+
+   Note: If any problem occurs during the process, (such as a lintian
+   warning that you decide should be fixed), you can abort at the
+   prompt for your GPG passphrase and nothing will have been uploaded
+   yet.
 
        * Ensure that the version consists only of digits and periods
        * Ensure that version and debian/changelog have the same version
        * Verify that the source tree is clean
        * Compile the current notmuch code (aborting release if it fails)
        * Run the notmuch test suite (aborting release if it fails)
-       * Generate the final tar file
+       * Compile a Debian package
+       * Copy the tar file from what was made for Debian package
        * Generate a .sha1 sum file for the tar file
        * Sign the sha1sum using your GPG setup (asks for your GPG password)
        * Check that no release exists with the current version
        * scp the three files to appear on http://notmuchmail.org/releases
        * Create a LATEST-notmuch-version file (after deleting any old one)
-       * Place local copies of the three files in the releases directory
+       * Place local copies of the tar, sha1, and gpg files into releases
+       * Upload the Debian package
+       * Place a local copy of the Debian package files in releases
        * Tag the entire source tree with a tag of the form X.Y.Z, and sign
          the tag with your GPG key (asks for your GPG password, and you
          may need to set GIT_COMMITTER_NAME and GIT_COMMITTER_EMAIL to match