我正在跑步
mvn release:prepare -Dusername=myuser -Dpassword=mypassword
并查看输出中的行:
[INFO] Executing: cmd.exe /X /C "git push https://myuser:********@myserver.com:8081/scm/project/project.git refs/heads/master:refs/heads/master"
但如果由于某种原因导致git push
失败(例如我输入密码时出错),那么我会在日志中看到
[ERROR] fatal: unable to access 'https://myuser:mypassword@myserver.com:8081/scm/project/project.git/': SSL certificate problem: self signed certificate in certificate chain
所以我看到了PLAINTEXT密码。当我在Teamcity上使用此步骤时,如果构建失败,其他人可以看到我的密码时会导致安全问题。 我在Linux和Windows机器上都试过了。
我使用的是maven-release-plugin版本2.5.3。
有人知道如何解决它吗?
答案 0 :(得分:3)
在发布插件中使用另一个git提供程序。切换到另一个git服务器时我遇到了同样的问题。突然,即使没有错误,Jenkins密码也会显示在构建日志中。也许git服务器使用不同的身份验证方案。
这对我有用:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.5.3</version>
<configuration>
<providerImplementations>
<git>jgit</git>
</providerImplementations>
</configuration>
<dependencies>
<dependency>
<groupId>org.apache.maven.scm</groupId>
<artifactId>maven-scm-provider-jgit</artifactId>
<version>1.9.5</version>
</dependency>
</dependencies>
</plugin>
根据this,这个问题大约在6个月前修复。