升级到Cloud Parent后Maven发布过程出错

时间:2019-05-30 18:23:15

标签: spring spring-cloud gitlab-ci maven-release-plugin

我的团队很久以前就开始使用Spring Cloud项目,我们拥有大量具有可配置CI配置的微服务。但是升级到云父服务器后,我们的构建开始失败。

要配置我们的微服务,我们有一个内部父级,其中包含一些默认配置,依赖项和插件。该父母正在使用spring-boot-starter-parent

  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.0.RELEASE</version>
    <relativePath/>
  </parent>

对于spring-cloud,我们定义了spring-cloud BOM依赖项:

  <dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-dependencies</artifactId>
    <version>${spring-cloud.version}</version>
  </dependency>

我们决定使用spring-cloud-starter-parent来简化某些依赖项版本管理。现在,我们升级了自己的父级以使用该父级:

  <parent>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-parent</artifactId>
    <version>Greenwich.RELEASE</version>
    <relativePath/>
  </parent>

现在,我们的发布过程中出现了一些奇怪的错误。以一个项目为例(一个简单的项目),我们为此CI(针对GitLab)进行了配置:

image: maven:3-jdk-8
variables:
  MAVEN_CLI_OPTS: "-s settings.xml --batch-mode --errors --show-version"

cache:
  paths:
  - .m2/repository

deploy:
  stage: deploy
  script:
    - git config --global user.name "Gitlab CI"
    - git config --global user.email "gitlab@email"
    - git checkout -B "$CI_BUILD_REF_NAME"
    - mvn $MAVEN_CLI_OPTS clean versions:use-releases release:prepare -Dusername=$USERNAME -Dpassword=$USER_TOKEN
    - mvn $MAVEN_CLI_OPTS -Darguments="-Dmaven.test.skip=true" clean release:perform -Dusername=$USERNAME -Dpassword=$USER_TOKEN
    - mvn $MAVEN_CLI_OPTS build-helper:remove-project-artifact

我们使用maven-release-plugin的此配置:

  <plugin>
    <artifactId>maven-release-plugin</artifactId>
    <version>2.5.3</version>
    <configuration>
      <tagNameFormat>v@{project.version}</tagNameFormat>
      <tagBase>${git-link}/tags</tagBase>
    </configuration>
  </plugin>

启动CI管道后,我们的构建完成并出现以下错误:

    149809 [INFO] 144003 [INFO] --- maven-site-plugin:3.7.1:deploy (default-deploy) @ service-utilities-parent ---
    149820 [INFO] 144014 [ERROR] 
    149820 [INFO] Unsupported protocol: 'scp' for site deployment to distributionManagement.site.url=scp://static.springframework.org/var/www/domains/springframework.org/static/htdocs/spring-cloud/docs/spring-cloud-starter-parent/Greenwich.RELEASE.
    149821 [INFO] Currently supported protocols are: http, https, file.
    149821 [INFO]     Protocols may be added through wagon providers.
    149821 [INFO]     For more information, see http://maven.apache.org/plugins/maven-site-plugin/examples/adding-deploy-protocol.html

我真的不知道发生了什么,因为我没有定义maven-site-plugin,而spring-cloud-starter-parent应该仅在pluginsManagement部分声明插件。

如果有人可以向我解释我没看到的内容,我将非常高兴。

谢谢。

0 个答案:

没有答案