MacOSにGitLab Runnerをインストールします。
GitLab RunnerはMacOSにインストールしてアップデートすることができます。
インストール
MacOSにGitLab Runnerをインストールするには2つの方法があります:
- 手動インストール:この方法はGitLabによって公式にサポートされ、推奨されています。
- Homebrewインストール手動インストールの代わりにHomebrewでインストールします。
手動インストール(公式)
-
お使いのシステムのバイナリをダウンロードしてください:
sudo curl --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-darwin-amd64
Bleeding Edgeで説明されているように、利用可能なすべてのバージョンのバイナリをダウンロードすることができます。
-
実行権限を与えてください:
sudo chmod +x /usr/local/bin/gitlab-runner
残りのコマンドはRunnerを実行するユーザーとして実行されます。
- ランナーの登録
-
Runnerをサービスとしてインストールし、起動してください:
cd ~ gitlab-runner install gitlab-runner start
Runner がインストールされ、システム再起動後に実行されます。
Homebrewインストール(代替)
GitLabをインストールするためのHomebrewフォーミュラが用意されています。
GitLab RunnerをHomebrewを使ってインストールするには:
-
GitLab Runnerをインストールします。
brew install gitlab-runner
-
Runnerをサービスとしてインストールし、起動してください。
brew services start gitlab-runner
Runnerはインストールされ、実行されています。
MacOSでの制限事項
注意:サービスは、現在のユーザーとして GUI インターフェイスを実行してターミナルからインストールする必要があります。 その場合のみ、サービスを管理することができます。
現在、MacOSで動作することが証明されている唯一のモードは、ユーザーモードでサービスを実行することです。
このサービスはユーザーがログインしているときにのみ実行されるため、MacOSマシンで自動ログインを有効にする必要があります。
このサービスは、LaunchAgents
. LaunchAgents
NETの1つとして開始されます。 をLaunchAgents
使用する LaunchAgents
ことで、ビルドはUIインタラクションを行うことができ、iOSシミュレータ上での実行とテストが可能になります。
macOSにもLaunchDaemons
、完全にバックグラウンドで実行されるサービスがあることは注目に値します。 LaunchDaemons
これらはシステム起動時に実行されますが、LaunchAgents
のようにUIインタラクションにアクセスすることはできません。LaunchDaemon
としてRunnerのサービスを実行しようとすることはできますが、このオペレーションモードは現在サポートされていません。
~/Library/LaunchAgents/gitlab-runner.plist
ファイルを確認することで、Runnerがinstall
コマンド実行後にサービス設定ファイルを作成したことを確認できます。
Homebrewを使用してgit
をインストールした場合、/usr/local/etc/gitconfig
ファイルが追加されている可能性があります:
[credential]
helper = osxkeychain
gitconfig
これはGitにユーザー認証情報をキーチェーンにキャッシュするよう指示します。これは、あなたが望むものとは違うかもしれません:
git config --system --unset credential.helper
あるいは、GitLabユーザーのcredential.helper
を無効にすることもできます:
git config --global --add credential.helper ''
credential.helper
:
git config credential.helper
手動更新
-
サービスを停止します:
gitlab-runner stop
-
Runnerの実行ファイルを置き換えるバイナリをダウンロードしてください:
sudo curl -o /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-darwin-amd64
Bleeding Edgeで説明されているように、利用可能なすべてのバージョンのバイナリをダウンロードすることができます。
-
実行権限を与えてください:
sudo chmod +x /usr/local/bin/gitlab-runner
-
サービスを開始します:
gitlab-runner start
GitLab Runnerのよくある問題を説明したFAQセクションを必ずお読みください。
サービスファイルのアップグレード
LaunchAgent
の設定をアップグレードするには、サービスをアンインストールしてインストールする必要があります:
gitlab-runner uninstall
gitlab-runner install
gitlab-runner start
GitLab Runner Serviceでcodesignを使用します。
macOSにgitlab-runner
をhomebrewでインストールし、ビルドがcodesign
を呼び出す場合、<key>SessionCreate</key><true/>
を設定して、ユーザーのキーチェーンにアクセスできるようにする必要があるかもしれません。以下の例では、gitlab
ユーザーとしてビルドを実行し、そのユーザーによってインストールされた署名証明書にアクセスしてコード署名を行います:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>SessionCreate</key><true/>
<key>KeepAlive</key>
<dict>
<key>SuccessfulExit</key>
<false/>
</dict>
<key>RunAtLoad</key><true/>
<key>Disabled</key><false/>
<key>Label</key>
<string>com.gitlab.gitlab-runner</string>
<key>UserName</key>
<string>gitlab</string>
<key>GroupName</key>
<string>staff</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/opt/gitlab-runner/bin/gitlab-runner</string>
<string>run</string>
<string>--working-directory</string>
<string>/Users/gitlab/gitlab-runner</string>
<string>--config</string>
<string>/Users/gitlab/gitlab-runner/config.toml</string>
<string>--service</string>
<string>gitlab-runner</string>
<string>--syslog</string>
</array>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin</string>
</dict>
</dict>
</plist>