This is an automated email from the ASF dual-hosted git repository.

jdaugherty pushed a commit to branch 7.0.x
in repository https://gitbox.apache.org/repos/asf/grails-core.git

commit d9d6b4104799900207456df27f0b56f226d7290b
Author: James Daugherty <[email protected]>
AuthorDate: Tue May 27 14:21:05 2025 -0400

    correctly apply signing configuration
---
 grails-gradle/build.gradle                 | 29 +++++----------------
 grails-gradle/docs-core/build.gradle       |  1 +
 grails-gradle/gradle/signing-config.gradle | 41 ++++++++++++++++++++++++++++++
 grails-gradle/model/build.gradle           |  1 +
 grails-gradle/plugins/build.gradle         |  1 +
 grails-gradle/tasks/build.gradle           |  1 +
 6 files changed, 52 insertions(+), 22 deletions(-)

diff --git a/grails-gradle/build.gradle b/grails-gradle/build.gradle
index 334823acd3..47c70ab81e 100644
--- a/grails-gradle/build.gradle
+++ b/grails-gradle/build.gradle
@@ -53,37 +53,22 @@ ext {
     isCiBuild = System.getenv().get('CI') as Boolean
     configuredTestParallel = findProperty('maxTestParallel') as Integer ?: 
(isCiBuild ? 3 : Runtime.runtime.availableProcessors() * 3/4 as int ?: 1)
 }
+
 if (isReleaseVersion) {
     apply plugin: 'io.github.gradle-nexus.publish-plugin'
-    apply plugin: 'signing'
 
     nexusPublishing {
         repositories {
             sonatype {
-                nexusUrl = uri('https://s01.oss.sonatype.org/service/local/')
-                username = System.getenv('SONATYPE_USERNAME') ?: 
project.findProperty('sonatypeOssUsername')
-                password = System.getenv('SONATYPE_PASSWORD') ?: 
project.findProperty('sonatypeOssPassword')
-                stagingProfileId = 
System.getenv('SONATYPE_STAGING_PROFILE_ID') ?: 
project.findProperty('sonatypeOssStagingProfileId')
+                if(System.getenv('NEXUS_PUBLISH_URL')) {
+                    nexusUrl = uri(System.getenv('NEXUS_PUBLISH_URL'))
+                }
+                username = System.getenv('NEXUS_PUBLISH_USERNAME')
+                password = System.getenv('NEXUS_PUBLISH_PASSWORD')
+                stagingProfileId = 
System.getenv('NEXUS_PUBLISH_STAGING_PROFILE_ID')
             }
         }
     }
-
-    afterEvaluate {
-        signing {
-            required { isReleaseVersion && gradle.taskGraph.hasTask('publish') 
}
-            Publication[] publications = new 
Publication[publishing.publications.size()]
-            publishing.publications.findAll().toArray(publications)
-            sign(publications)
-        }
-    }
-
-    tasks.withType(Sign) {
-        onlyIf { isReleaseVersion }
-    }
-
-    
tasks.withType(io.github.gradlenexus.publishplugin.InitializeNexusStagingRepository).configureEach
 {
-        shouldRunAfter(tasks.withType(Sign))
-    }
 }
 
 tasks.register("aggregateChecksums") {
diff --git a/grails-gradle/docs-core/build.gradle 
b/grails-gradle/docs-core/build.gradle
index 2e4e215282..bf4eaa0d0b 100644
--- a/grails-gradle/docs-core/build.gradle
+++ b/grails-gradle/docs-core/build.gradle
@@ -145,4 +145,5 @@ apply {
     from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle')
     from rootProject.layout.projectDirectory.file('gradle/test-config.gradle')
     from 
rootProject.layout.projectDirectory.file('gradle/checksum-config.gradle')
+    from 
rootProject.layout.projectDirectory.file('gradle/signing-config.gradle')
 }
\ No newline at end of file
diff --git a/grails-gradle/gradle/signing-config.gradle 
b/grails-gradle/gradle/signing-config.gradle
new file mode 100644
index 0000000000..d06001245e
--- /dev/null
+++ b/grails-gradle/gradle/signing-config.gradle
@@ -0,0 +1,41 @@
+/*
+ *  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *    https://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+import io.github.gradlenexus.publishplugin.InitializeNexusStagingRepository
+
+if (isReleaseVersion) {
+    apply plugin: 'signing'
+
+    afterEvaluate {
+        signing {
+            required { isReleaseVersion && gradle.taskGraph.hasTask('publish') 
}
+            Publication[] publications = new 
Publication[publishing.publications.size()]
+            publishing.publications.findAll().toArray(publications)
+            sign(publications)
+        }
+    }
+
+    tasks.withType(Sign) {
+        onlyIf { isReleaseVersion }
+    }
+
+    
project.rootProject.tasks.withType(InitializeNexusStagingRepository).configureEach
 { InitializeNexusStagingRepository task ->
+        task.shouldRunAfter = project.tasks.withType(Sign)
+    }
+}
+
diff --git a/grails-gradle/model/build.gradle b/grails-gradle/model/build.gradle
index 41b9c238c1..07ee181901 100644
--- a/grails-gradle/model/build.gradle
+++ b/grails-gradle/model/build.gradle
@@ -124,4 +124,5 @@ apply {
     from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle')
     from rootProject.layout.projectDirectory.file('gradle/test-config.gradle')
     from 
rootProject.layout.projectDirectory.file('gradle/checksum-config.gradle')
+    from 
rootProject.layout.projectDirectory.file('gradle/signing-config.gradle')
 }
\ No newline at end of file
diff --git a/grails-gradle/plugins/build.gradle 
b/grails-gradle/plugins/build.gradle
index 9b8affaf1f..c5c7a58630 100644
--- a/grails-gradle/plugins/build.gradle
+++ b/grails-gradle/plugins/build.gradle
@@ -186,4 +186,5 @@ apply {
     from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle')
     from rootProject.layout.projectDirectory.file('gradle/e2eTest.gradle')
     from 
rootProject.layout.projectDirectory.file('gradle/checksum-config.gradle')
+    from 
rootProject.layout.projectDirectory.file('gradle/signing-config.gradle')
 }
diff --git a/grails-gradle/tasks/build.gradle b/grails-gradle/tasks/build.gradle
index a85ac9e58f..4a4b65a108 100644
--- a/grails-gradle/tasks/build.gradle
+++ b/grails-gradle/tasks/build.gradle
@@ -112,4 +112,5 @@ apply {
     from rootProject.layout.projectDirectory.file('gradle/docs-config.gradle')
     from rootProject.layout.projectDirectory.file('gradle/test-config.gradle')
     from 
rootProject.layout.projectDirectory.file('gradle/checksum-config.gradle')
+    from 
rootProject.layout.projectDirectory.file('gradle/signing-config.gradle')
 }
\ No newline at end of file

Reply via email to