You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by hl...@apache.org on 2014/12/30 19:53:41 UTC
tapestry-5 git commit: Change the deployment script to work with
Apache svnpubsub system
Repository: tapestry-5
Updated Branches:
refs/heads/master f88ed9a30 -> 687abdf28
Change the deployment script to work with Apache svnpubsub system
Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo
Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/687abdf2
Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/687abdf2
Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/687abdf2
Branch: refs/heads/master
Commit: 687abdf28c5422c2ec130f4422259f685673d868
Parents: f88ed9a
Author: Howard M. Lewis Ship <hl...@apache.org>
Authored: Tue Dec 30 09:40:01 2014 -0800
Committer: Howard M. Lewis Ship <hl...@apache.org>
Committed: Tue Dec 30 10:04:58 2014 -0800
----------------------------------------------------------------------
build.gradle | 42 ++++++++++++++++++++++++++----------------
1 file changed, 26 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/687abdf2/build.gradle
----------------------------------------------------------------------
diff --git a/build.gradle b/build.gradle
index 20f00f4..1d97274 100755
--- a/build.gradle
+++ b/build.gradle
@@ -62,10 +62,15 @@ project.ext {
deployUsernameProperty = isSnapshot() ? "snapshotDeployUserName" : "apacheDeployUserName"
deployPasswordProperty = isSnapshot() ? "snapshotDeployPassword" : "apacheDeployPassword"
- canDeploy = [deployUsernameProperty, deployPasswordProperty].every { project.hasProperty(it) }
+ canDeploy = [deployUsernameProperty, deployPasswordProperty, "apacheArchivesFolder"].every { project.hasProperty(it) }
+ // These are all deferred inside closures, to allow people without the necessary values in their
+ // gradle.properties to build locally, just not deploy. getProperty() throws an exception if the property
+ // is not present.
deployUsername = { getProperty(deployUsernameProperty) }
deployPassword = { getProperty(deployPasswordProperty) }
+
+ archiveDeployFolder = { getProperty("apacheArchivesFolder") }
}
sonar {
@@ -512,29 +517,34 @@ if (canDeploy) {
}
}
- task uploadArtifacts(type: Scp) {
- group "Release artifact"
- description "Uploads top-level artifacts to people.apache.org, along with MD5 checksums and PGP signatures (if signing is enabled)"
+ // This requires that you have the apacheArchivesFolder property configured in your
+ // ~/.gradle/gradle.properties. The folder should be a Subversion workspace for
+ // https://dist.apache.org/repos/dist/dev/tapestry
+ // after the build, you must manually add the new files to the workspace (using "svn add")
+ // then commit ("svn commit").
+
+ // The files will be visible in https://dist.apache.org/repos/dist/dev/tapestry/, allowing
+ // committers to download and verify them.
- source files(generateMD5Checksums, configurations.uploads.allArtifacts.files)
+ // After a successful release vote, the files can be moved to a second Subversion workspace
+ // for https://dist.apache.org/repos/dist/release/tapestry. Adding the files and committing
+ // there will publish them to http://www.apache.org/dist/tapestry ... and from there
+ // to all Apache mirrors (after about a 24 hour delay).
- host "people.apache.org"
- userName deployUsername()
- password deployPassword()
+ task copyArchives(type: Copy) {
+ group "Release artifact"
+ description "Copies build archives (source, bin, docs) to a configured deployment folder, along with MD5 checksums and PGP signatures (if signing is enabled)"
- // The destination folder at people.apache.org needs to already exist.
- destination "public_html/tapestry-releases"
+ destinationDir file(archiveDeployFolder())
- doFirst {
- logger.info "Uploading the following files to people.apache.org (as user '${userName}'):"
- source.files.each { logger.info " $it" }
- }
+ from generateMD5Checksums
+ from configurations.uploads.allArtifacts.files
}
task generateRelease {
- dependsOn "quickstart:clean", continuousIntegration, subprojects.uploadPublished, uploadArtifacts
+ dependsOn "quickstart:clean", continuousIntegration, subprojects.uploadPublished, copyArchives
group "Release artifact"
- description "Generates and uploads a final release to Apache Nexus"
+ description "Generates and uploads a final release to Apache Nexus and copies archives for deployment"
}
}