What is supported?

The Shippable DevOps Assembly Line Platform supports most popular tools and technologies used today to build, test, deploy, and operate applications/services/micro-services.

Here are some of the major things we support out of the box. With that being said, the Platform is built with Docker in mind. Hence, anything that can be installed inside of a Docker image is supported by the platform.

Node Types

To run your DevOps activities, you need a Node (virtual machine). Shippable supports the two types of Nodes described below. By default, all your jobs run on Dynamic nodes.

  • Dedicated Dynamic Nodes -- These are managed and dynamically provisioned by Shippable Platform. There is no need to worry about managing build infrastructure. There are multiple sizes that you can use depending on your need.

    • 2 core, 3.75GB RAM (default) -- this is equivalent of AWS c4.large instance type
    • 4 core, 7.5GB RAM -- this is equivalent of AWS c4.xlarge instance type
    • 8 core, 15GB RAM -- this is equivalent of AWS c4.2xlarge instance type
  • Dedicated Custom Nodes -- You can also attach your own nodes to your Shippable subscription and all your jobs are routed to those machines. This is great for organizations with specific security requirements that do not allow them to run builds on hosted infrastructure. There are additional advantages to Custom nodes, including Docker caching and faster builds due to no spin up time. There is some management required for Custom Nodes, but in most cases, it is as simple as hitting the Reset Node button. With Custom nodes, your code never leaves your infrastructure and your jobs can access internal resources that are inaccessible from the internet.

Operating System

The platform is designed to work on any Linux distro. We natively support the following versions:

As mentioned before, we are a Docker-based platform. Hence any custom image based on a Linux distro can be used in Job Runtime.

Language

For both OS versions, we maintain language-specific images that are updated every month so that the latest and greatest versions are always available. Please note that the right language image is automatically chosen for your CI jobs based on the language tag in your shippable.yml

We support the following languages:

Services

To make your builds even faster, we pre-install a bunch of Services that your application may need. These are also updated on a monthly cadence.

Following are the service that are pre-installed:

For more information, read our working with services section.

Testing Frameworks

Our Runtime Images also come pre-installed with all the tooling necessary to runs tests based on a plethora of frameworks. Some of the popular ones are

  • JUnit
  • XUnit
  • RSpec
  • Nosetest
  • Chai/Mocha
  • ...and more

Command Line Interfaces (CLI)

Most applications today run in the Cloud. Each cloud provider has a native CLI and we want to avoid you having to install and configure them. In addition we also pre-install some popular DevOps tools also. The goals is to try and prep the build environment as close to your desired state so that you can spend less time prepping and more time developing applications.

Here is a list of CLIs we have available as part of Job Runtime:

3rd Party Integrations

Shippable supports a multitude of integrations into external providers. This makes it easy to plug in any of your existing tooling seamlessly into Shippable Assembly Line Platform.

Source Control Management

Cloud Providers

Container Orchestration Systems

Artifact Repositories

Messaging Providers

PaaS Providers

IaaS Providers

DevOps Tools

Deployment Tools

Further Reading