在本地或在 CI 中构建时,如何在 Gradle 中的存储库之间切换



我想在本地或在 CI 中构建项目时在存储库之间切换。我在这里读到 https://docs.gitlab.com/ee/ci/variables/predefined_variables.html Gitlab 创建环境变量"CI"并想使用它。我接下来要做:

if (System.getenv('CI') != null) {
repositories {
println 'CI=' + System.getenv('CI')
mavenCentral()
maven {
url 'myrepo'
}
}
} else {
repositories {
println '*CI= ' + System.getenv('CI')
mavenCentral()
mavenLocal()
}
}

但是当我在 CI 中构建时,我看到 CI=null。如何根据我构建项目的位置正确定义存储库?

更新:我在gitlab-ci中使用kaniko。它在没有 kaniko 的项目中工作正常。

CI变量必须在gitlab-ci中使用--build-arg定义,并在项目中使用ARG指令定义Dockerfile:

Dockerfile:

ARG CI

Gitlab-ci:

build:
stage: build
script:
- /kaniko/executor
--build-arg CI="${CI}"

通过 ARG 指令,我告诉 Dockerfile 让 Docker 知道,它希望在构建过程中将一个名为 CI 的变量传递给它。和 --build-arg 设置值。

相关内容

  • 没有找到相关文章

最新更新