Skip to content

Commit ddfda89

Browse files
finish adding the profile :)
1 parent 32940eb commit ddfda89

7 files changed

Lines changed: 451 additions & 37 deletions

File tree

engine/schema/src/main/resources/nimble/resource-types/README.md

Lines changed: 0 additions & 35 deletions
This file was deleted.
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing,
12+
# software distributed under the License is distributed on an
13+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
# KIND, either express or implied. See the License for the
15+
# specific language governing permissions and limitations
16+
# under the License.
17+
tosca_definitions_version: tosca_2_0
18+
19+
description: >
20+
AutoScalingVmProfile node type definition.
21+
22+
data_types:
23+
NameValueMapping:
24+
properties:
25+
name:
26+
type: string
27+
description: The name of the key-value pair.
28+
required: true
29+
value:
30+
type: string
31+
description: The value of the key-value pair.
32+
required: true
33+
34+
node_types:
35+
AutoScalingVmProfile:
36+
properties:
37+
zone-id:
38+
type: string
39+
description: The ID of the availability zone.
40+
required: true
41+
service-offering-id:
42+
type: string
43+
description: Service offering ID for the VMs in the auto scaling VM profile.
44+
required: true
45+
template-id:
46+
type: string
47+
description: The ID of the template from which the VMs will be launched.
48+
required: true
49+
user-data-id:
50+
type: string
51+
description: The ID of the user data.
52+
required: false
53+
user-data-details:
54+
type: map
55+
entry_schema:
56+
type: string
57+
description: User data details.
58+
required: false
59+
user-data:
60+
type: string
61+
description: User data.
62+
required: false
63+
other-deploy-params:
64+
type: list
65+
entry_schema:
66+
type: NameValueMapping
67+
description: Other deployment parameters.
68+
required: false
69+
expunge-vm-grace-period:
70+
type: integer
71+
description: The time allowed for existing connections to get closed before a VM is expunged.
72+
required: false
73+
name:
74+
type: string
75+
description: The name of the auto scaling VM profile.
76+
required: false
77+
description:
78+
type: string
79+
description: The description of the auto scaling VM profile.
80+
required: false
81+
account:
82+
type: string
83+
description: "The name of the account associated with the auto scaling VM profile. It must be used with the 'domain-id' property."
84+
required: false
85+
domain-id:
86+
type: string
87+
description: The domain ID associated with the auto scaling VM profile.
88+
required: false
89+
project-id:
90+
type: string
91+
description: The project ID associated with the auto scaling VM profile.
92+
required: false
93+
auto-scale-user-id:
94+
type: string
95+
description: The ID of the user used to launch and destroy the VMs.
96+
required: false
97+
network-id:
98+
type: string
99+
description: The ID of the network in which the auto scaling VM profile will be launched.
100+
required: false
101+
counter-parameters:
102+
type: list
103+
entry_schema:
104+
type: NameValueMapping
105+
required: false
106+
description: Counter parameters list.
107+
attributes:
108+
id:
109+
type: string
110+
description: The ID of the auto scaling VM profile.

engine/schema/src/main/resources/nimble/resource-types/kubernetes-cluster.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,17 +25,21 @@ data_types:
2525
node:
2626
type: string
2727
description: "Node type (e.g. 'control', 'worker') for which the offering will be applied."
28+
required: true
2829
offering:
2930
type: string
3031
description: ID of the service offering to be used for this node type.
32+
required: true
3133
NodeTemplate:
3234
properties:
3335
node:
3436
type: string
3537
description: "Node type (e.g. 'control', 'worker') for which the template will be used."
38+
required: true
3639
template:
3740
type: string
3841
description: ID of the template to be used for this node type.
42+
required: true
3943

4044
node_types:
4145
KubernetesCluster:

engine/schema/src/main/resources/nimble/resource-types/load-balancer-attachment.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,11 @@ data_types:
2525
virtual-machine-id:
2626
type: string
2727
description: The ID of the virtual machine.
28+
required: true
2829
ip:
2930
type: string
3031
description: The internal IP address of the virtual machine.
32+
required: true
3133

