Support TOSCA in verigraph (gRPC service)
[parser.git] / verigraph / schema / tosca / yamlToscaDefinitions.yaml
1 ##############################################################################
2 # Copyright (c) 2018 Politecnico di Torino and others.
3 #
4 # All rights reserved. This program and the accompanying materials
5 # are made available under the terms of the Apache License, Version 2.0
6 # which accompanies this distribution, and is available at
7 # http://www.apache.org/licenses/LICENSE-2.0
8 ##############################################################################
9
10 #Tosca definitions for Verigraph extension in Tosca Yaml simple profile
11
12 tosca_definitions_version: http://docs.oasis-open.org/tosca/ns/simple/yaml/1.0
13
14 description: node type definitions exetending tosca types for support to Verigraph verification system
15
16 node_types:
17   verigraph.types.Antispam:
18     derived_from: tosca.nodes.Root
19     description: verigraph Antispam node
20     properties:
21       sources:
22         type: list
23         entry_schema:
24           type: string
25
26   verigraph.types.Cache:
27     derived_from: tosca.nodes.Root
28     description: verigraph Cache node
29     properties:
30       resources:
31         type: list
32         entry_schema:
33           type: string
34
35   verigraph.types.Dpi:
36     derived_from: tosca.nodes.Root
37     description: verigraph Dpi node
38     properties:
39       notAllowedList:
40         type: list
41         entry_schema:
42           type: string
43
44   verigraph.types.Endhost:
45     derived_from: tosca.nodes.Root
46     description: verigraph endhost node
47     attributes:
48       body:
49         type: string
50       sequence:
51         type: integer
52       protocol:
53         type: string
54         constraints:
55           - valid_values: [ HTTP_REQUEST, HTTP_RESPONSE, POP3_REQUEST, POP3_RESOPONSE ]
56       email_from:
57         type: string
58       url:
59         type: string
60       options:
61         type: string
62       destination:
63         type: string
64
65   verigraph.types.Endpoint:
66     derived_from: tosca.nodes.Root
67     description: verigraph Endpoint node
68     properties:
69       names:
70         type: list
71         entry_schema:
72           type: string
73
74   verigraph.types.FieldModifier:
75     derived_from: tosca.nodes.Root
76     description: verigraph Field Modifier node
77     properties:
78       names:
79         type: list
80         entry_schema:
81           type: string
82
83   verigraph.types.Firewall:
84     derived_from: tosca.nodes.Root
85     description: verigraph Firewall node
86     properties:
87       elements:
88         type: map
89         entry_schema:
90           description: "source : destination" firewall mapping
91           type: string
92
93   verigraph.types.MailClient:
94     derived_from: tosca.nodes.Root
95     description: verigraph Mail Client node
96     attributes:
97       mailserver:
98         type: string
99
100   verigraph.types.MailServer:
101     derived_from: tosca.nodes.Root
102     descrtiption: verigraph Mail Server node
103     properties:
104       names:
105         type: list
106         entry_schema:
107           type: string
108
109   verigraph.types.Nat:
110     derived_from: tosca.nodes.Root
111     descrtiption: verigraph Nat node
112     properties:
113       sources:
114         type: list
115         entry_schema:
116           type: string
117
118   verigraph.types.VpnAccess:
119     deriver_from: tosca.nodes.Root
120     descrtiption: verigraph Vpn Access node
121     attributes:
122       vpnexit:
123         type: string
124
125   verigraph.types.VpnExit:
126     derived_from: tosca.nodes.Root
127     descrtiption: verigraph Vpn Exit node
128     attributes:
129       vpnaccess:
130         type: string
131
132   verigraph.types.WebClient:
133     derived_from: tosca.nodes.Root
134     descrtiption: verigraph web Client node
135     attributes:
136       nameWebServer:
137         type: string
138
139   verigraph.types.WebServer:
140     derived_from: tosca.nodes.Root
141     descrtiption: verigraph web Server node
142     properties:
143       names:
144         type: list
145         entry_schema:
146           type: string
147
148 relationship_types:
149   verigraph.relationshipType.generic:
150     derived_from: tosca.relationships.Root
151     properties:
152       name:
153         type: string
154       source_id:
155         type: string
156       target_id:
157         type: string