使用kaniko时无法访问build.gradle UPD:中的gitlab ci环境变量
我想获取gitlab环境变量并在build.gradle脚本中使用它。我在gitlab ci中定义了变量:使用kaniko时无法访问build.gradle UPD:中的gitlab ci环境变量,gradle,gitlab,environment-variables,gitlab-ci,Gradle,Gitlab,Environment Variables,Gitlab Ci,我想获取gitlab环境变量并在build.gradle脚本中使用它。我在gitlab ci中定义了变量: build: stage: build variables: TEST: "HELLO WORLD" script: - export build: stage: build script: - /kaniko/executor --build-arg TEST="HELLO WORLD" 此外,我还使用-export命令打印所
build:
stage: build
variables:
TEST: "HELLO WORLD"
script:
- export
build:
stage: build
script:
- /kaniko/executor
--build-arg TEST="HELLO WORLD"
此外,我还使用-export命令打印所有变量。我在gitlab作业控制台中看到了我的测试变量。但是当我试图在build.gradle中获取这个变量时,它是空的。下面是build.gradle代码片段:
if (System.getenv('TEST') != null) {
repositories {
println 'CI=' + System.getenv('CI')
println 'M- ' + System.getenv('MAVEN_REPO_USER')
println 'T- ' + System.getenv('TEST')
println 'CI_JOB_STAGE ' + System.getenv('CI_JOB_STAGE')
mavenCentral()
}
} else {
repositories {
println '*CI= ' + System.getenv('CI')
println '*MAven ' + System.getenv('MAVEN_REPO_USER')
println '* ' + System.getenv('CI_JOB_STAGE')
println 'T-+++ ' + System.getenv('TEST')
mavenCentral()
mavenLocal()
}
}
所有环境变量都打印为null,但在gradle试图打印它们之前,我在gitlab作业控制台中看到了所有这些变量,它们都是通过-export命令打印的。怎么了
更新:在ci gitlab中,我使用kaniko:-/kaniko/executor来获取变量,它必须在Dockerfile和gitlab ci中用ARG指令定义为build ARG。ARG指令设置用户传递给图像采集器的变量 Dockerfile:
ARG TEST
gitlab ci:
build:
stage: build
variables:
TEST: "HELLO WORLD"
script:
- export
build:
stage: build
script:
- /kaniko/executor
--build-arg TEST="HELLO WORLD"
“variables:”节不是获取变量所必需的,它必须在Dockerfile和gitlab ci中使用ARG指令定义为build ARG。ARG指令设置用户传递给图像采集器的变量 Dockerfile:
ARG TEST
gitlab ci:
build:
stage: build
variables:
TEST: "HELLO WORLD"
script:
- export
build:
stage: build
script:
- /kaniko/executor
--build-arg TEST="HELLO WORLD"
“变量:”部分不是必需的