올챙이시절 기록소

GitLab-CI Runner 소개, 설치, 등록편 on CentOS, Windows (빌드 & 패키징 & 테스트 자동화) 본문

2016/5월

GitLab-CI Runner 소개, 설치, 등록편 on CentOS, Windows (빌드 & 패키징 & 테스트 자동화)

allroundplayer 2017. 9. 28. 13:42

ref : Install Gitlab Runner


이 글은 Gitlab CI - Runner설치에 대해 다룬다


* 8.x 버전당시 Gitlab CI 아키텍쳐


Runner는 CI시스템에서 우리가 명세한 작업을 수행하고 결과를 Gitlab으로 피드백하는 녀석이다


( GitLab Runner is the open source project that is used to run your jobs and send the results back to GitLab. It is used in conjunction with GitLab CI, the open-source continuous integration service included with GitLab that coordinates the jobs.)


GitLab CI는 8.x 버전부터 GITLAB과 통합되어 나오기 시작했으며


프로젝트 디렉토리의 루트 경로에 .gitlab-ci.yml 파일을 추가하는 것으로 활성화된다


Since version 8.0, GitLab CE/EE and GitLab CI are a single product.

Starting from version 8.0, GitLab Continuous Integration (CI) is fully integrated into GitLab itself and is enabled by default on all projects.

git add .gitlab-ci.yml

git commit -m "Add .gitlab-ci.yml"

git push origin master


Runner는 아래의 환경에 설치가능하다

Install using GitLab's repository for Debian/Ubuntu/CentOS/RedHat (preferred) Install on GNU/Linux manually Install on macOS Install on Windows Install as a Docker service Install in Auto-scaling mode using Docker machine Install on FreeBSD Install on Kubernetes Install the nightly binary manually


* HP-UX, AIX, Sun Sparc 환경에 설치불가, 하지만 우회경로가 있다 (이후 글에서 다룰예정)




CentOS와 Windows에 어떻게 설치하는지 알려드리고


( 실행방식은 shell로 )


먼저 CentOS 편이다


* 매우쉬움


설치파일은 Yum저장소를 추가하고 받는 것으로 해결된다

curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh | sudo bash

sudo yum -y install gitlab-runner


* Gitlab Server가 버전 10이하라면

curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-ci-multi-runner/script.rpm.sh | sudo bash

sudo yum -y install gitlab-ci-multi-runner


0

기존에 설치된게 있어서


9.3.0-1 버전이 10.0.0-1로 업그레이드되었다


( 설치랑 업그레이드는 수행 스크립트가 같다 )


설치완료


이제 등록을 해야한다



gitlab-runner register


엔터


0


Gitlab에서 해당프로젝트의 Runner Setting 메뉴에 들어가


1) URL과 


2) Token을 


확인하고 차례대로 입력한다


( 버전이 올라감에 따라 UI구성이 달라질 수 있으나 대동소이하다 )

 

0


 제일 중요한 건 Tag이다 Runner를 지명할 때 쓰이니 이름을 잘 짓자


3) Description

4)  Tags

5) Whether to run untagged builds [true/false]: 

6) Whether to lock the Runner to current project [true/false]:

7) Please enter the executor: ssh, virtualbox, docker+machine, docker, docker-ssh, parallels, shell, docker-ssh+machine, kubernetes:


설치와 설정이 완료되었다

해당내용은  " /etc/gitlab-runner/config.toml " 여기에 저장된다

0


한 번 실행 해보자

gitlab-runner start

백그라운드로 돌아간다 ( 확인하려면 gitlab-runner status )

( 현재세션으로 출력하려면 gitlab-runner run )




간단하게 동작하는지 테스트를 해봅시다


0


.gitlab-ci.yml 파일을 추가하고


동시에 commit을 한 번 해줍니다


stages:

- test


lets_test:

  stage: test

  script:

  - echo hi

  - cd /home/gitlab-runner

  - touch devqa

  tags:

  - devqa90

.

0


pipeline 내역을 확인해봅니다


Pass란 글씨가 보입니다


0


cd /home/gitlab-runner

touch devqa


구문이 수행되었는지 확인합니다



Build & Verification Check & Test & Deploy를 이런식으로 작성하면 됩니다




여기서부터는 윈도우 Gitlab Runner 설치편입니다



파일부터 구해봅시다


Gitlab-Runner DownLoad (Win)



0


받고나면 CMD창을 하나 열어줍니다



0


Gitlab에서 해당프로젝트의 Runner Setting 메뉴에 들어가


Gitlab 서버의 URL과


Token 값을 입력해줍니다



0

 역시 중요한 건 Tag이다 (Runner를 지명할 때 쓰이니 이름을 잘 짓자)


3) Description

4)  Tags

5) Whether to run untagged builds [true/false]: 

6) Whether to lock the Runner to current project [true/false]:

7) Please enter the executor: ssh, virtualbox, docker+machine, docker, docker-ssh, parallels, shell, docker-ssh+machine, kubernetes:


0

config.toml 파일이 하나 생깁니다


( 방금 설정한 내역들이 기록되어 있다 )



0


cmd에서 " gitlab-runner-windows-amd64.exe run "


실행하고


Gitlab에서 잘 등록 되어있는지 확인해봅니다


( Docker랑 같이 연계하는 것을 적어보려다 배경설명을 어디까지 해야하나 고민이라 일단 보류합니다 )

쉽죠~?

이상으로 글을 마칩니다~


Comments