SSH
これは SSH 経由でコマンドを実行することで、リモートマシン上でビルドを実行できるシンプルな Executor です。
SSH Executor を使用します。
SSH Executor を使用するには、[runners.ssh] セクションにexecutor = "ssh" を指定します。例えば
[[runners]]
executor = "ssh"
[runners.ssh]
host = "example.com"
port = "22"
user = "root"
password = "password"
identity_file = "/path/to/identity/file"
identity_file サーバーに対する認証には identity_file、password またはidentity_file その両方を identity_file使用できます。identity_file GitLab Runner identity_fileは/home/user/.ssh/id_(rsa|dsa|ecdsa) からidentity_file 暗黙的に読み込む identity_fileことはありません。identity_file は明示的に指定する必要があります。
プロジェクトのソースのチェックアウト先は、:~/builds/<short-token>/<concurrent-id>/<namespace>/<project-name>.
どこに:
-
<short-token>はランナートークンの短縮形(最初の8文字) -
<concurrent-id>はユニークな番号で、プロジェクトのコンテキストで特定のランナーのローカルジョブIDを識別します。 -
<namespace>はプロジェクトが GitLab に保存されている名前空間です。 -
<project-name>は GitLab に保存されているプロジェクトの名前です。
~/builds ディレクトリを上書きするには、config.tomlの[[runners]] セクションでbuilds_dir オプションを指定します。
ジョブのアーティファクトをアップロードする場合は、SSHで接続するホストにgitlab-runner をインストールしてください。
厳密なホスト鍵チェックの設定
GitLab 14.3で導入されました。
SSHStrictHostKeyChecking を有効にするには、[runners.ssh.disable_strict_host_key_checking] がfalse に設定されていることを確認してください。現在のデフォルトはtrue です。
GitLab 15.0以降では、デフォルト値はfalse 、つまりホスト鍵のチェックが必要です。