본문 바로가기

git

gitlab package registry 생성 후 라이브러리 올리는법(gradle)

728x90
반응형

docs.gitlab.com/ee/user/packages/maven_repository/

 

Maven packages in the Package Repository | GitLab

Maven packages in the Package Repository Version history Introduced in GitLab Premium 11.3. Moved to GitLab Free in 13.3. Publish Maven artifacts in your project’s Package Registry. Then, install the packages whenever you need to use them as a dependency

docs.gitlab.com

 

충실하게 따라하면 된다.

 

gitlab에서 project를 하나 생성한다.

 

project를 생성하고 나면 Project명 밑에 Project ID가 있는데 나중에 쓰이니까 확인해둘 필요가 있다.

 

로컬에 maven과 gradle이 설치되어 있어야한다.

build.gradle에서 gitlab package registry에 파일을 올리고 받을 때 사용할 토큰을 발급받는다.

gitlab repository > Settings > Repository > Deploy Token 

 

Token은 생성할 때만 보이고 이후에는 토큰값을 확인할 수 없으므로 따로 저장해놔야 한다.

 

 

Token을 발급받은 후 gradle publish를 통해서 업로드할 수 있다.

 

plugins {
    id 'java'
    id 'maven-publish'
}


publishing {
    publications {
        library(MavenPublication) {
            from components.java
        }
    }
    repositories {
        maven {
            url "https://gitlab.example.com/api/v4/projects/<PROJECT_ID>/packages/maven"
            credentials(HttpHeaderCredentials) {
                name = "Private-Token"
                value = gitLabPrivateToken // the variable resides in ~/.gradle/gradle.properties
            }
            authentication {
                header(HttpHeaderAuthentication)
            }
        }
    }
}

 

project_id 부분에 gitlab에서 생성한 프로젝트의 id를 넣어줘야한다.

 

 

gitlab package에 있는 library를 가져다 쓸때 repositories 설정

repositories {
    maven {
        url "https://gitlab.example.com/api/v4/groups/<group>/-/packages/maven"
        name "GitLab"
        credentials(HttpHeaderCredentials) {
            name = 'Deploy-Token'
            value = gitLabPrivateToken
        }
        authentication {
            header(HttpHeaderAuthentication)
        }
    }
}
728x90
반응형