Skip to content
Permalink
master
Switch branches/tags
Go to file
 
 
Cannot retrieve contributors at this time

Runway

Runway is a lightweight wrapper around infrastructure deployment (e.g. CloudFormation, Terraform, Serverless) & linting (e.g. yamllint) tools to ease management of per-environment configs & deployment.

runway-example.gif

.. toctree::
  :caption: Runway
  :maxdepth: 2
  :hidden:

  installation
  getting_started
  quickstart/index
  commands
  runway_config
  lookups/index
  defining_tests
  repo_structure



Module Configuration

AWS Cloud Development Kit (CDK)

The CDK module type is deployed using the AWS Cloud Development Kit (CDK). Runway uses system installed npm to install the CDK per-module. This means that the CDK must be included as a dev dependency in the package.json of the module.

.. toctree::
  :caption: AWS Cloud Development Kit (CDK)
  :maxdepth: 2
  :hidden:

  cdk/configuration
  cdk/directory_structure
  cdk/advanced_features


CloudFormation & Troposphere

The CloudFormation module type is deployed using Runway's CloudFormation engine (CFNgin). It is able to deploy raw CloudFormation templates (JSON & YAML) and Troposphere templates that are written in the form of a :ref:`Blueprint`.

.. toctree::
  :caption: CloudFormation & Troposphere
  :maxdepth: 2
  :hidden:

  cfngin/configuration
  cfngin/directory_structure
  cfngin/advanced_features
  cfngin/migrating

Kubernetes

Kubernetes manifests can be deployed via Runway offering an ideal way to handle core infrastructure-layer (e.g. shared ConfigMaps & Service Accounts) configuration of clusters by using Kustomize overlays.

.. toctree::
  :caption: Kubernetes
  :maxdepth: 2
  :hidden:

  kubernetes/configuration
  kubernetes/directory_structure
  kubernetes/examples
  kubernetes/advanced_features


Serverless Framework

The Serverless module type is deployed using the Serverless Framework. Runway uses system installed npm to install Serverless per-module. This means that Serverless must be included as a dev dependency in the package.json of the module.

.. toctree::
  :caption: Serverless Framework
  :maxdepth: 2
  :hidden:

  serverless/configuration
  serverless/directory_structure
  serverless/advanced_features


Static Site

This module type performs idempotent deployments of static websites. It combines CloudFormation stacks (for S3 buckets & CloudFront Distribution) with additional logic to build & sync the sites.

A start-to-finish example walkthrough is available in the :ref:`Conduit quickstart<qs-conduit>`.

Note

The CloudFront Distribution that is created by default can take a significant amount of time to spin up on initial deploy (5 to 60 minutes is not abnormal). Incorporating CloudFront with a static site is a common best practice, however, if you are working on a development project it may benefit you to add the :ref:`staticsite_cf_disable <staticsite_cf_disable>` parameter.

.. toctree::
  :caption: Static Site
  :maxdepth: 2
  :hidden:

  staticsite/configuration
  staticsite/directory_structure
  staticsite/examples
  staticsite/advanced_features


Terraform

Runway provides a simple way to run the Terraform versions you want with variable values specific to each environment. Terraform does not need to be installed prior to using this module type. Runway maintains a cache of Terraform versions on a system, downloading and installing different versions as needed.

.. toctree::
  :caption: Terraform
  :maxdepth: 2
  :hidden:

  terraform/configuration
  terraform/directory_structure
  terraform/advanced_features



.. toctree::
  :caption: Developers Guide
  :maxdepth: 2
  :glob:
  :hidden:

  apidocs/index
  developers/*

.. toctree::
  :caption: Maintainers Guide
  :maxdepth: 2
  :glob:
  :hidden:

  maintainers/*

.. toctree::
  :caption: Additional Information
  :maxdepth: 2
  :hidden:

  changelog
  License <license>
  terminology