我已经为application.properties
设置了以下内容:
spring.datasource.url=jdbc:postgresql://${SERVER_IP}/database
spring.datasource.username=${POSTGRES_USER}
spring.datasource.password=${POSTGRES_PASSWORD}
spring.datasource.driver-class-name=org.postgresql.Driver
要能够打包应用程序,必须将环境变量传递给Maven命令,如下所示:
mvn -DSERVER_IP=111.111.11.1111:5432 -DPOSTGRES_USER=user -DPOSTGRES_PASSWORD="password" package
在.gitlab-ci.yml中,我需要传递这些环境变量
maven-build:
image: maven:3-jdk-8
stage: build
script: "mvn {what should I write here?} package -B"
artifacts:
paths:
- target/*.jar
我了解到,首先必须在Gitlab的设置中定义环境变量,但是我应该如何在.gitlab-ci.yml中引用这些环境变量?
答案 0 :(得分:0)
在Project -> Settings -> CI/CD -> Environment Variables
中设置所需的环境变量。
然后在.gitlab-ci.yml
中像这样reference:
script: mvn -DSERVER_IP=$SERVER_IP -DPOSTGRES_USER=$POSTGRES_USER -DPOSTGRES_PASSWORD=$POSTGRES_PASSWORD package -B
注意:来自documentation:
重要提示:请注意,变量不会被屏蔽,其值也不会被屏蔽 如果明确要求,可以在作业日志中显示。如果你的 项目是公共的还是内部的,您可以将管道设置为私有 您的project’s Pipelines settings。关注所讨论的话题 #13784用于屏蔽变量。