github.com/ssube/gitlab-ci-multi-runner@v1.2.1-0.20160607142738-b8d1285632e6/docs/executors/ssh.md (about) 1 # SSH 2 3 >**Note:** 4 The SSH executor supports only scripts generated in Bash and the caching feature 5 is currently not supported. 6 7 This is a simple executor that allows you to execute builds on a remote machine 8 by executing commands over SSH. 9 10 --- 11 12 <!-- START doctoc generated TOC please keep comment here to allow auto update --> 13 <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> 14 **Table of Contents** *generated with [DocToc](https://github.com/thlorenz/doctoc)* 15 16 - [Overview](#overview) 17 - [Security](#security) 18 19 <!-- END doctoc generated TOC please keep comment here to allow auto update --> 20 21 ## Overview 22 23 To use the SSH executor you need to specify `executor = "ssh"` under the 24 [`[runners.ssh]`][runners-ssh] section. For example: 25 26 ```toml 27 [[runners]] 28 executor = "ssh" 29 [runners.ssh] 30 host = "example.com" 31 port = "22" 32 user = "root" 33 password = "password" 34 identity_file = "/path/to/identity/file" 35 ``` 36 37 You can use `password` or `identity_file` or both to authenticate against the 38 server. GitLab Runner doesn't implicitly read `identity_file` from 39 `/home/user/.ssh/id_(rsa|dsa|ecdsa)`. The `identity_file` needs to be 40 explicitly specified. 41 42 The project's source is checked out to: 43 `~/builds/<short-token>/<concurrent-id>/<namespace>/<project-name>`. 44 45 Where: 46 47 - `<short-token>` is a shortened version of the Runner's token (first 8 letters) 48 - `<concurrent-id>` is a unique number, identifying the local job ID on the 49 particular Runner in context of the project 50 - `<namespace>` is the namespace where the project is stored on GitLab 51 - `<project-name>` is the name of the project as it is stored on GitLab 52 53 To overwrite the `~/builds` directory, specify the `builds_dir` options under 54 `[[runners]]` section in [`config.toml`][toml]. 55 56 ## Security 57 58 The SSH executor is susceptible to MITM attacks (man-in-the-middle), because of 59 the missing `StrictHostKeyChecking` option. This will be fixed in one of the 60 future releases. 61 62 [runners-ssh]: ..//configuration/advanced-configuration.md#the-runnersssh-section 63 [toml]: ../configuration/advanced-configuration.md