在GitLab流水线中,可以通过环境变量或者命令行参数来接收用户输入。以下是两种解决方法的示例代码:
stages:
- deploy
deploy:
stage: deploy
script:
- echo "请输入用户名:"
- read USERNAME
- echo "用户名为:$USERNAME"
- echo "请输入密码:"
- read -s PASSWORD
- echo "密码为:$PASSWORD"
environment:
name: production
url: https://example.com
在上面的例子中,read
命令用于接收用户输入,并将输入保存到USERNAME
和PASSWORD
环境变量中。然后,可以在后续的脚本中使用这些环境变量。
stages:
- deploy
deploy:
stage: deploy
script:
- echo "用户名为:$USERNAME"
- echo "密码为:$PASSWORD"
environment:
name: production
url: https://example.com
variables:
USERNAME: "$USERNAME"
PASSWORD: "$PASSWORD"
在上面的例子中,流水线定义了USERNAME
和PASSWORD
两个变量,并在脚本中使用它们。在执行流水线时,可以通过命令行参数来传递这些变量的值,例如:
gitlab-runner exec docker deploy --env "USERNAME=myusername" --env "PASSWORD=mypassword"
这样,USERNAME
和PASSWORD
变量的值就会被设置为myusername
和mypassword
。
下一篇:API中的值为未定义