macOS 러너 설정
macOS 러너에서 CI/CD 작업을 실행하려면 다음 단계를 순서대로 완료하세요.
완료하면 GitLab 러너가 macOS 기기에서 실행되고 개별 러너가 작업을 처리할 준비가 됩니다.
- 시스템 셸을 Bash로 변경합니다.
- Homebrew, rbenv, 그리고 GitLab 러너를 설치합니다.
- rbenv를 구성하고 Ruby를 설치합니다.
- Xcode를 설치합니다.
- 러너를 등록합니다.
- CI/CD를 구성합니다.
사전 요구 사항
시작하기 전에:
- 최신 버전의 macOS를 설치하세요. 이 가이드는 11.4에서 개발되었습니다.
- 기기에 터미널 또는 SSH 액세스가 있는지 확인하세요.
시스템 셸을 Bash로 변경
새로운 macOS 버전은 기본 셸로 Zsh를 함께 제공합니다. 이를 Bash로 변경해야 합니다.
-
기기에 연결하고 기본 셸을 확인합니다:
echo $SHELL
-
결과가
/bin/bash
가 아니라면 다음과 같이 실행하여 셸을 변경합니다:chsh -s /bin/bash
- 암호를 입력합니다.
- 터미널을 다시 시작하거나 SSH를 사용하여 재연결합니다.
- 다시
echo $SHELL
을 실행합니다. 결과는/bin/bash
여야 합니다.
Homebrew, rbenv, 그리고 GitLab 러너 설치
러너는 기기에 연결하고 작업을 실행하기 위해 특정 환경 옵션이 필요합니다.
-
Homebrew 패키지 관리자를 설치합니다:
/bin/bash -c "$(curl "https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh")"
-
Ruby 버전 관리자인
rbenv
와 GitLab 러너를 설정합니다:brew install rbenv gitlab-runner brew services start gitlab-runner
rbenv 구성 및 Ruby 설치
이제 rbenv를 구성하고 Ruby를 설치합니다.
-
rbenv를 Bash 환경에 추가합니다:
echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.bash_profile source ~/.bash_profile
-
Ruby 3.3.x를 설치하고 기기의 전역 기본값으로 설정합니다:
rbenv install 3.3.4 rbenv global 3.3.4
Xcode 설치
이제 Xcode를 설치하고 구성합니다.
-
다음 위치 중 하나로 이동하여 Xcode를 설치합니다:
- Apple App Store.
- Apple 개발자 포털.
-
xcode-install
. 이 프로젝트는 명령줄에서 다양한 Apple 종속성을 다운로드하는 작업을 쉽게 만드는 것을 목표로 합니다.
-
라이센스에 동의하고 권장 추가 구성 요소를 설치합니다. Xcode를 열고 프롬프트에 따라 진행하거나 터미널에서 다음 명령을 실행하여 수행할 수 있습니다:
sudo xcodebuild -runFirstLaunch
-
활성 개발자 디렉토리를 업데이트하여 빌드 중에 Xcode가 올바른 명령줄 도구를 로드하도록합니다:
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
프로젝트 러너 생성 및 등록
이제 프로젝트 러너를 생성하고 등록하세요.
러너를 생성하고 등록하면:
- GitLab에서 태그
macos
를 추가하여 macOS 러너에서 macOS 작업을 실행합니다. - 명령줄에서 executor로
shell
을 선택합니다.
러너를 등록하고 나면 명령줄에 성공 메시지가 표시됩니다:
> 러너가 성공적으로 등록되었습니다. 실행하려면 실행해도 되지만 이미 실행 중이라면 구성이 자동으로 다시 로드됩니다!
러너를 보려면:
- 왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트 또는 그룹을 찾습니다.
- 설정 > CI/CD를 선택합니다.
- 러너를 확장합니다.
CI/CD 구성
GitLab 프로젝트에서 CI/CD를 구성하고 빌드를 시작하세요. 다음 샘플 .gitlab-ci.yml
파일을 사용할 수 있습니다.
태그를 등록한 러너와 일치하도록 주목하세요.
stages:
- build
- test
variables:
LANG: "en_US.UTF-8"
before_script:
- gem install bundler
- bundle install
- gem install cocoapods
- pod install
build:
stage: build
script:
- bundle exec fastlane build
tags:
- macos
test:
stage: test
script:
- bundle exec fastlane test
tags:
- macos
이제 macOS 러너가 프로젝트를 빌드할 것입니다.