我正在使用Travis-CI爲我正在開發的幾個Java開源項目提供持續集成構建。爲基於Maven的持續集成構建抑制GPG簽名(Travis CI)
通常情況下,它可以正常工作,但我在POM指定GPG簽名時遇到了問題,例如,
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
這使特拉維斯建立失敗 - 顯然是因爲它沒有提供一個密碼,同時運行mvn install
。一個例子見this build。
什麼是配置Maven和/或Travis跳過CI測試版本的GPG簽名的最佳方式,但是當我做適當的版本構建時仍然執行GPG簽名?
假設您使用的是發佈插件:而不是通過標誌使用激活,您可以將該配置文件添加到'releaseProfiles'插件設置中。 – ankon 2015-08-13 16:19:48
或者,您可以使用值爲「true」的激活屬性名稱「$ {env.TRAVIS}」。這是因爲Travis-CI容器與各種內置的環境變量(包括例如'TRAVIS = true'和'CI = true')混合在一起,Maven可以通過maven語法檢測環境變量'$ {env 。}'。這種方法具有不需要爲每個Maven命令添加系統屬性的好處,但仍然允許您模擬激活配置文件並在CI構建過程中自動激活配置文件。 –
2016-12-16 08:21:08