[release/3.6] 更新 Jenkins CI 服务器的发布模型#4582
Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR updates the Jenkins CI server's release model for HMCL (Hello Minecraft! Launcher) by introducing a new project configuration structure and reorganizing the CI pipeline setup.
- Adds project configuration properties for version management
- Reorganizes Jenkins configuration files into separate dev and stable pipelines
- Refactors version numbering logic to support different build types (dev, stable, unofficial)
Reviewed Changes
Copilot reviewed 10 out of 11 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| config/project.properties | Defines project version root configuration |
| config/jenkins/stable/Jenkinsfile | Jenkins pipeline configuration for stable releases |
| config/jenkins/dev/Jenkinsfile | Jenkins pipeline configuration for development releases |
| config/jenkins/config-jenkins.sh | Gradle wrapper configuration script for Jenkins |
| config-jenkins.sh | Removed old Jenkins configuration script |
| buildSrc/src/main/java/org/jackhuang/hmcl/gradle/utils/PropertiesUtils.java | Utility class for loading properties files |
| buildSrc/src/main/java/org/jackhuang/hmcl/gradle/ci/JenkinsUtils.java | Utility class for Jenkins environment detection |
| buildSrc/src/main/java/org/jackhuang/hmcl/gradle/ci/GitHubActionUtils.java | Utility class for GitHub Actions environment detection |
| buildSrc/build.gradle.kts | Updated to support custom Maven repository configuration |
| HMCL/build.gradle.kts | Refactored version logic and build configuration |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| #!/usr/bin/env bash | ||
|
|
||
| sed -i 's,//services.gradle.org/distributions/,//mirrors.cloud.tencent.com/gradle/,g' "$PWD/gradle/wrapper/gradle-wrapper.properties" | ||
|
|
There was a problem hiding this comment.
[nitpick] The script ends with an empty line after the sed command. Consider removing the trailing empty line for cleaner formatting.
| val curseForgeApiKey = System.getenv("CURSEFORGE_API_KEY") ?: "" | ||
|
|
||
| val launcherExe = System.getenv("HMCL_LAUNCHER_EXE") | ||
| val launcherExe = System.getenv("HMCL_LAUNCHER_EXE") ?: "" |
There was a problem hiding this comment.
[nitpick] The variable launcherExe is assigned a default empty string but later checked with isBlank() and isNotBlank(). Consider using a nullable type and checking for null instead, or document why empty string is preferred over null.
#4559