tosca_definitions_version: tosca_simple_yaml_1.2
description: TOSCA simple profile with web app, redis and datadog services.
topology_template:
node_templates:
web: 
type: tosca.nodes.WebApplication.Web
properties:
port: 5000:5000
requirements:
- database_endpoint: redis
- host:app-server1
interfaces:
Standard:
Create: 
implementation:
primary: /Example/app.py
dependencies: 
- /Example/requirements.txt
redis: 
type: tosca.nodes.Container.Application.Docker
artifacts:
redisimage:
file: redis:alpine
type: tosca.artifacts.Deployment.Image.Container.Docker
repository: docker_hub
requirements:
- host:app-server2
interfaces:
Standard:
Create: 
implementation: redisimage
datadog: 
type: tosca.nodes.Container.Application.Docker
artifacts:
datadogimage:
file: datadog/docker-dd-agent
type: tosca.artifacts.Deployment.Image.Container.Docker
repository: docker_hub
requirements:
- database_endpoint: redis
- service_endpoint:web
- host:app-server3
interfaces:
Standard:
Create: 
implementation:
primary: conf.d/redisdb.yaml
app-server1: 
type: tosca.nodes.Compute
capabilities:
host:
properties:
disk_size: 10 GB
num_cpus: 2
mem_size: 8 GB
OS:
properties:
architecture: x86_64
type: Linux
distribution: ubuntu
version: 12.04
app-server2: 
type: tosca.nodes.Compute
capabilities:
host:
properties:
disk_size: 10 GB
num_cpus: 2
mem_size: 8 GB
OS:
properties:
architecture: x86_64
type: Linux
distribution: ubuntu
version: 12.04
app-server3: 
type: tosca.nodes.Compute
capabilities:
host:
properties:
disk_size: 10 GB
num_cpus: 2
mem_size: 8 GB
OS:
properties:
architecture: x86_64
type: Linux
distribution: ubuntu
version: 12.04
app-server4: 
type: tosca.nodes.Compute
capabilities:
host:
properties:
disk_size: 10 GB
num_cpus: 2
mem_size: 8 GB
OS:
properties:
architecture: x86_64
type: Linux
distribution: ubuntu
version: 12.04