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

jamesfredley pushed a commit to branch snapshot-only-snapshot
in repository https://gitbox.apache.org/repos/asf/grails-forge.git

commit 26b342b498ac49eb58c88e1e4dc07e0fce01d5e3
Author: James Fredley <[email protected]>
AuthorDate: Thu May 1 17:17:50 2025 -0400

    Only add the Apache Snapshot repository when the grailsVersion is a SNAPSHOT
---
 .../main/java/org/grails/forge/feature/build/gradle/Gradle.java  | 4 +++-
 .../org/grails/forge/feature/build/gradle/GradleBuildSrc.java    | 4 +++-
 .../forge/feature/build/gradle/templates/buildGradle.rocker.raw  | 9 ++++++---
 .../build/gradle/templates/buildSrcBuildGradle.rocker.raw        | 6 ++++--
 .../src/test/groovy/org/grails/forge/BuildBuilder.groovy         | 8 +++++---
 5 files changed, 21 insertions(+), 10 deletions(-)

diff --git 
a/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/Gradle.java
 
b/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/Gradle.java
index 9ac20e0..704b106 100644
--- 
a/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/Gradle.java
+++ 
b/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/Gradle.java
@@ -34,6 +34,7 @@ import org.grails.forge.options.BuildTool;
 import org.grails.forge.options.Options;
 import org.grails.forge.template.BinaryTemplate;
 import org.grails.forge.template.RockerTemplate;
+import org.grails.forge.util.VersionInfo;
 
 import java.util.Set;
 import java.util.function.Function;
@@ -77,7 +78,8 @@ public class Gradle implements BuildFeature {
                 generatorContext.getProject(),
                 coordinateResolver,
                 generatorContext.getFeatures(),
-                build
+                build,
+                VersionInfo.getGrailsVersion()
         )));
 
         configureDefaultGradleProps(generatorContext);
diff --git 
a/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/GradleBuildSrc.java
 
b/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/GradleBuildSrc.java
index f08725d..974c3c5 100644
--- 
a/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/GradleBuildSrc.java
+++ 
b/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/GradleBuildSrc.java
@@ -24,6 +24,7 @@ import org.grails.forge.build.gradle.GradleBuildCreator;
 import org.grails.forge.feature.build.gradle.templates.buildSrcBuildGradle;
 import org.grails.forge.options.BuildTool;
 import org.grails.forge.template.RockerTemplate;
+import org.grails.forge.util.VersionInfo;
 
 @Singleton
 public class GradleBuildSrc implements GradleBuildSrcFeature {
@@ -65,7 +66,8 @@ public class GradleBuildSrc implements GradleBuildSrcFeature {
                 generatorContext.getApplicationType(),
                 generatorContext.getProject(),
                 generatorContext.getFeatures(),
-                build
+                build,
+                VersionInfo.getGrailsVersion()
         )));
     }
 
diff --git 
a/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/templates/buildGradle.rocker.raw
 
b/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/templates/buildGradle.rocker.raw
index 2bfa39c..f2f5ef0 100644
--- 
a/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/templates/buildGradle.rocker.raw
+++ 
b/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/templates/buildGradle.rocker.raw
@@ -17,7 +17,8 @@ ApplicationType applicationType,
 Project project,
 Function<String, Coordinate> coordinateResolver,
 Features features,
-GradleBuild gradleBuild
+GradleBuild gradleBuild,
+String grailsVersion
 )
 
 @seleniumVersion => {@coordinateResolver.apply("selenium-api").getVersion()}
@@ -27,8 +28,9 @@ GradleBuild gradleBuild
 buildscript {
     repositories {
         mavenCentral()
-        // TODO: only include on when grailsVersion is a snapshot
+@if (grailsVersion.endsWith("SNAPSHOT")) {
         maven { url "https://repository.apache.org/content/groups/snapshots/"; }
+}
         maven { url "https://repo.grails.org/grails/core"; }
     }
     dependencies { // Not Published to Gradle Plugin Portal
@@ -69,8 +71,9 @@ apply from: "gradle/asciidoc.gradle"
 
 repositories {
     mavenCentral()
-    // TODO: only include on when grailsVersion is a snapshot
+@if (grailsVersion.endsWith("SNAPSHOT")) {
     maven { url "https://repository.apache.org/content/groups/snapshots/"; }
+}
     maven { url "https://repo.grails.org/grails/core"; }
 }
 
diff --git 
a/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/templates/buildSrcBuildGradle.rocker.raw
 
b/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/templates/buildSrcBuildGradle.rocker.raw
index 8743aa0..a14dc83 100644
--- 
a/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/templates/buildSrcBuildGradle.rocker.raw
+++ 
b/grails-forge-core/src/main/java/org/grails/forge/feature/build/gradle/templates/buildSrcBuildGradle.rocker.raw
@@ -9,14 +9,16 @@
 ApplicationType applicationType,
 Project project,
 Features features,
-GradleBuild gradleBuild
+GradleBuild gradleBuild,
+String grailsVersion
 )
 
 @if(!gradleBuild.getBuildSrcDependencies().isEmpty()) {
 repositories {
     mavenCentral()
-    // TODO: only include on when grailsVersion is a snapshot
+@if (grailsVersion.endsWith("SNAPSHOT")) {
     maven { url "https://repository.apache.org/content/groups/snapshots/"; }
+}
     maven { url "https://repo.grails.org/grails/core"; }
 }
 dependencies {
diff --git 
a/grails-forge-core/src/test/groovy/org/grails/forge/BuildBuilder.groovy 
b/grails-forge-core/src/test/groovy/org/grails/forge/BuildBuilder.groovy
index 9429389..489a468 100644
--- a/grails-forge-core/src/test/groovy/org/grails/forge/BuildBuilder.groovy
+++ b/grails-forge-core/src/test/groovy/org/grails/forge/BuildBuilder.groovy
@@ -17,6 +17,7 @@ import 
org.grails.forge.feature.build.gradle.templates.buildSrcBuildGradle
 import org.grails.forge.fixture.ContextFixture
 import org.grails.forge.fixture.ProjectFixture
 import org.grails.forge.options.*
+import org.grails.forge.util.VersionInfo
 
 import java.util.function.Function
 
@@ -96,7 +97,8 @@ class BuildBuilder implements ProjectFixture, ContextFixture {
         GradleBuild build = gradleBuild(options, features, project, type)
         CoordinateResolver resolver = ctx.getBean(CoordinateResolver);
         Function<String, Coordinate> coordinateResolver = (artifactId) -> 
resolver.resolve(artifactId).orElseThrow(() -> new 
LookupFailedException(artifactId))
-        return buildGradle.template(type, project, coordinateResolver, 
features, build).render().toString()
+        String grailsVersion = VersionInfo.grailsVersion
+        return buildGradle.template(type, project, coordinateResolver, 
features, build, grailsVersion).render().toString()
     }
 
     String renderBuildSrc() {
@@ -109,9 +111,9 @@ class BuildBuilder implements ProjectFixture, 
ContextFixture {
 
         Options options = new Options(testFramework, jdkVersion)
         Features features = getFeatures(featureNames, options, type)
-
+        String grailsVersion = VersionInfo.grailsVersion
         GradleBuild build = gradleBuild(options, features, project, type)
-        return buildSrcBuildGradle.template(type, project, features, 
build).render().toString()
+        return buildSrcBuildGradle.template(type, project, features, build, 
grailsVersion).render().toString()
     }
 
     private GradleBuildCreator getGradleDependencyResolver() {

Reply via email to