Servers, in Pipelines, are used for deployments and builds. A server is either a physical or a virtual machine instance running a single copy of an operating system, which we identify via a unique host name. These servers may, for example, be on your desktop, in a co-location facility or somewhere in the cloud.
Adding servers to Pipelines, can be accomplished via several methods.
This document documents using the new server workflow for adding servers to Pipelines. For more information on other methods see:
distelli.ymlfile for automating the agent install, credentials, and environment deployments.
To begin the new server workflow:
This will allow you to add your existing hardware, or launch a new AWS EC2 instances.
Note: You must login to your server and install the agent.
MAC and Linux use the wget or curl. Windows, copy and paste the powershell snippet in a command (cmd) prompt.
You can now add the server to application environments.
There are several places you can view your server.
You can view your list of servers by simply clicking the Servers link at the top of the Pipelines web UI.
To view a single server, click on the server name in the list of servers. Below is an example server page.
The following Pipelines agent commands will show server information.
distelli agent status
Show the status of the server and agent.
distelli agent dump
Show the Pipelines deployed applications currently on the server.
You may need to find a Server ID for use with the Pipelines API or the Pipelines CLI.
This value is not readily exposed in the Pipelines web UI.
To find your server ID in Pipelines:
In the above URL, the server ID is:
Using the Pipelines API you can find server IDs with the following API Commands.
You can completely remove a server from Pipelines via 2 methods.
dagent uninstall will:
Note: This requires root or administrator access.
The –yes option facilitates a quiet deletion and auto answers yes to the Continue? (yes/no) prompt.
# dagent uninstall Are you sure you want to uninstall the Pipelines Agent? (to avoid this prompt, pass --yes flag) * All applications will be removed from this server * The server will be removed from all environments * The server will be removed from the web interface * The supervise process will be removed from 'upstart' Continue? (yes/no) yes #
A server can be deleted from Pipelines in the web UI only if the server is unavailable/down.
You have removed the server from Pipelines.
Using Pipelines you can provision GCE instances (servers) and have them immediately available for deploys and builds.
Note: Provisioning and launching GCE instances may incur charges on your Google Cloud Account.
For more information on getting started with GCE, see the Google Cloud documentation.
This will begin the new server workflow.
Names must start with a lowercase letter followed by up to 29 lowercase letters (max length is 30), numbers, or hyphens, and cannot end with a hyphen.
Here you can enter one or more SSH keys to provide login (ssh) access to the instance. An SSH key is not required, but realize, you can't login to the instance without one.
Your instance(s) are being provisioned.
Note: GCE instances take a bit of time to completely provision (come up) and communicate on the Internet. Be patient.
Note: If you run into trouble, you can inspect and terminate the instances from the GCE cloud console. console.cloud.google.com/ec2
When building your application with Pipelines you can specify Pipelines to use your own build servers wherever they may exist.
To correctly function as a build server in Pipelines you must first install the Pipelines agent on the build server.
Instructions for installing the Pipelines agent can be found here Installing the Agent.
Caution: For build server functionality, the server must be running Pipelines agent version 3.50 or greater. To see your Pipelines agent version see Pipelines the
For more information on the Pipelines agent see Pipelines Agent reference guide.
For your build server to be able to retrieve software code from a repository, the appropriate client software must be installed.
Note: Ensure you install the command line version. With Windows ensure you install the windows command prompt version.
Use git for BitBucket, GitHub, and GitHub Enterprise.
For more information on installing Git for Windows, please see Installing Git for Windows Build.
Use mercurial for BitBucket.
From the Pipelines web UI you mark the server as a build server.
Note: A server marked as a build server can still consume deployments from Pipelines.
You have enabled this server to build your applications. For more information see Setting Build Server Capabilities.
Note: This section is specific to using the build server with Pipelines for Applications. Please skip to the next section for using the build server with Pipelines for Containers.
For an application to use a build server it must be integrated with a repository. To integrate your application with a repository see:
Note: If your application is not integrated with a repository, this option will not be available.
To enable an application to use a build server:
On the right click the Build Options gear.
A dialog box will appear on the right.
You have enabled this application to build on your build servers. For more information see Setting Build Server Capabilities.