Using the SSH task in Bamboo

Still need help?

The Atlassian Community is here for you.

Ask the community

You can use the Bamboo SSH task to execute a SSH command on a remote computer as part of a Bamboo job.

You can use the SSH task to do such things as:

  • Calling database migration scripts 
  • Starting and stopping services
  • Anything you can run on the command line on a remote machine

See  Configuring a deployment task for an overview of Bamboo deployment tasks.

To configure an SSH task:

  1. Navigate to the Tasks configuration tab for the job (this will be the default job if creating a new plan).
  2. Select the name of an existing SSH task, or select Add task > SSH Task to create a new task.
  3. Complete SSH task configuration settings:

    SettingDescription
    Task descriptionOptional description for the configured task.
    Disable this taskPrevent the task from running.
    Add condition to taskRun the task only when a certain condition is met.
    • Condition type (for SSH tasks, Variable is the only available option)
    • Variable name (the name of the Bamboo variable to base the condition on)
    • Condition (the conditional keyword):
      • exists
      • not exists
      • equals (exact value)
      • not equals (exact value)
      • matches (regular expression to match variable value)
    HostsComma-separated fully qualified domain names or IP addresses of the remote hosts.
    Authentication type
    Choose whether Bamboo should authenticate with the host using a Username and password or SSH private key, and then either provide custom credentials or select shared credentials.
    SSH command

    The shell command to execute on the remote host. You can only enter a single command here.

    You can configure a remote host to accept build-specific variables  sent from Bamboo as environment variables for use in shell scripts run by the SSH task.

  4. If you want Bamboo to verify the remote host fingerprint on connection, under Advanced options, select Verify remote host fingerprint on connect, and then paste the host fingerprint.

    tip/resting Created with Sketch.

    You can determine the fingerprint for a host by running the following command from a Unix terminal, where <HOSTNAME> is the fully-qualified domain name or IP address of the remote host:

    ssh-keygen -l -F <HOSTNAME>

    For example:

    ssh-keygen -l -F myhost.acme.com
  5. Select  Save .

Last modified on Oct 10, 2023

Was this helpful?

Yes
No
Provide feedback about this article
Powered by Confluence and Scroll Viewport.