Reduce time spend in configuration phase (#1528)

Do not add scm-packaging modules to every build.
These modules drastically increase the time Gradle spends in the configuration phase.
To build a distribution of SCM-Manager pass -Pdistribution.
Upgrade Gradle to 6.8.2.
This commit is contained in:
Sebastian Sdorra
2021-02-08 10:48:21 +01:00
committed by GitHub
parent c0fbeeb7a4
commit b3caa607cf
4 changed files with 29 additions and 9 deletions

2
Jenkinsfile vendored
View File

@@ -96,7 +96,7 @@ pipeline {
}
steps {
withPublishEnivronment {
gradle "publish"
gradle "-Pdistribution publish"
}
}
}

View File

@@ -107,6 +107,20 @@ Then you can attach a debugger on port 5005.
The port can be changed by using the `--debug-port` e.g.: `--debug-port=5006`.
If you want to wait until a debugger is attached, before SCM-Manager starts you can use the `--debug-wait` option.
### Distribution
SCM-Manager provides various modules to deploy SCM-Manager on differnt platforms (e.g. Docker, Helm, RPM, DEB, Windows).
Those modules are not build by default.
To build the distribution modules specify the `distribution` property e.g.:
```bash
# on unix
./gradlew -Pdistribution distribution
# on windows
gradlew.bat -Pdistribution distribution
```
### Properties for publishing
The publishing process requires the following properties for authentication and signing.

View File

@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.2-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

View File

@@ -67,11 +67,17 @@ include 'scm-dao-xml'
include 'scm-webapp'
include 'scm-server'
include 'scm-it'
include 'scm-packaging:unix'
include 'scm-packaging:windows'
include 'scm-packaging:deb'
include 'scm-packaging:rpm'
include 'scm-packaging:docker'
include 'scm-packaging:helm'
include 'scm-packaging:release-yaml'
// Do not add scm-packaging modules to every build,
// These modules drastically increase the time Gradle spends in the configuration phase.
// To build a distribution of SCM-Manager you have to pass -Pdistribution
if (settings.hasProperty("distribution")) {
include 'scm-packaging:unix'
include 'scm-packaging:windows'
include 'scm-packaging:deb'
include 'scm-packaging:rpm'
include 'scm-packaging:docker'
include 'scm-packaging:helm'
include 'scm-packaging:release-yaml'
}