summaryrefslogtreecommitdiffstats
path: root/release.template
diff options
context:
space:
mode:
Diffstat (limited to 'release.template')
-rw-r--r--release.template115
1 files changed, 115 insertions, 0 deletions
diff --git a/release.template b/release.template
new file mode 100644
index 0000000..7b5460d
--- /dev/null
+++ b/release.template
@@ -0,0 +1,115 @@
+#!/bin/bash
+#
+# ${project.version} release script
+#
+
+# go back one commit to RELEASE commit
+echo ""
+echo "************************************************************************"
+echo "Checking out ${project.version} RELEASE commit ${project.commitId}"
+echo "************************************************************************"
+echo ""
+git checkout ${project.commitId}
+
+# submodules operate on a detached HEAD so we first checkout and pull master
+echo ""
+echo "************************************************************************"
+echo "Preparing Maven submodule"
+echo "************************************************************************"
+echo ""
+cd maven
+git checkout master
+git pull
+cd ..
+
+# build RELEASE artifacts, this will deploy artifacts into maven folder
+echo ""
+echo "************************************************************************"
+echo "Building ${project.version} RELEASE artifacts"
+echo "************************************************************************"
+echo ""
+ant
+
+# commit all generated artifacts and metadata in submodule
+echo ""
+echo "************************************************************************"
+echo "Committing Maven submodule ${project.version} RELEASE artifacts"
+echo "************************************************************************"
+echo ""
+cd maven
+git add .
+git commit -m "${project.version} artifacts"
+cd ..
+
+# Update master branch Maven submodule repository reference
+echo ""
+echo "************************************************************************"
+echo "Updating master for Maven submodule ${project.version} RELEASE artifacts"
+echo "************************************************************************"
+echo ""
+git checkout master
+git add maven
+git commit -m "updated Maven submodule repository to ${project.version}"
+
+# Update gh-pages branch Maven submodule repository reference
+echo ""
+echo "************************************************************************"
+echo "Updating gh-pages for Maven submodule ${project.version} RELEASE artifacts"
+echo "************************************************************************"
+echo ""
+git checkout gh-pages
+git add maven
+git commit -m "updated Maven submodule repository to ${project.version}"
+
+# return to release commit
+echo ""
+echo "************************************************************************"
+echo "Checking out ${project.version} RELEASE commit ${project.commitId}"
+echo "************************************************************************"
+echo ""
+git checkout ${project.commitId}
+
+# upload artifacts
+echo ""
+echo "************************************************************************"
+echo "Uploading ${project.version} artifacts"
+echo "************************************************************************"
+echo ""
+ant uploadArtifacts
+
+# build site, update gh-pages, and ftp upload site to hosting provider
+echo ""
+echo "************************************************************************"
+echo "Building ${project.version} website"
+echo "************************************************************************"
+echo ""
+ant publishSite
+
+# return to project master
+echo ""
+echo "************************************************************************"
+echo "Checking out master"
+echo "************************************************************************"
+echo ""
+git checkout master
+
+# push Maven submodule to origin
+echo ""
+echo "************************************************************************"
+echo "Pushing Maven submodule"
+echo "************************************************************************"
+echo ""
+cd maven
+git push origin master
+cd ..
+
+# push project branches
+echo ""
+echo "************************************************************************"
+echo "Pushing master and gh-pages"
+echo "************************************************************************"
+echo ""
+git push origin master gh-pages
+
+# update the Maven submodule reference
+git submodule update