Managing Ubuntu BYON Nodes

To learn the basics of BYON nodes, please read this overview.

This tutorial page shows you how to attach/delete your Ubuntu BYON nodes to Shippable, as well as perform periodic maintenance on them.

Minimum requirements

The minimum requirements for a Ubuntu BYON type node that can be attached to Shippable are:

  • 1.8GB RAM
  • 30GB SSD
  • Supported architecture, OS and Docker versions for Ubuntu
Architecture OS Docker Version
x86_64 Ubuntu 14.04 1.9
x86_64 Ubuntu 14.04 1.11
x86_64 Ubuntu 14.04 1.13
x86_64 Ubuntu 14.04 17.06
x86_64 Ubuntu 16.04 1.13
x86_64 Ubuntu 16.04 17.06
aarch64 Ubuntu 16.04 17.06

Viewing your nodes

You can view all the currently active nodes in your Subscription by following the steps below:

  • From your Dashboard, click on Subscriptions in the left sidebar menu and click on your subscription.

List nodes

  • On the Subscription page, click on the Gears icon and click on Node Pools.

Node pools option

  • Right below the LICENSES panel, you can see all your On Demand and BYON nodes in their respective Node Pools.

Subscription Nodes view for Shippable DevOps Assembly Lines

Adding new nodes

You can add a new node by clicking the Add node button on the top right corner of your Node Pool panel.

Subscription Nodes view for Shippable DevOps Assembly Lines

  • Since every node should be part of a Node Pool, you need to select which node pool will the new node be a part of. Read Node Pool documentation to learn how to create node pools

  • Click on the Docker version dropdown and select the version you want installed on your nodes. Please note that the list of available versions is populated based on the type of OS and architecture of the node pool

  • Enter a name for the node and its IP address. Enter name and IP

  • You can choose to initialize the build host through Shippable or run the initialization scripts yourself. Initialization through Shippable requires you to grant SSH access, so if you do not want to grant that for any reason, select the radio button for Manual (script based)

  • To initialize the node through Shippable,

    • Enter the SSH port for your build host. This is usually port 22, but is configurable.
    • Choose whether you want to enable swap space on your machine.
    • Copy the command shown and run it on your build host. This will create a shippable user on your host and allow us to run initialization scripts on your machine.
    • Check the checkbox to confirm that you have run the command on your machine and click on Initialize
    • You will be redirected to a page showing you the console log as your machine is initialized.
    • When your node is ready, the status indicator for the node will turn green. Your node is now ready to pick up builds for your projects. Subscription Nodes view for Shippable DevOps Assembly Lines
  • To run the initialization scripts yourself,

    • Choose whether you want to enable swap space on your machine.
    • Click on Generate initialization scripts to generate the script.
    • Click on Download scripts to download. Copy it to your build machine and run them.
    • Check the I have run this script on my node successfully and then click on the Save button.
    • Your node status will automatically show green at this point. We have no way of verifying that the node was in fact successfully initialized so you will need to make sure this was the case.

Once you add your first build node, all subsequent builds for that subscription will run on your machines. Your nodes can be seen by going to your Subscription Settings and clicking on Nodes in the left sidebar menu.

Re-initializing a node

You might want to re-initialize a BYON node for the following reasons:

  • An updated version is available for the build agent. This is indicated by a red exclamation icon in the Build Agent Version column of the Node.
  • You made some changes to the node manually and it is no longer picking up jobs
  • The node isn't picking up jobs and seems 'frozen' for some reason

To re-initialize a node:

  • On the Subscription page, click on the Gears icon and click on Node Pools.

Node pools option

  • Right below the LICENSES panel, you can see all your On Demand and BYON nodes in their respective Node Pools.

Subscription Nodes view for Shippable DevOps Assembly Lines

  • Click on the node you want to reinitialize.
  • You can reset a node by clicking on the Re-initialize button. This action will initialize/install everything from scratch.

If your nodes were not initialized automatically by Shippable, you will need to re-download the initialization script and run it on your node manually.

Deleting a build node

  • From your Dashboard, click on Subscriptions in the left sidebar menu and click on your subscription.

List nodes

  • Click on the gear icon on the Subscription page and then on Node Pools. All your nodes can be seen right below the LICENSES panel in their respective Node pool.
  • Click on the node you want to delete.
  • Scroll to the bottom of the screen and click on Delete to delete your build node. This action is final and cannot be undone.

Initialization scripts

All the scripts for initializing the nodes are are publicly available here. We update this repository consistently to fix any bugs and to add support for new operating systems.