Skip to main content
Version: 77.0.0

a9s Template Uploader Errand

Freezing Release Versions​

The BOSH property freeze_release_versions allows to freeze the releases versions used in the templates to the once specified in the service manifest. Set this property to true to freeze the release versions.

Template Folders​

The BOSH property template_folders expects an array of folder names that the templates-uploader errand will iterate over to find template files.

For a list of valid folder names, take a look at the current values specified in the service manifests.

Example​

The following example uploads the template files for a9s PostgreSQL 15 and 17.

...
properties:
template-uploader:
template_folders:
- postgresql15
- postgresql17
...

Template Variables​

The BOSH property template-vars contains a list of variables that are substituted when the templates are interpolated.

For further information about the available variables and templates, see Properties and Available Templates.

...
properties:
template-uploader:
template-vars:
global_graphite_endpoint: ''
global_syslog_endpoint: ''
global_syslog_endpoints: []
use_metrics_prefix_level_2: false
use_metrics_prefix_level_3: false
...

Template Scoped Variables​

The BOSH property template-scoped-variables is a hash that defines variables that are substituted when specific templates are interpolated. Unlike the template-vars parameter, a glob pattern can be used to apply variables only to specific templates.

For further information about the available variables and templates, see Properties and Available Templates.

...
properties:
template-uploader:
template-scoped-vars:
"mongodb70-single-ssl.yml":
stemcell_version: "1.280"
"mongodb80*":
stemcell_version: "1.330"
...

Template Ops Files​

The BOSH property template-ops-files contains a list of Ops files that will be applied to every template.

An entry for template-ops-files can be one of the following options:

  • an Ops file listed under the Ops Files section
  • an absolute path inside the Service Instance
  • remote HTTP or HTTPS location (self-signed certificates will not work)

For further information about the available Ops Files, see Ops Files.

Example​

...
properties:
template-uploader:
template-ops-files:
- ops/rabbitmq-set-free-disk-limit.yml
- /path/on/the/vm/instance
- https://gist.github.com/username/5edf693f9198ff987228d0e78dffcc95
...

Template Scoped Ops Files​

The BOSH property template-scoped-ops is a hash that defines Ops files that will be applied to specific templates. Unlike the template-ops-files parameter, a glob pattern can be used to apply the Ops file(s) only to specific templates.

Each entry for the template-scoped-ops hash must be a template name or a glob pattern that specifies multiple template files. Those entries need to include an array of the following options:

  • an Ops file listed under the Ops Files section
  • an absolute path inside the Service Instance
  • remote HTTP or HTTPS location (self-signed certificates will not work)

For further information about the available Ops Files, see Ops Files.

Example​

...
properties:
template-uploader:
template-scoped-ops:
mongodb70-single-ssl.yml:
- ops/randomize_az_placement.yml
- ops/enable_ssl.yml
"mongodb80*":
- ops/set_default_instances.yml
...

Template Custom Ops Files (Inline)​

The BOSH property template-custom-ops allows customers to add Ops files content (inline) to the Template Uploader Errand. That content will be applied to every template.

Example​

...
properties:
template-uploader:
template-custom-ops: |
- type: replace
path: /features?/randomize_az_placement
value: true
...

Ops Files​

The following Ops files are shipped with the a9s Template Uploader Errand itself. They can be referenced by their relative path (for example ops/randomize_az_placement.yml) in the template-ops-files and template-scoped-ops BOSH properties.

Some of the Ops files below rely on BOSH variables (for example ((/disk_free_limit_mem_relative))). These variables must be present in the BOSH Director's config server (CredHub), otherwise the deployment of the Service Instance will fail.

NameDescription
ops/add-tags.ymlAdds BOSH tags (deployment_name, instance_guid, org_guid and space_guid) to the Service Instance deployment. This makes it possible to identify the Cloud Foundry origin of a Service Instance on the IaaS layer.
ops/randomize_az_placement.ymlEnables the BOSH feature randomize_az_placement, so that instances of a Service Instance are distributed randomly over the configured availability zones.
ops/force_unique_az_master_workers.ymlPins the master, worker and workers instance groups to the availability zone z2.
ops/a9s-set-var-for-routing-version.ymlSets the version of the routing release to the value of the BOSH variable ((/routing_version)) instead of using latest.