Skip to content

Commit 28c6989

Browse files
author
Justin Ryan
committed
Verify before we can't take it back, use preferredVersion variable
1 parent d0e42e3 commit 28c6989

File tree

3 files changed

+11
-5
lines changed

3 files changed

+11
-5
lines changed

gradle/buildscript.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@ repositories {
66
dependencies {
77
classpath 'nl.javadude.gradle.plugins:license-gradle-plugin:0.6.1'
88
classpath 'com.mapvine:gradle-cobertura-plugin:0.1'
9-
classpath 'gradle-release:gradle-release:1.1.4'
9+
classpath 'gradle-release:gradle-release:1.1.5'
1010
classpath 'org.ajoberstar:gradle-git:0.5.0'
1111
}

gradle/convention.gradle

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
status = version.contains('SNAPSHOT')?'snapshot':status
1+
// GRADLE-2087 workaround, perform after java plugin
2+
status = project.hasProperty('preferredStatus')?project.preferredStatus:(version.contains('SNAPSHOT')?'snapshot':'release')
23

34
subprojects { project ->
45
apply plugin: 'java' // Plugin as major conventions

gradle/release.gradle

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,11 @@ task forceCandidate {
1919
onlyIf { gradle.taskGraph.hasTask(releaseCandidate) }
2020
doFirst { project.status = 'candidate' }
2121
}
22-
release.dependsOn(forceCandidate)
22+
task forceRelease {
23+
onlyIf { !gradle.taskGraph.hasTask(releaseCandidate) }
24+
doFirst { project.status = 'release' }
25+
}
26+
release.dependsOn([forceCandidate, forceRelease])
2327

2428
task uploadMavenCentral(dependsOn: subprojects.tasks.uploadMavenCentral)
2529
task releaseSnapshot(dependsOn: [uploadArtifactory, uploadMavenCentral])
@@ -34,8 +38,9 @@ task verifyStatus << {
3438
uploadArtifactory.dependsOn(verifyStatus)
3539
uploadMavenCentral.dependsOn(verifyStatus)
3640

37-
// Ensure upload happens before taggging but after all pre-checks
38-
createReleaseTag.dependsOn([uploadArtifactory, uploadMavenCentral])
41+
// Ensure upload happens before taggging, hence upload failures will leave repo in a revertable state
42+
preTagCommit.dependsOn([uploadArtifactory, uploadMavenCentral])
43+
3944

4045
gradle.taskGraph.whenReady { taskGraph ->
4146
def hasRelease = taskGraph.hasTask('commitNewVersion')

0 commit comments

Comments
 (0)