Jenkins에서 GitLab, GitHub과 같은 Git Repository와 연동하여 프로젝트를 관리할 수 있습니다. 그중 GitLab 프로젝트와 연동하기 위해서는 어떤 설정이 필요한지 알아보고, 간단히 Pipeline을 작성하여 구동시켜보는 것까지 해보도록 하겠습니다.
Project Access Tokens 생성
GitLab 서버와 연동하기 위한 Project Access Tokens이 필요하며 GitLab 프로젝트 관리 페이지에서 발급합니다.
GitLab 프로젝트의 Settings 메뉴에서 Access Tokens 메뉴를 선택합니다.
Token name과 Expiration date를 설정하고 Select scopes는 api를 선택 후 발급 버튼을 클립합니다.
발급한 Token은 복사 후 Jenkins에서 GitLab 서버를 등록할 때 사용합니다.
GitLab 서버 추가
Jenkins 관리 페이지에서 GitLab 서버를 추가해줍니다.
시스템 설정 페이지 하단에 있는 GitLab 설정에서 서버를 추가할 수 있습니다. GitLab 서버와 연동 시 Credentials이 필요하며 별도로 추가한 Credentials이 있다면 사용하고 없다면 추가 등록하기 위해 Add 버튼을 클릭합니다.
사전에 발급한 Project Access Tokens을 GitLab API token으로 설정하고 등록합니다.
설정이 완료되면 Test Connection 버튼을 클릭하여 정상적으로 Success 로그가 출력되는지 확인합니다.
Project Access Tokens 발급 후 해당 Token으로 GitLab 서버를 추가하는 작업을 완료하였습니다.
[Jenkins] Jenkins Pipeline environment variables 사용 및 전체 리스트 출력하기
Jenkins Pipeline은 전역 변수인 environment variables를 통해 Jenkins에서 제공하는 다양한 환경 변수를 사용할 수 있습니다. 해당 정보를 통해 빌드 또는 테스트를 다르게 구성하도록 설정할 수 있으며 CI 시 필요한 정보에도 사용할 수 있습니다.
environment variables 사용 및 전체 리스트를 출력하는 방법을 알아봅시다.
environment variables 사용하기
environment variables를 사용하기 위해서는 env.을 통해 사용하고자 하는 환경 변수를 뒤에 선언해줍니다. 테스트를 위해 JOB_NAME 항목과 BUILD_ID 항목을 출력하기 위한 pipeline을 작성해봤습니다.
Jenkins 서버가 내부 네트워크망에 있어 별도의 프록시 서버를 통해서만 외부 접근이 가능할 경우 외부에 접속하여 바로 설치할 수 있는 Plugin 조회 및 설치가 불가합니다. HTTP 프록시를 설정하고 프록시 서버를 통해 Plugin 설치가 가능하도록 Plugin 설정을 알아봅시다.
Jenkins Plugin 설정 변경
Jenkins 관리 -> System Configuration -> 플러그인 관리 메뉴에 접속하여 Plugin 관련 설정을 추가합니다.
Advanced Setting 메뉴에서 HTTP 프록시 설정의 서버 항목과 포트 항목을 프록시 서버 정보로 설정한 후 Submit 버튼을 클릭하여 적용합니다.
HTTP 프록시 설정을 추가 완료하였으므로 Available Plugins 메뉴에서 설치하고자하는 Plugin 조회 및 설치가 가능합니다.
Jenkins Pulugin HTTP 프록시 설정을 추가하는 작업을 완료하였습니다...! 끝...!