我有两个分支:主和测试。当我推送到master分支时,我的代码由gitlab-ci部署到第一台服务器。每当我推送到测试分支时,我都希望部署到其他服务器。使用Gitlab CI可以做到吗?
我的 gitlab-ci.yml :
maven_build:
script:
- mvn install
- /opt/payara41/bin/./asadmin --passwordfile /home/asadminpass --user admin undeploy myApplication-ear-1.0-SNAPSHOT
- sudo /etc/init.d/glassfish restart
- /opt/payara41/bin/./asadmin --passwordfile /home/asadminpass --host localhost --user admin deploy --force /home/gitlab-runner/builds/10b25461/0/myapp/myAppPrototype/myApp-ear/target/myApplication-SNAPSHOT.ear
only:
- master
最佳答案
您使用only:
在正确的轨道上。
只需创建两个不同的步骤,一个步骤使用only: master
,另一个步骤使用only: test
。
更改script:
以部署到其他服务器。
deploy_master:
script:
- <script to deploy to master server>
only:
- master
deploy_test:
script:
- <script to deploy to test server>
only:
- test
关于continuous-integration - Gitlab CI多个分支,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49569253/