사용자 도구

사이트 도구


nexus

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
마지막 판 양쪽 다음 판
nexus [2015/09/15 11:26]
kwon37xi [설정시 주의점]
nexus [2019/06/12 15:21]
kwon37xi
줄 46: 줄 46:
 </code> </code>
 아때 Nexus 리포지토리에서 해당 아티팩트를 선택하고 **Rebuild Metadata**를 했더니 정상으로 변경되었다. 아때 Nexus 리포지토리에서 해당 아티팩트를 선택하고 **Rebuild Metadata**를 했더니 정상으로 변경되었다.
 +
 +===== Nexus v2 Rest API =====
 +  * [[http://jagadesh4java.blogspot.com/2016/09/nexus-rest-api.html|My Technical Works: Nexus Rest API]]
 +  * [[network:httpie|HTTPie]] 기반 예제. 인증 옵션은 상황에 따라 다름
 +  * [[https://gist.github.com/cedricwalter/e7739aab3d370ef83f1a13b8322e50be|Sonatype NEXUS 2 has a rest API :-) but NEXUS 3 has none/not ready, the following simulate curl/wget call]]
 +  * **LATEST** 버전 체크 API 가 인덱스 갱신이 느린지 정상 작동하지 않음.
 +    * 차라리 https://stackoverflow.com/a/40378096/1051402 이 방식이 작동함
 +<code sh>
 +# maven-metadata.xml URL을 group/artifact 에 따라 달라짐
 +wget -O - -o /dev/null https://repo1.maven.org/maven2/org/brutusin/wava/maven-metadata.xml | grep -Po '(?<=<version>)([0-9\.]+(-SNAPSHOT)?)' | sort --version-sort -r| head -n 1
 +# 혹은 curl 로
 +curl -s https://repo1.maven.org/maven2/org/brutusin/wava/maven-metadata.xml | grep -Po '(?<=<version>)([0-9\.]+(-SNAPSHOT)?)' | sort --version-sort -r| head -n 1
 +
 +last_version=$(wget -O - -o /dev/null http://nexus.myrepo/content/repositories/releases/myjar/maven-metadata.xml | grep -Po '(?<=<version>)([0-9\.]+(-SNAPSHOT)?)' |
 +sort --version-sort -r| head -n 1)
 +
 +# snapshot 의 최신 빌드를 확인하려면 - last_version 을 안다고 했을 때
 +curl -s "https://repo1.maven.org/maven2/org/brutusin/wava/${last_version}-SNAPSHOT/maven-metadata.xml" | grep -Po '(?<=<value>)([0-9\.\-]+)' | sort --version-sort -r | head -n 1
 +
 +</code>
 +
 +<code sh>
 +# 서버 상태
 +http -a admin:admin123 -v "http://[서버]/service/local/status"
 +
 +# 최신버전. r=리포지토리ID, g=그룹명, a=아티팩트ID, e=jar|war 등. 잘 작동안함.
 +http -a admin:admin123 "http://[서버]/service/local/artifact/maven/content?r=repoId&g=groupName&a=art&e=jar&v=LATEST"
 +
 +# curl 잘 작동안함
 +curl -u "admin:admin123 http://[서버]/service/local/artifact/maven/content?r=repoId&g=groupName&a=art&e=jar&v=LATEST" -o art.jar
 +</code>
  
nexus.txt · 마지막으로 수정됨: 2019/06/12 15:35 저자 kwon37xi