Update project maturity status
[multicloud/azure.git] / azure / aria / aria-extension-cloudify / src / aria / extensions / aria_extension_tosca / profiles / aria-1.0 / aria-1.0.yaml
1 # Licensed to the Apache Software Foundation (ASF) under one or more
2 # contributor license agreements.  See the NOTICE file distributed with
3 # this work for additional information regarding copyright ownership.
4 # The ASF licenses this file to You under the Apache License, Version 2.0
5 # (the "License"); you may not use this file except in compliance with
6 # the License.  You may obtain a copy of the License at
7 #
8 #     http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15
16 policy_types:
17
18   aria.Plugin:
19     _extensions:
20       shorthand_name: Plugin
21       type_qualified_name: aria:Plugin
22       role: plugin
23     description: >-
24       Policy used to specify plugins used by services. For an operation to be able to use a plugin
25       it must have a matching policy. The name of the policy must be the name of the plugin. The
26       optional properties can be used to further specify plugin selection by the orchestrator.
27     derived_from: tosca.policies.Root
28     properties:
29       version:
30         description: >-
31           Minimum plugin version.
32         type: version
33         required: false
34       enabled:
35         description: >-
36           If the policy is to disable the plugin then it will be ignored and all operations and
37           workflows depending on it will also be disabled.
38         type: boolean
39         default: true
40
41   aria.Workflow:
42     _extensions:
43       shorthand_name: Workflow
44       type_qualified_name: aria:Workflow
45       role: workflow
46     description: >-
47       Policy used to specify custom workflows. A workflow is usually a workload of interconnected
48       calls to operations on nodes and relationships in the service topology. The name of the policy
49       is used as the name of the workflow. Note that it can be the same name as one of the normative
50       lifecycle workflows ("install", "uninstall", etc.), in which case it would be considered an
51       override of the default behavior. If the workflow requires parameters then this base type
52       should be inherited and extended with additional properties.
53     derived_from: tosca.policies.Root
54     properties:
55       implementation:
56         description: >-
57           The interpretation of the implementation string depends on the orchestrator. In ARIA it is
58           the full path to a Python @workflow function that generates a task graph based on the
59           service topology.
60         type: string
61
62   aria.Scaling:
63     _extensions:
64       type_qualified_name: aria:Scaling
65       role: scaling
66     description: >-
67       Scaling.
68     derived_from: tosca.policies.Scaling
69     properties:
70       min_instances:
71         description: >-
72           This property is used to indicate the minimum number of instances that should be created
73           for the associated TOSCA Node Template by a TOSCA orchestrator.
74         type: integer
75         default: 1
76         constraints:
77           - greater_or_equal: 0
78       max_instances:
79         description: >-
80           This property is used to indicate the maximum number of instances that should be created
81           for the associated TOSCA Node Template by a TOSCA orchestrator.
82         type: integer
83         default: 1
84         constraints:
85           - greater_or_equal: 0
86       default_instances:
87         description: >-
88           An optional property that indicates the requested default number of instances that should
89           be the starting number of instances a TOSCA orchestrator should attempt to allocate. Note:
90           The value for this property MUST be in the range between the values set for
91           "min_instances" and "max_instances" properties.
92         type: integer
93         constraints:
94           - greater_or_equal: 0
95         required: false
96     targets:
97       - tosca.nodes.Root