Skip to content

Commit cbf1e72

Browse files
committed
Divide spring-project-init.gradle into separate scripts
* The `spring-artifactory-init.gradle` deals now only with `artifactoryPublish` * The `next-dev-version-init.gradle` provides only `nextDevelopmentVersion` Gradle task
1 parent 876df4b commit cbf1e72

File tree

5 files changed

+30
-26
lines changed

5 files changed

+30
-26
lines changed

.github/workflows/spring-artifactory-gradle-release-staging.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ jobs:
6969
run: |
7070
jf gradlec --repo-deploy libs-staging-local
7171
72-
cp build/utils/spring-project-init.gradle $HOME/.gradle/init.d
72+
cp build/utils/*.gradle $HOME/.gradle/init.d
7373
7474
buildName=${{ github.event.repository.name }}-${{ inputs.releaseVersion }}
7575
buildNumber=${{ github.run_number }}

.github/workflows/spring-artifactory-gradle-snapshot.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,6 @@ jobs:
5555
5656
- name: Build and Publish
5757
run: |
58-
jf gradle clean build ${{ inputs.gradleTasks }} artifactoryPublish --init-script build/utils/spring-project-init.gradle
58+
jf gradle clean build ${{ inputs.gradleTasks }} artifactoryPublish --init-script build/utils/spring-artifactory-init.gradle.gradle
5959
jf rt build-publish
6060

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,8 +134,8 @@ https://github.com/artembilan/spring-github-workflows/blob/710bf1214450ffb9a4d3a
134134
## Gradle and Artifactory
135135

136136
Gradle projects must not manage `com.jfrog.artifactory` plugin anymore: the `jf gradlec` command sets up this plugin and respective tasks into a project using JFrog specific Gradle init script.
137-
In addition, the [spring-artifactory-gradle-snapshot.yml](.github/workflows/spring-artifactory-gradle-snapshot.yml) and [spring-artifactory-gradle-release-staging.yml](.github/workflows/spring-artifactory-gradle-release-staging.yml) add `spring-project-init.gradle` script to provide an `artifactory` plugin settings for artifacts publications.
137+
In addition, the [spring-artifactory-gradle-snapshot.yml](.github/workflows/spring-artifactory-gradle-snapshot.yml) and [spring-artifactory-gradle-release-staging.yml](.github/workflows/spring-artifactory-gradle-release-staging.yml) add `spring-artifactory-init.gradle` script to provide an `artifactory` plugin settings for artifacts publications.
138138

139-
The `spring-project-init.gradle` script also adds a `nextDevelopmentVersion` task which is used when release has been staged and job is ready to push `Next development version` commit.
139+
The `next-dev-version-init.gradle` script also adds a `nextDevelopmentVersion` task which is used when release has been staged and job is ready to push `Next development version` commit.
140140

141141
See more information in the [Reusing Workflows](https://docs.github.com/en/actions/using-workflows/reusing-workflows).

utils/next-dev-version-init.gradle

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
gradle.projectsLoaded {
2+
rootProject {
3+
// No need to have this task in project: only when we perform GHA
4+
tasks.register('nextDevelopmentVersion') {
5+
doLast {
6+
if (!project.version.endsWith('-SNAPSHOT')) {
7+
String nextDevelopmentVersion
8+
if (project.version.contains('-M') || project.version.contains('-RC')) {
9+
nextDevelopmentVersion = project.version - ~/(M|RC)\d+/ + 'SNAPSHOT'
10+
} else {
11+
def versionParts = project.version.tokenize('.')
12+
def major = versionParts[0]
13+
def minor = versionParts[1]
14+
def patch = versionParts[2] as int
15+
nextDevelopmentVersion = major + '.' + minor + '.' + (++patch) + '-SNAPSHOT'
16+
}
17+
18+
def gradleProperties = file('gradle.properties')
19+
def newProps = gradleProperties.text.replace(project.version, nextDevelopmentVersion)
20+
gradleProperties.text = newProps
21+
}
22+
}
23+
}
24+
}
25+
}

utils/spring-project-init.gradle renamed to utils/spring-artifactory-init.gradle

Lines changed: 1 addition & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ gradle.projectsLoaded {
22
rootProject {
33
allprojects {
44
afterEvaluate {
5+
// The artifactoryPublish task is added by the Gradle init script from JFrog CLI
56
if (tasks.findByName('artifactoryPublish')) {
67
tasks.named('artifactoryPublish') {
78
enabled(false)
@@ -33,27 +34,5 @@ gradle.projectsLoaded {
3334
}
3435
}
3536
}
36-
37-
// No need to have this task in project: only when we perform GHA
38-
tasks.register('nextDevelopmentVersion') {
39-
doLast {
40-
if (!project.version.endsWith('-SNAPSHOT')) {
41-
String nextDevelopmentVersion
42-
if (project.version.contains('-M') || project.version.contains('-RC')) {
43-
nextDevelopmentVersion = project.version - ~/(M|RC)\d+/ + 'SNAPSHOT'
44-
} else {
45-
def versionParts = project.version.tokenize('.')
46-
def major = versionParts[0]
47-
def minor = versionParts[1]
48-
def patch = versionParts[2] as int
49-
nextDevelopmentVersion = major + '.' + minor + '.' + (++patch) + '-SNAPSHOT'
50-
}
51-
52-
def gradleProperties = file('gradle.properties')
53-
def newProps = gradleProperties.text.replace(project.version, nextDevelopmentVersion)
54-
gradleProperties.text = newProps
55-
}
56-
}
57-
}
5837
}
5938
}

0 commit comments

Comments
 (0)