Allows remote command execution using ssh

Lets you execute remote commands via ssh using username/password or ssh-agent. If one of the commands in command-array returns non 0, it fails.

Supported platforms ios, android, mac
Author @hjanuschka

1 Example

  host: "",
  username: "root",
  commands: [
    "echo 1 > /tmp/file1"


Key Description Default
username Username
password Password
host Hostname
port Port 22
commands Commands
log Log commands and output true

* = default value is dependent on the user's system

Lane Variables

Actions can communicate with each other using a shared hash lane_context, that can be accessed in other actions, plugins or your lanes: lane_context[SharedValues:XYZ]. The ssh action generates the following Lane Variables:

SharedValue Description
SharedValues::SSH_STDOUT_VALUE Holds the standard output of all commands
SharedValues::SSH_STDERR_VALUE Holds the standard error of all commands

To get more information check the Lanes documentation.


To show the documentation in your terminal, run

fastlane action ssh


It is recommended to add the above action into your Fastfile, however sometimes you might want to run one-offs. To do so, you can run the following command from your terminal

fastlane run ssh

To pass parameters, make use of the : symbol, for example

fastlane run ssh parameter1:"value1" parameter2:"value2"

It's important to note that the CLI supports primitive types like integers, floats, booleans, and strings. Arrays can be passed as a comma delimited string (e.g. param:"1,2,3"). Hashes are not currently supported.

It is recommended to add all fastlane actions you use to your Fastfile.

Source code

This action, just like the rest of fastlane, is fully open source, view the source code on GitHub

Back to actions