プログラムを中心とした個人的なメモ用のブログです。 タイトルは迷走中。
内容の保証はできませんのであしからずご了承ください。

2017/12/18

GitLab Runner を Windows で動かす

update2017/12/25 event_note2017/12/18 2:28

以前 Docker を使って gitlab-runner をインストールしましたが、業務上 Windows 上で gitlab-runner を動かしたいことがあったので、Windows に gitlab-runner をインストールしました。

基本的に以下の公式ページで全て解説されています。

環境

  • gitlab-runner 10.2.0

ホストは以下の2つで試しました。

  • Windows 7 Professional (32 bit)
  • Windows 10 Pro (64 bit)

ダウンロード

公式サイトからダウンロードできます。

ダウンロードしたら適当なフォルダに配置します。
今回は公式に合わせて C:\GitLab-Runner に配置しました。

配置したらファイル名を gitlab-runner.exe にリネームします。

環境変数の設定

環境変数の PATHC:\GitLab-Runner を追加します。
これでコマンドプロンプトから gitlab-runner コマンドが使えるようになります。

インストール

まずはコマンドプロンプトを管理者として起動します。 Win キーを押し、cmd を検索し、右クリックで [管理者として実行] を選択します。

以下のコマンドを入力して Windows サービスとして gitlab-runner を動作させます。

> gitlab-runner install
> gitlab-runner start

しかし、これだと root で実行されてしまうため、実際に GitLab CI として動作させるときにコマンドが実行されなかったりしました。
なので、ユーザーを指定してインストールします。

こちらの記事にあるとおり、ユーザー名を指定すると上手くいかないので、パスワードだけ指定し、現在ログイン中のユーザーでインストールします。

> gitlab-runner install --password パスワード
> gitlab-runner start

しかし、私の環境では %USERPROFILE% などのパスが root のままだったので、以下の設定を行いました。

  • [コントロールパネル] > [管理ツール] > [サービス] を起動
  • 一覧から gitlab-runner を探し、右クリックしてプロパティを選択
  • [ログオン] タブで [アカウント] を選択し、ユーザーアカウントを入力
  • [サービス] の画面で gitlab-runner を右クリックして再起動する

GitLab への登録

gitlab-runner のインストールが完了したら、GitLab にタスクランナーとして登録します。
基本的には Linux の場合と同様ですが、executor は shell を指定します。
あとは description や tag で Windows であることがわかるようにするくらいですね。

>gitlab-runner register

Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com )
https://gitlab.com

Please enter the gitlab-ci token for this runner
xxx

Please enter the gitlab-ci description for this runner
[hostame] windows

Please enter the gitlab-ci tags for this runner (comma separated):
windows

Whether to run untagged jobs [true/false]:
[false]: true

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

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

設定が完了したら GitLab の [Admin Area] > [Overview] > [Runners] でランナーが登録されていることを確認します。

アンインストール

gitlab-runner stop
gitlab-runner uninstall

最後に GitLab-Runner のフォルダを削除すれば OK です。

参考 URL