Remote access

Remote access is a feature that allows you to access a build machine via SSH (or screen sharing for iOS builds) while a build is under way. This can make diagnosing build failures much easier than scanning through log files. Remote access can also reduce the time required to get custom build steps working.

Note

Remote access is only available to buddybuild customers on a paid plan.

Buddybuild makes access easy: when you rebuild your app with remote access enabled, buddybuild collects the public SSH keys stored in your source code repository and configures them in the build machine. Once the SSH configuration is complete, buddybuild provides the connection details so that you can connect right away. Screen sharing access is also provided for iOS builds, using the Virtual Network Computing protocol (VNC).

You can watch the build progress, tail logs, make adjustments to build scripts, anything that would help future builds succeed more often. You have up to 20 minutes after the build completes, successfully or otherwise, before the VM running your build is retired and deleted.

We ask that you don’t abuse this facility. Remote access is provided so that you can improve your builds. Undesirable behavior via remote access could result in termination of this feature.

Important

When you use remote access, make sure that you commit and push any changes you want to keep; nothing is saved when the VM is deleted.

Connect via remote access

  1. Log in to the buddybuild dashboard.

  2. Click the build that you’d like to diagnose with remote access. The build details screen is displayed:

    The build details screen with the Rebuild with Remote Access button

    Important

    If you do not see the Rebuild with Remote Access button, you should contact sales@buddybuild.com to upgrade your plan.

  3. The Rebuild with Remote Access button Click the Rebuild with Remote Access button. Buddybuild begins retrieving your public keys:

    The Retrieving your keys dialog

    What you see next depends on whether there are public keys available or not:

    1. If there are no public keys available in connected source code repositories, the following dialog is displayed:

      The Add a public key for Remote Access dialog

      The Add key button Click the Add key button to use GitHub’s interface to add a public key.

    2. If there are one or more public keys available, the following dialog is displayed:

      The Remote Access dialog

      Click the Manage keys link to visit the source code provider’s key management interface.

  4. The Rebuild button Once you click the Rebuild button, buddybuild starts the build. As soon as the build machine is up and running, buddybuild installs your public key(s) and displays the connection details.

    For an iOS build, both the SSH and screen sharing connection details are presented:

    An iOS build’s remote access connection details

    For an Android build, only the SSH connection details are presented:

    An Android build’s remote access connection details

  5. Use SSH to connect to the build VM.

    1. The Clipboard button Click the clipboard icon beside the SSH command, to copy the command.

    2. Open a terminal and paste the command, then press Return.

    A terminal connected via SSH

At this point, you can do whatever you need to diagnose your build. When the 20 minutes after the build completes has expired, the remote access connection details panel is replaced with:

The remote access is no longer available panel

Important

When you use remote access, make sure that you commit and push any changes you want to keep; nothing is saved when the VM is deleted.

Screen sharing for iOS builds

Screen sharing is enabled for iOS builds when you rebuild with remote access, and uses the Virtual Network Computing (VNC) protocol.

To use screen sharing:

  1. The Clipboard button Click the clipboard icon beside the URL value, to copy the URL.

  2. In the MacOS Finder’s Go menu, select Connect to server…​. The Connect to Server dialog appears:

    The Connect to Server dialog

  3. In the Server Address field, type vnc:// and then paste the URL. The combined value should look something like: vnc://access.buddybuild.com:13108

    Note

    Do not save this connection as a favorite. The build VM is retired and deleted 20 minutes after your build completes, and you won’t be able to access it again after that period.

  4. The Connect button Click the Connect button. A dialog appears asking for the name and password to connect to access.buddybuild.com:

    The Finder’s credentials dialog

  5. In the Name field, type customer (or copy that value from the Username field in your browser).

  6. The Clipboard button In your browser, click the clipboard icon beside the Password field.

  7. Paste the password into the Password field in the dialog.

  8. The Connect button Click the Connect button to start the connection. Another dialog appears asking how you would like to connect:

    The Finder’s connection mode dialog

  9. The Connect button Select Share the display and click Connect. The shared desktop of the build VM appears:

    The shared screen of the build VM

You can now operate the build VM as you see fit.

Caution

Be aware that VNC connections to buddybuild VMs are not encrypted. If you require an encrypted connection, see Encrypted VNC connection.

Encrypted VNC connection

The VNC protocol does not include connection encryption. However, you can tunnel the VNC connection through the SSH connection.

To setup the SSH tunnel:

  1. The Clipboard button Click the clipboard icon beside the SSH command, to copy the command.

  2. Open a terminal and paste the command. DO NOT PRESS RETURN YET.

  3. Add -L 5900:localhost:5900 to the command. The full command should look something like:

    ssh buddybuild@access.buddybuild.com -p 12160 -L 15900:localhost:5900

    This sets up a tunnel from port 15900 on localhost (your computer) to port 5900 on the build VM, via the SSH connection. We’re using 15900 in this example instead of 5900, to avoid problems if you have screen sharing enabled on your computer.

  4. Press Return. At this point, the SSH connection is established, including the tunnel for the VNC connection.

  5. Follow the steps in Screen sharing for iOS builds, but use the following value for the Server Address field instead:

    vnc://localhost:15900

Directory layout

When you connect to a build VM via remote access, the current directory contains:

iOS builds Android builds
BBCheckCleanDummy.tmp
Desktop/
Documents/
Downloads/
Library/
Movies/
Music/
Pictures/
Public/
bin/
secure_files/
workspace@
BBCheckCleanDummy.tmp
bin/
gradleArtifacts.tar.gz
gradleBuildCache.tar.gz
secure_files/
src/
workspace@

Common to both platforms:

  • secure_files
    Any secure files created in the buddybuild dashboard are copied to this folder at the start of every build.

  • workspace
    Your project’s source code is copied to this folder (which is a symlink to /tmp/sandbox/workspace).

results matching ""

    No results matching ""