aboutsummaryrefslogtreecommitdiffstats
path: root/deploy/README.templater
diff options
context:
space:
mode:
Diffstat (limited to 'deploy/README.templater')
-rw-r--r--deploy/README.templater371
1 files changed, 0 insertions, 371 deletions
diff --git a/deploy/README.templater b/deploy/README.templater
deleted file mode 100644
index b5d52ab9d..000000000
--- a/deploy/README.templater
+++ /dev/null
@@ -1,371 +0,0 @@
-##############################################################################
-# Copyright (c) 2016 Ericsson AB and others.
-# peter.barabas@ericsson.com
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-
-======== TEMPLATING SUPPORT IN YAML CONFIGURATION FILES ========
-
-deploy/templater.py makes it possible to use templates to generate configuration
-files. It takes 2 input YAML files and an output file as arguments. One being
-the dictionary (called the base file), which is used to look up values in; the
-other file is the template, where the substitution will take place. Templater
-will write the result to an output file, specified as the 3rd argument.
-
-
-======== SYNTAX OF TEMPLATE FILES ========
-
-A template file can contain any valid YAML data and template variables, whose
-syntax is described below:
-
-1. Single value references
-
- %{title}
-
- %{environment/net_segment_type}
-
- Either a root element, or a path can be specified.
-
-2. YAML sections
-
- %{nodes}
-
- %{network/networking_parameters}
-
- Either a root element, or a path can be specified.
-
-3. Interface lookup for network
-
- %{interface(storage)}
-
- Specify a network type as argument to interface().
-
-4. Interface lookup for network and role
-
- %{interface(public,compute)}
-
- Specify a network type and a role as arguments to interface().
-
-5. File inclusion
-
- %{include(templates/interfaces.yaml)}
-
- Filename with absolute or relative path.
-
-
-======== EXAMPLES ========
-
-Base YAML file (excerpt):
-
-title: Deployment Environment Adapter (DEA)
-version: 1.1
-created: Wed Mar 30 08:16:04 2016
-environment:
- name: vCity
- net_segment_type: tun
-wanted_release: Liberty on Ubuntu 14.04
-nodes:
-- id: 1
- interfaces: interfaces_1
- role: ceph-osd,compute
- transformations: transformations_1
-- id: 2
- interfaces: interfaces_1
- role: ceph-osd,compute
- transformations: transformations_1
-- id: 3
- interfaces: interfaces_1
- role: ceph-osd,compute
- transformations: transformations_1
-- id: 4
- interfaces: interfaces_2
- role: controller,mongo
- transformations: transformations_2
-- id: 5
- interfaces: interfaces_2
- role: controller,mongo
- transformations: transformations_2
-- id: 6
- interfaces: interfaces_2
- role: controller,mongo
- transformations: transformations_2
-interfaces_1:
- ens3:
- - fuelweb_admin
- - management
- ens4:
- - storage
- ens5:
- - private
- ens6:
- - public
-interfaces_2:
- ens3:
- - fuelweb_admin
- - management
- ens4:
- - storage
- - private
- - public
-network:
- networks:
- - cidr: 172.16.0.0/24
- gateway: 172.16.0.1
- ip_ranges:
- - - 172.16.0.2
- - 172.16.0.126
- meta:
- cidr: 172.16.0.0/24
- configurable: true
- floating_range_var: floating_ranges
- ip_range:
- - 172.16.0.2
- - 172.16.0.126
- map_priority: 1
- name: public
- notation: ip_ranges
- render_addr_mask: public
- render_type: null
- use_gateway: true
- vips:
- - haproxy
- - vrouter
- vlan_start: null
- name: public
- vlan_start: null
- - cidr: 192.168.1.0/24
- gateway: null
- ip_ranges:
- - - 192.168.1.1
- - 192.168.1.254
- meta:
- cidr: 192.168.1.0/24
- configurable: true
- map_priority: 2
- name: storage
- notation: cidr
- render_addr_mask: storage
- render_type: cidr
- use_gateway: false
- vlan_start: 102
- name: storage
- vlan_start: 102
-
-
---- Example 1 ---
-
-Template file:
-
-deployment-scenario-metadata:
- title: %{title}
- version: 0.1
-dea-override-config:
- environment:
- net_segment_type: %{environment/net_segment_type}
- nodes:
- %{nodes}
-
-
-Result:
-
-deployment-scenario-metadata:
- title: Deployment Environment Adapter (DEA)
- version: 0.1
-dea-override-config:
- environment:
- net_segment_type: tun
- nodes:
- - id: 1
- interfaces: interfaces_1
- role: ceph-osd,compute
- transformations: transformations_1
- - id: 2
- interfaces: interfaces_1
- role: ceph-osd,compute
- transformations: transformations_1
- - id: 3
- interfaces: interfaces_1
- role: ceph-osd,compute
- transformations: transformations_1
- - id: 4
- interfaces: interfaces_2
- role: controller,mongo
- transformations: transformations_2
- - id: 5
- interfaces: interfaces_2
- role: controller,mongo
- transformations: transformations_2
- - id: 6
- interfaces: interfaces_2
- role: controller,mongo
- transformations: transformations_2
-
-
---- Example 2 ---
-
-Template file:
-
-dea-override-config:
- network:
- networks:
- %{network/networks}
-
-
-Result:
-
-dea-override-config:
- network:
- networks:
- - cidr: 172.16.0.0/24
- gateway: 172.16.0.1
- ip_ranges:
- - - 172.16.0.2
- - 172.16.0.126
- meta:
- cidr: 172.16.0.0/24
- configurable: true
- floating_range_var: floating_ranges
- ip_range:
- - 172.16.0.2
- - 172.16.0.126
- map_priority: 1
- name: public
- notation: ip_ranges
- render_addr_mask: public
- render_type: null
- use_gateway: true
- vips:
- - haproxy
- - vrouter
- vlan_start: null
- name: public
- vlan_start: null
- - cidr: 192.168.1.0/24
- gateway: null
- ip_ranges:
- - - 192.168.1.1
- - 192.168.1.254
- meta:
- cidr: 192.168.1.0/24
- configurable: true
- map_priority: 2
- name: storage
- notation: cidr
- render_addr_mask: storage
- render_type: cidr
- use_gateway: false
- vlan_start: 102
- name: storage
- vlan_start: 102
-
-
---- Example 3 ---
-
-Template file:
-
-storage_if: %{interface(storage)}
-compute_private_if: %{interface(private,compute)}
-# Management interface of a mongo node
-mongo_mgmt_if: %{interface(management,mongo)}
-controller_private_if: %{interface(private,controller)}
-
-
-Result:
-
-storage_if: ens4
-compute_private_if: ens5
-# Management interface of a mongo node
-mongo_mgmt_if: ens3
-controller_private_if: ens4
-
-
---- Example 4 ---
-
-Template file:
-
-version: 1.1
-created: Mon Jun 13 19:39:35 2016
-comment: None
-%{include(environment.yaml)}
-
-
-environment.yaml:
-
-environment:
- name: F9-NOSDN-NOFEATURE-VXLAN-BAREMETAL
- net_segment_type: tun
-
-
-Result:
-
-version: 1.1
-created: Mon Jun 13 19:39:35 2016
-comment: None
-environment:
- name: F9-NOSDN-NOFEATURE-VXLAN-BAREMETAL
- net_segment_type: tun
-
-
---- Example 5 ---
-
-Template file (except):
-
-settings:
- editable:
- access:
- email:
- description: Email address for Administrator
- label: Email
- regex:
- error: Invalid email
- source: ^\S+@\S+$
- type: text
- value: admin@localhost
- weight: 40
-# ...
-# lines omitted for brevity
- %{include(templates/cgroups.yaml)}
-
-
-cgroups.yaml:
-
- cgroups:
- metadata:
- always_editable: true
- group: general
- label: Cgroups conguration for services
- restrictions:
- - action: hide
- condition: 'true'
- weight: 90
-
-
-Result:
-
-settings:
- editable:
- access:
- email:
- description: Email address for Administrator
- label: Email
- regex:
- error: Invalid email
- source: ^\S+@\S+$
- type: text
- value: admin@localhost
- weight: 40
-# ...
-# again, lines omitted for brevity
- cgroups:
- metadata:
- always_editable: true
- group: general
- label: Cgroups conguration for services
- restrictions:
- - action: hide
- condition: 'true'
- weight: 90
-