2022년 1월 30일

GitHub Packages 을 이용한 자바 프로젝트 결과물 배포하기

GitHub 이용하는 개발자라면 다양한 (Doker, Maven, npm  등) 레파지토리에 배포를 허용하는 GitHub Packages 에 대하여 들어본적이 있을 것이다. GitHub Packages 를 이용하면 프로젝트 결과물 즉 패키지를 원하는 사람들과 공유할 수 있게된다. 여기에서는 GitHub 에 저장된 자바 프로젝트 결과물을 Maven 패키지로 배포해보았다.


Maven 배포를 위한 절차는 아래와 같다.

  1. 개인 인증토큰생성 (GitHub)
  2. 배포를 위한 MAVEN 설정 (개발 PC)
  3. 배포 (개발 PC)

개발 환경

  • JAVA 14.0.2
  • VisualStudio Code 1.63.2
  • HW : MacBook Pro 2019 macOS Monterey 12.1

인증 토큰 (PAT) 생성하기

Maven 레파지토리에 배포하려면 GitHub 에 본인을 인증을 할 수 있어야 한다. 이를 위해서 개인 접근 토큰(PAT)을 생성해야 하는데 아래와 같이  Setting > Developer settings 메뉴에서 토큰(PAT)을 생성할 수 있다. 



  1. Setting > Developer settings 메뉴 이동 
  2. Personal access tokens 선택
  3. Generate new token 버튼 클릭



write:packages 권한 부여 ( 자동으로 의존하는 read:packages, repo:* 권한들이 선택됨 ) 하고 토큰을 생성한다. 주의할 점은 페이지를 이동한 이후에는 다시 코드를 확인할 수 없기 때문에 생성된 코드는 반듯이 복사해두어야 한다. 


패키지 배포하기 - Maven 세팅

Maven 을 사용하여 빌드 결과물을 GitHub Packages 에 배포하기 위하여 아래와 같이 ~/.m2/settings.xml 설정에 토큰 (PAT) 정보를 설정해 주어야한다. 만일 setting.xml 파일이 존재하지 않는 경우 생성 해주어야 한다.

  1. servers tag 에 server tag 를 추가하고  깃 사용자 이름과 앞에서 생성된 PAT 토큰 값으로 비밀번호를 설정한다.
  2. repositories tag  에 패키지를 배포할 레파치토리 경로 추가. 


패키지 배포하기

GitHub 는 패키지 이름이 같은 존재하는 레파지토리에 패키지를 게시한다. com.example:test 패키지를 예를 들자면 GitHub 는 GitHub계정/test 이름의 레파지토리에 배포하게 된다.

 com.example
 test

패키지 배포는 프로젝트 pom.xm 파일에 distributionManagement 테그를 추가하고 deploy 명령을 실행하면 된다.

※ OWNER, REPOSITORY 값을 변경해주어야 한다.


   
     github
     GitHub OWNER Apache Maven Packages
     https://maven.pkg.github.com/OWNER/REPOSITORY
   



패키지 배포는 private 레파지토리의 경우 500MB 까지는 무료이지만 초과하는 경우 과금이 발생한다.



참고자료

댓글 없음:

댓글 쓰기