tosca_definitions_version: tosca_simple_profile_for_nfv_1_0_0 metadata: template_name: Flame CLMC Alerts Integration Test sfc: MS_Template_1 sfci: MS_I1 # Import own definitions of nodes, capabilities and policy syntax. imports: - flame_definitions-0.1.7.yaml # Starting the template ## Topology topology_template: node_templates: database: type: eu.ict-flame.nodes.ServiceFunction capabilities: host: properties: num_cpus: 2 mem_size: 4096 MB disk_size: 10 GB properties: hypervisor: kvm image_url: http://cdimage.debian.org/cdimage/openstack/current-9/debian-9-openstack-amd64.qcow2 fqdn: - db.app.ict-flame.eu frontend: type: eu.ict-flame.nodes.ServiceFunction capabilities: host: properties: num_cpus: 2 disk_size: 10 GB mem_size: 4096 MB properties: hypervisor: kvm image_url: http://cdimage.debian.org/cdimage/openstack/current-9/debian-9-openstack-amd64.qcow2 fqdn: - frontend.app.ict-flame.eu - www.app.ict-flame.eu policies: - init: type: eu.ict-flame.policies.InitialPolicy description: Start the nodes initially properties: parent: service_paid triggers: inital_trigger: condition: constraint: initialise action: frontend: - fqdn: frontend.app.ict-flame.eu lifecycle_actions: London: eu.ict-flame.sfe.state.lifecycle.connected Bristol: eu.ict-flame.sfe.state.lifecycle.booted Manchester: eu.ict-flame.sfe.state.lifecycle.connected database: - fqdn: db.app.ict-flame.eu lifecycle_actions: London: eu.ict-flame.sfe.state.lifecycle.connected - scale_nginx_policy: type: eu.ict-flame.policies.StateChange properties: parent: service_paid triggers: tigger_a: condition: constraint: clmc::high_requests action: frontend: - fqdn: frontend.app.ict-flame.eu lifecycle_actions: Bristol: eu.ict-flame.sfe.state.lifecycle.connected tigger_b: condition: constraint: clmc::high_cpu_usage period: 600 # integer required, unit: seconds action: frontend: - fqdn: frontend.app.ict-flame.eu lifecycle_actions: Bristol: eu.ict-flame.sfe.state.lifecycle.connected tigger_c: condition: constraint: clmc::increase_in_active_requests period: 600 # integer required, unit: seconds action: frontend: - fqdn: frontend.app.ict-flame.eu lifecycle_actions: Bristol: eu.ict-flame.sfe.state.lifecycle.connected - deadman_policy: type: eu.ict-flame.policies.StateChange properties: parent: service_paid triggers: tigger_a: condition: constraint: clmc::no_measurements action: frontend: - fqdn: frontend.app.ict-flame.eu lifecycle_actions: Bristol: eu.ict-flame.sfe.state.lifecycle.connected - service_paid: type: eu.ict-flame.policies.StateChange description: Check outstanding payments. If there are outstanding payments, we shutdown the deployed service. triggers: not_paid_trigger: description: Check if the payment is late condition: constraint: clmc-user-db::serviceIsNotPaid # this will be ignored, source must be clmc period: 3600 # integer required, unit: seconds action: frontend: - fqdn: frontend.app.ict-flame.eu lifecycle_actions: London: eu.ict-flame.sfe.state.lifecycle.shutdown Bristol: eu.ict-flame.sfe.state.lifecycle.shutdown Manchester: eu.ict-flame.sfe.state.lifecycle.shutdown database: - fqdn: db.app.ict-flame.eu lifecycle_action: London: eu.ict-flame.sfe.state.lifecycle.shutdown