v1 of the pachelbel configuration describes a single object, the deployment object.
# The config is versioned. Objects of different config_versions can be used in
# a single pachelbel provision run.
config_version: 1
# Compose offers many database types.
type: mongodb|redis|postgresql|elastic_search|rethink|rabbitmq|etcd|scylla|mysql|janusgraph|disque
# By default the latest stable version of the specified databse type is used.
# The version field uses the constraint syntax from
# https://github.com/masterminds/semver
# to support version locking if 'latest' is not what you want. Some examples:
version: 3.2.10
#version: 3.2.x
#version: ^3.x
#version: ~4
# If a deployment already exists, pachelbel is capable of performing in-place
# upgrades for the deployment if Compose offers them, but by default it will
# not do so. To enable in-place upgrades for a specific deployment, mark
# a deployment as 'upgradeable'
upgradeable: true
# pachelbel supports deployments to datacenters *or* clusters *or* tags. You
# cannot specify more than one of these fields for any single deployment.
#
# pachelbel will attempt to map the cluster-name to an ID. If that cluster
# does not exist or is not visible when using the provided API token, pachelbel
# will throw an error. There is currently no support for the creation/deleting
# of clusters.
cluster: my-softlayer-cluster
# pachelbel supports deployments to datacenters *or* clusters *or* tags. You
# cannot specify more than one of these fields for any single deployment.
#
# the value provided here should be a datacenter slug as returned by the compose
# API
datacenter: aws:us-east-1
# pachelbel supports deployments to datacenters *or* clusters *or* tags. You
# cannot specify more than one of these fields for any single deployment.
#
# pachelbel does not currently validate that the provided tags exist, but
# provisioning a deployment will fail if they do not.
tags:
- dev
- benjdewan
# The name of the deployment must be <64 characters, but is otherwise very
# flexible.
name: postgres-benjdewan-01
# notes can include additional metadata about this deployment
notes: |
This is a test of pachelbel
# Optionally specify the scaling size of the deployment. The default is '1'
scaling: 2
# For databases that support ssl, use this line to ensure it is set.
ssl: true
# The timeout period, in seconds, to wait for provisioning recipes (creating
# new deployments, scaling existing deployments &c.) to complete. If no recipes
# are triggered, no waiting will occur.
#
# If this field is not set a default timeout of 900 seconds (15 minutes) is used.
timeout: 900
# If you want to make this deployment visible to anyone other than the user that
# created it, you should create a team via the web interface, grab the team ID, and
# then specify it here along with the roles that team should have:
teams:
- id: "123456789"
role: "admin"
- id: "123456789"
role: "developer"
# CacheMode is an optimization option for Redis. Setting this field on any
# other type of deployment will throw an error
cache_mode: true
# WiredTiger is a storage engine option for MongoDB. Setting this field for
# any other type of deployment will throw an error
wired_tiger: true
# Multiple YAML configuration objects can be combined into a single file separated
# using the standard yaml separator: `\n---\n`.