우리는 Artifactory 서버에 출시 된 아티팩트를 배포하기 위해 M2 Release Plugin을 얻으려고합니다. 우리 pom.xml
의 구성은 메이븐이 그것을 우리에게 알려줍니다, 우리가 지금 젠킨스에 릴리스 빌드를 시작하면 Config File Provide Plugin 우리가 적절한 자격 증명Jenkins의 M2 Release Plugin이 Artifactory에 인증되지 않는 이유는 무엇입니까?
<settings>
<servers>
<server>
<id>artifactory</id>
<username>jenkins</username>
<password>secret!</password>
</server>
</servers>
</settings>
있는 글로벌 settings.xml
를 지정하여이
....
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.3.2</version>
</plugin>
....
<distributionManagement>
<repository>
<id>artifactory</id>
<url>http://example.com/artifactory/jenkins-release</url>
</repository>
</distributionManagement>
처럼 보인다 우리가 볼 수있는 서버 로그에서 artifactory
[INFO] [ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project example-maven-plugin: Failed to deploy artifacts: Could not transfer artifact com.example.maven.plugins:example-maven-plugin:jar:0.0.9 from/to artifactory (http://example.com/artifactory/jenkins-release): Failed to transfer file: http://example.com/artifactory/jenkins-release/com/example/maven/plugins/example-maven-plugin/0.0.9/example-maven-plugin-0.0.9.jar. Return code is: 401, ReasonPhrase:Unauthorized. -> [Help 1]
에서 HTTP 401을받은 사용자 "non_authenticated_user"내가 이 URL에 HTTP PUT 요청을하려고합니다.
Maven 또는 Jenkins에 몇 가지 구성이 있습니까? 자격 증명이 정확하고 내 로컬 컴퓨터의 Jenkins에서 settings.xml을 사용하면 모든 것이 예상대로 작동합니다.
Jenkins가 제공 한 설정 파일을 선택하지 않은 것 같습니다. 이유와 관련없는 주제에 대해 잘 모르시겠습니까? [Artifactory Jenkins plugin] (https://wiki.jenkins-ci.org/display/JENKINS/Artifactory+Plugin)을 사용하지 않으시겠습니까? 이 문제를 완전히 해결하고 출시 기능이 내장되어 있습니다. – JBaruch
그게 우리가 생각한 것입니다, 아마도 플러그인의 버그지만, 나는 우리가 아무것도 놓치지 않았 음을 확인하고 싶었습니다. 우리는이 플러그인을 사용하지만 SNAPSHOT 빌드의 자동 배포에만 사용합니다. 우리는 Jenkins M2 Release Plugin의 일부 기능이 부족한이 플러그인의 릴리스 관리를 발견했습니다 (예 : SCM 작성을위한 별도의 자격 증명, 릴리스 빌드/비 릴리스 buids 간의 차별화 ...) – moxn
릴리스 논리를 완전히 사용자 정의 할 수 있습니다 [staging user plugin] (http://www.jfrog.com/confluence/display/RTF/User+Plugins#UserPlugins-Staging)을 사용하십시오. 몇 가지 예가 [our GitHub] (https://github.com/JFrogDev/artifactory-user-plugins) – JBaruch