当前,我们公司正在为B2B客户创建单独的软件。
某些应用程序可以用于多个客户。
通常,我们可以在云中托管应用程序,并使用Docker部署所有内容。 为此,运行GitLab管道并进行部署等就可以了。
现在,我们有了一些依靠外部安装的客户。
由于其中一些仍使用Windows Server(2008 tho),因此我无法在此处安装适当的Docker环境,因此我们需要安装Apache Tomcat并在tomcat中运行应用程序。
问题:如何处理?我需要一个管道来创建docker映像和war文件。 只需创建两个完全独立的管道? 在一个管道中处理所有事情?
我们当前用于.war的gitlab-ci.yml文件
image: maven:latest
variables:
MAVEN_CLI_OPTS: "-s settings.xml -q -B"
MAVEN_OPTS: "-Dmaven.repo.local=.m2/repository"
cache:
paths:
- .m2/repository/
- target/
stages:
- build
- test
- deploy
build:
stage: build
script:
- mvn $MAVEN_CLI_OPTS compile
test:
stage: test
script:
- mvn $MAVEN_CLI_OPTS test
install:
stage: deploy
script:
- mvn $MAVEN_CLI_OPTS install
artifacts:
name: "datahub-$CI_COMMIT_REF_SLUG"
paths:
- target/*.war
答案 0 :(得分:1)
最好使用单独的传递管道:您正在处理两个非常安装的过程,并且需要确保给定客户端正在运行哪个过程。
拥有两个单独的GitLab管道可以使所述客户选择合适的管道。