3234
node_types:
3335
LoadBalancerAttachment:
Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing,
12+
# software distributed under the License is distributed on an
13+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
# KIND, either express or implied. See the License for the
15+
# specific language governing permissions and limitations
16+
# under the License.
17+
tosca_definitions_version: tosca_2_0
18+
19+
description: >
20+
NetworkOffering node type definition.
21+
22+
data_types:
23+
NetworkServiceProviderMapping:
24+
properties:
25+
service:
26+
type: string
27+
description: The network service.
28+
required: true
29+
provider:
30+
type: string
31+
description: The network service provider.
32+
required: true
33+
ServiceCapability:
34+
properties:
35+
capability-type:
36+
type: string
37+
description: The capability type.
38+
required: true
39+
capability-value:
40+
type: string
41+
description: The capability value.
42+
required: true
43+
44+
node_types:
45+
NetworkOffering:
46+
properties:
47+
name:
48+
type: string
49+
description: Name of the network offering.
50+
required: true
51+
guest-ip-type:
52+
type: string
53+
description: "The type of the network created from the offering. Valid values are 'isolated', 'l2' and 'shared'."
54+
validation: { $valid_values: [ $value, [ isolated, l2, shared ] ] }
55+
required: true
56+
traffic-type:
57+
type: string
58+
description: The traffic type of the network offering.
59+
required: true
60+
display-text:
61+
type: string
62+
description: Display text of the network offering.
63+
required: false
64+
zone-id:
65+
type: string
66+
description: The ID of the availability zone. If not specified, the network offering will be public.
67+
required: false
68+
domain-id:
69+
type: string
70+
description: The ID of the domain for which the network offering will be available. If not specified, the compute offering will be public.
71+
required: false
72+
enable:
73+
type: boolean
74+
description: Whether the network offering will be enabled during creation.
75+
required: false
76+
internet-protocol:
77+
type: string
78+
description: "The internet protocol of the offering. Valid values are 'ipv4' and 'dualstack'."
79+
validation: { $valid_values: [ $value, [ ipv4, dualstack ] ] }
80+
required: false
81+
for-vpc:
82+
type: boolean
83+
description: Whether the network offering is for VPC tiers.
84+
required: false
85+
egress-default-policy:
86+
type: string
87+
description: "The default egress policy for the network created from the offering. Valid values are 'allow' and 'deny'."
88+
validation: { $valid_values: [ $value, [ allow, deny ] ] }
89+
required: false
90+
supported-services:
91+
type: list
92+
entry_schema:
93+
type: string
94+
description: The network services supported by the offering.
95+
required: false
96+
service-provider-list:
97+
type: list
98+
entry_schema:
99+
type: NetworkServiceProviderMapping
100+
description: The network services mapped to their providers.
101+
required: false
102+
service-offering-id:
103+
type: string
104+
description: The ID of the network service offering for the network router.
105+
required: false
106+
tags:
107+
type: list
108+
entry_schema:
109+
type: string
110+
description: The list of tags associated with the network offering.
111+
specify-vlan:
112+
type: boolean
113+
description: Whether the network offering requires a VLAN ID to be specified..
114+
required: false
115+
specify-ip-ranges:
116+
type: boolean
117+
description: Whether the network offering requires IP ranges to be specified.
118+
required: false
119+
network-rate:
120+
type: integer
121+
description: The network rate in Mbps.
122+
required: false
123+
persistent:
124+
type: boolean
125+
description: Whether the network created from this offering will be persistent.
126+
required: false
127+
conserve-mode:
128+
type: boolean
129+
description: Whether the conserve mode is enabled.
130+
service-capability-list:
131+
type: list
132+
entry_schema:
133+
type: ServiceCapability
134+
description: The list of service capabilities.
135+
required: false
136+
attributes:
137+
id:
138+
type: string
139+
description: The ID of the network offering.

0 commit comments

Comments
 (0)