我试着用空手道的奈蒂罐子在一条gitlab-ci管道里。我正在绘制一个包含jar的图像,作为管道中的一个步骤。对于不安全的服务,我能够很好地执行测试。就像这样:
karate-test:
stage: acceptance-test
image:
name: registry.gitlab.opr.business.org/karate-universe:0.0.3
entrypoint: [ "" ]
script:
- java -jar /karate.jar -e dev src/test/karate/acceptance-test.feature -o /target/karate
environment:
name: Test
artifacts:
paths:
- /target/karate现在,我试图将凭据传递到安全服务的空手道功能中,但无法从jar接口中找到功能。
我试过像这样传递证书:
- java -jar /karate.jar -e dev src/test/karate/acceptance-test.feature -o /target/karate -Duser.password ${REQUEST_PASSWORD} -Duser.id ${REQUEST_USER}REQUEST_PASSWORD和REQUEST_USER是gitlab变量,我可以在gitlab中使用它们。
当我运行管道时,我得到:
Unmatched arguments [-Duser.password, -Duser.id]空手道Netty有能力像普通空手道那样传递用于空手道配置的变量吗?我不能把秘密保存在空手道配置文件本身。
发布于 2019-07-29 21:54:23
确保-Dfoo=bar部件在-jar选项之前,因为之后的所有内容都传递给了空手道,而不是-jar。
java -Dfoo=bar -Dbaz=ban -jar /karate.jar请注意,您还可以获得环境变量容易
java.lang.System.getenv('PATH')通常,人们以-D JVM选项的形式传递值。如果您对独立JAR有一些高级需求,请参见以下内容:https://stackoverflow.com/a/56458094/143475
https://stackoverflow.com/questions/57261760
复制相似问题