Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
D
DC-yang
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Matias Richart
DC-yang
Commits
b649752f
Commit
b649752f
authored
2 years ago
by
Matias Richart
Browse files
Options
Downloads
Patches
Plain Diff
Yang completo
parent
c993e59c
No related branches found
No related tags found
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
ietf-dcpop-dc@2022-07-11.yang
+287
-115
287 additions, 115 deletions
ietf-dcpop-dc@2022-07-11.yang
uml/ietf-dcpop-dc@2022-07-11.uml
+118
-17
118 additions, 17 deletions
uml/ietf-dcpop-dc@2022-07-11.uml
with
405 additions
and
132 deletions
ietf-dcpop-dc@2022-07-11.yang
+
287
−
115
View file @
b649752f
...
...
@@ -3,45 +3,10 @@ module ietf-dcpop-dc {
namespace
"urn:ietf:params:xml:ns:yang:ietf-dcpop-dc"
;
prefix
dcpop-dc
;
/* Import inet-types */
import
ietf-inet-types
{
prefix
inet
;
reference
"RFC 6991: Common YANG Data Types"
;
}
/* Import network */
import
ietf-network
{
prefix
nw
;
reference
"RFC 8345: A YANG Data Model for Network Topologies"
;
}
/* Import network topology */
import
ietf-network-topology
{
prefix
nt
;
reference
"RFC 8345: A YANG Data Model for Network Topologies"
;
}
/* Import TE Common types */
import
ietf-te-types
{
prefix
te-types
;
reference
"RFC 8776: Common YANG Data Types for Traffic Engineering"
;
}
/* Import TE Topology */
import
ietf-te-topology
{
prefix
tet
;
reference
"RFC 8795: YANG Data Model for Traffic Engineering (TE)
Topologies"
;
""
;
}
import
ietf-vn
{
...
...
@@ -103,11 +68,6 @@ module ietf-dcpop-dc {
grouping
datacenter
{
description
"Datacenter related information"
;
leaf
id
{
type
string
;
description
"A unique identifier for the referred datacenter"
;
}
list
hypervisor
{
key
"id"
;
description
...
...
@@ -126,6 +86,44 @@ module ietf-dcpop-dc {
"The instance information"
;
}
}
list
image
{
key
"id"
;
description
"instance identifier"
;
uses
image
{
description
"The image information"
;
}
}
list
flavor
{
key
"id"
;
description
"instance identifier"
;
uses
flavor
{
description
"The flavor information"
;
}
}
list
dc-monitoring-param
{
key
"name"
;
description
""
;
leaf
name
{
type
string
;
}
leaf
value-string
{
type
string
;
}
}
list
network
{
key
"id"
;
description
"network identifier"
;
uses
network
{
description
"The network information"
;
}
}
leaf-list
ap
{
type
leafref
{
path
"/actn-vn:access-point/actn-vn:ap/actn-vn:ap-id"
;
...
...
@@ -133,6 +131,21 @@ module ietf-dcpop-dc {
description
"A reference to the access point node in the TE Topology"
;
}
leaf
dcpop-ref
{
type
leafref
{
path
"/dcpop/dcpop-id"
;
}
}
leaf
id
{
type
string
;
description
"A unique identifier for the referred datacenter"
;
}
leaf
name
{
type
string
;
description
""
;
}
}
//datacenter
grouping
hypervisor
{
...
...
@@ -220,84 +233,12 @@ module ietf-dcpop-dc {
container
flavor
{
description
"The flavor characteristics of the instance"
;
leaf
disk
{
type
uint32
;
description
""
;
}
leaf
ram
{
type
uint32
;
description
""
;
}
leaf
vcpus
{
type
uint16
;
description
""
;
}
leaf
bandwidth
{
type
uint32
;
description
""
;
}
leaf
id
{
type
string
;
description
""
;
}
leaf
name
{
type
string
;
description
""
;
}
uses
flavor
;
}
container
image
{
description
"The image characteristics of the instance"
;
leaf
checksum
{
type
string
;
description
""
;
}
leaf
size
{
type
uint32
;
description
""
;
}
container
format
{
description
""
;
leaf
container
{
type
enumeration
{
enum
zero
{
value
0
;
description
"Ni idea que va aca"
;
}
}
description
""
;
}
leaf
disk
{
type
enumeration
{
enum
zero
{
value
0
;
description
"Ni idea que va aca"
;
}
}
}
}
leaf
id
{
type
string
;
description
""
;
}
leaf
name
{
type
string
;
description
""
;
}
uses
image
;
}
leaf
hypervisor
{
type
leafref
{
...
...
@@ -339,6 +280,232 @@ module ietf-dcpop-dc {
}
}
//instance
grouping
image
{
description
"The image characteristics of the instance"
;
leaf
checksum
{
type
string
;
description
""
;
}
leaf
size
{
type
uint32
;
description
""
;
}
container
format
{
description
""
;
leaf
container
{
type
enumeration
{
enum
zero
{
value
0
;
description
"Ni idea que va aca"
;
}
}
description
""
;
}
leaf
disk
{
type
enumeration
{
enum
zero
{
value
0
;
description
"Ni idea que va aca"
;
}
}
}
}
leaf
id
{
type
string
;
description
""
;
}
leaf
name
{
type
string
;
description
""
;
}
}
grouping
flavor
{
description
"The flavor characteristics of the instance"
;
leaf
disk
{
type
uint32
;
description
""
;
}
leaf
ram
{
type
uint32
;
description
""
;
}
leaf
vcpus
{
type
uint16
;
description
""
;
}
leaf
bandwidth
{
type
uint32
;
description
""
;
}
leaf
id
{
type
string
;
description
""
;
}
leaf
name
{
type
string
;
description
""
;
}
}
grouping
port
{
leaf
ip-address
{
type
inet
:
ip-address
;
}
leaf
instance
{
type
leafref
{
path
"/dcpop/dc/instance/id"
;
}
}
leaf
project
{
type
string
;
description
""
;
}
leaf
status
{
type
enumeration
{
enum
zero
{
value
0
;
description
"Ni idea que va aca"
;
}
}
}
leaf
id
{
type
string
;
description
"A unique identifier for the referred instance"
;
}
leaf
name
{
type
string
;
description
""
;
}
}
grouping
dhcp-agent
{
leaf
enabled
{
type
boolean
;
}
list
pools
{
key
"ip-address"
;
leaf
ip-address
{
type
inet
:
ip-address
;
}
}
leaf
project
{
type
string
;
description
""
;
}
leaf
status
{
type
enumeration
{
enum
zero
{
value
0
;
description
"Ni idea que va aca"
;
}
}
}
leaf
id
{
type
string
;
description
"A unique identifier for the referred instance"
;
}
leaf
name
{
type
string
;
description
""
;
}
}
grouping
subnetwork
{
list
port
{
key
"id"
;
uses
port
;
}
leaf
project
{
type
string
;
description
""
;
}
leaf
status
{
type
enumeration
{
enum
zero
{
value
0
;
description
"Ni idea que va aca"
;
}
}
}
leaf
id
{
type
string
;
description
"A unique identifier for the referred instance"
;
}
leaf
name
{
type
string
;
description
""
;
}
}
grouping
network
{
list
subnetwork
{
key
"id"
;
uses
subnetwork
;
}
list
dhcp-agent
{
key
"id"
;
uses
dhcp-agent
;
}
leaf
project
{
type
string
;
description
""
;
}
leaf
status
{
type
enumeration
{
enum
zero
{
value
0
;
description
"Ni idea que va aca"
;
}
}
}
leaf
id
{
type
string
;
description
"A unique identifier for the referred instance"
;
}
leaf
name
{
type
string
;
description
""
;
}
leaf
dcpop-ref
{
type
leafref
{
path
"/dcpop/dcpop-id"
;
}
}
}
/* Configuration data nodes */
...
...
@@ -354,6 +521,11 @@ module ietf-dcpop-dc {
"The datacanter information"
;
}
}
leaf
dcpop-id
{
type
string
;
description
"A unique identifier for the referred dcpop"
;
}
reference
" "
;
}
...
...
This diff is collapsed.
Click to expand it.
uml/ietf-dcpop-dc@2022-07-11.uml
+
118
−
17
View file @
b649752f
...
...
@@ -14,39 +14,140 @@ page 1x1
Title ietf-dcpop-dc
package "inet:ietf-inet-types" as inet_ietf_inet_types {
}
package "nw:ietf-network" as nw_ietf_network {
}
package "nt:ietf-network-topology" as nt_ietf_network_topology {
}
package "te-types:ietf-te-types" as te_types_ietf_te_types {
}
package "tet:ietf-te-topology" as tet_ietf_te_topology {
}
package "actn-vn:ietf-vn" as actn_vn_ietf_vn {
}
note top of dcpop_dc_ietf_dcpop_dc : <b>Namespace: </b> urn:ietf:params:xml:ns:yang:ietf-dcpop-dc \n<b>Prefix: </b> dcpop-dc \n<b>Organization : </b>\nIETF Traffic Engineering Architecture and Signaling (TEAS) \nWorking Group \n<b>Contact : </b>\nWG Web: <https://tools.ietf.org/wg/teas/> \nWG List: <mailto:teas@ietf.org> \nEditor: Young Lee <younglee.tx@gmail.com> \n : Dhruv Dhody <dhruv.ietf@gmail.com> \n<b>Revision : </b> 2022-
11
-1
6
\n
note top of dcpop_dc_ietf_dcpop_dc : <b>Namespace: </b> urn:ietf:params:xml:ns:yang:ietf-dcpop-dc \n<b>Prefix: </b> dcpop-dc \n<b>Organization : </b>\nIETF Traffic Engineering Architecture and Signaling (TEAS) \nWorking Group \n<b>Contact : </b>\nWG Web: <https://tools.ietf.org/wg/teas/> \nWG List: <mailto:teas@ietf.org> \nEditor: Young Lee <younglee.tx@gmail.com> \n : Dhruv Dhody <dhruv.ietf@gmail.com> \n<b>Revision : </b> 2022-
07
-1
1
\n
package "dcpop-dc:ietf-dcpop-dc" as dcpop_dc_ietf_dcpop_dc {
inet_ietf_inet_types +-- dcpop_dc_ietf_dcpop_dc
nw_ietf_network +-- dcpop_dc_ietf_dcpop_dc
nt_ietf_network_topology +-- dcpop_dc_ietf_dcpop_dc
te_types_ietf_te_types +-- dcpop_dc_ietf_dcpop_dc
tet_ietf_te_topology +-- dcpop_dc_ietf_dcpop_dc
actn_vn_ietf_vn +-- dcpop_dc_ietf_dcpop_dc
class "ietf-dcpop-dc" as ietf_dcpop_dc << (M, #33CCFF) module>>
class "dc-id" as dc_id << (T, YellowGreen) typedef>>
dc_id : string
class "datacenter" as ietf_dcpop_dc_I_datacenter_grouping <<(G,Lime) grouping>>
ietf_dcpop_dc_I_datacenter_grouping : dc-id : dc-id
class "hypervisor" as ietf_dcpop_dc_I_datacenter_I_hypervisor << (L, #FF7700) list>>
ietf_dcpop_dc_I_datacenter_grouping *-- "0..N" ietf_dcpop_dc_I_datacenter_I_hypervisor
ietf_dcpop_dc_I_datacenter_I_hypervisor : hypervisor {uses}
class "instance" as ietf_dcpop_dc_I_datacenter_I_instance << (L, #FF7700) list>>
ietf_dcpop_dc_I_datacenter_grouping *-- "0..N" ietf_dcpop_dc_I_datacenter_I_instance
ietf_dcpop_dc_I_datacenter_I_instance : instance {uses}
class "image" as ietf_dcpop_dc_I_datacenter_I_image << (L, #FF7700) list>>
ietf_dcpop_dc_I_datacenter_grouping *-- "0..N" ietf_dcpop_dc_I_datacenter_I_image
ietf_dcpop_dc_I_datacenter_I_image : image {uses}
class "flavor" as ietf_dcpop_dc_I_datacenter_I_flavor << (L, #FF7700) list>>
ietf_dcpop_dc_I_datacenter_grouping *-- "0..N" ietf_dcpop_dc_I_datacenter_I_flavor
ietf_dcpop_dc_I_datacenter_I_flavor : flavor {uses}
class "dc-monitoring-param" as ietf_dcpop_dc_I_datacenter_I_dc_monitoring_param << (L, #FF7700) list>>
ietf_dcpop_dc_I_datacenter_grouping *-- "0..N" ietf_dcpop_dc_I_datacenter_I_dc_monitoring_param
ietf_dcpop_dc_I_datacenter_I_dc_monitoring_param : +name : string {key}
ietf_dcpop_dc_I_datacenter_I_dc_monitoring_param : value-string : string
class "network" as ietf_dcpop_dc_I_datacenter_I_network << (L, #FF7700) list>>
ietf_dcpop_dc_I_datacenter_grouping *-- "0..N" ietf_dcpop_dc_I_datacenter_I_network
ietf_dcpop_dc_I_datacenter_I_network : network {uses}
ietf_dcpop_dc_I_datacenter_grouping : ap []: leafref : /actn-vn:access-point/actn-vn:ap/actn-vn:ap-id
ietf_dcpop_dc_I_datacenter_grouping : dcpop-ref : leafref : /dcpop/dcpop-id
ietf_dcpop_dc_I_datacenter_grouping : +id : string {key}
ietf_dcpop_dc_I_datacenter_grouping : name : string
class "hypervisor" as ietf_dcpop_dc_I_hypervisor_grouping <<(G,Lime) grouping>>
class "ram" as ietf_dcpop_dc_I_hypervisor_I_ram <<container>>
ietf_dcpop_dc_I_hypervisor_grouping *-- "1" ietf_dcpop_dc_I_hypervisor_I_ram
ietf_dcpop_dc_I_hypervisor_I_ram : total : uint32
ietf_dcpop_dc_I_hypervisor_I_ram : used : uint32
ietf_dcpop_dc_I_hypervisor_I_ram : free : uint32
class "disk" as ietf_dcpop_dc_I_hypervisor_I_disk <<container>>
ietf_dcpop_dc_I_hypervisor_grouping *-- "1" ietf_dcpop_dc_I_hypervisor_I_disk
ietf_dcpop_dc_I_hypervisor_I_disk : total : uint32
ietf_dcpop_dc_I_hypervisor_I_disk : used : uint32
ietf_dcpop_dc_I_hypervisor_I_disk : free : uint32
class "vcpu" as ietf_dcpop_dc_I_hypervisor_I_vcpu <<container>>
ietf_dcpop_dc_I_hypervisor_grouping *-- "1" ietf_dcpop_dc_I_hypervisor_I_vcpu
ietf_dcpop_dc_I_hypervisor_I_vcpu : total : uint16
ietf_dcpop_dc_I_hypervisor_I_vcpu : used : uint16
ietf_dcpop_dc_I_hypervisor_I_vcpu : free : uint16
ietf_dcpop_dc_I_hypervisor_grouping : instance []: leafref : /dcpop/dc/instance/id
ietf_dcpop_dc_I_hypervisor_grouping : +id : string {key}
ietf_dcpop_dc_I_hypervisor_grouping : name : string
class "instance" as ietf_dcpop_dc_I_instance_grouping <<(G,Lime) grouping>>
class "flavor" as ietf_dcpop_dc_I_instance_I_flavor <<container>>
ietf_dcpop_dc_I_instance_grouping *-- "1" ietf_dcpop_dc_I_instance_I_flavor
ietf_dcpop_dc_I_instance_I_flavor : flavor {uses}
class "image" as ietf_dcpop_dc_I_instance_I_image <<container>>
ietf_dcpop_dc_I_instance_grouping *-- "1" ietf_dcpop_dc_I_instance_I_image
ietf_dcpop_dc_I_instance_I_image : image {uses}
ietf_dcpop_dc_I_instance_grouping : hypervisor : leafref : /dcpop/dc/hypervisor/id
ietf_dcpop_dc_I_instance_grouping : project : string
ietf_dcpop_dc_I_instance_grouping : status : enumeration : {zero,}
ietf_dcpop_dc_I_instance_grouping : +id : string {key}
ietf_dcpop_dc_I_instance_grouping : name : string
class "image" as ietf_dcpop_dc_I_image_grouping <<(G,Lime) grouping>>
ietf_dcpop_dc_I_image_grouping : checksum : string
ietf_dcpop_dc_I_image_grouping : size : uint32
class "format" as ietf_dcpop_dc_I_image_I_format <<container>>
ietf_dcpop_dc_I_image_grouping *-- "1" ietf_dcpop_dc_I_image_I_format
ietf_dcpop_dc_I_image_I_format : container : enumeration : {zero,}
ietf_dcpop_dc_I_image_I_format : disk : enumeration : {zero,}
ietf_dcpop_dc_I_image_grouping : +id : string {key}
ietf_dcpop_dc_I_image_grouping : name : string
class "flavor" as ietf_dcpop_dc_I_flavor_grouping <<(G,Lime) grouping>>
ietf_dcpop_dc_I_flavor_grouping : disk : uint32
ietf_dcpop_dc_I_flavor_grouping : ram : uint32
ietf_dcpop_dc_I_flavor_grouping : vcpus : uint16
ietf_dcpop_dc_I_flavor_grouping : bandwidth : uint32
ietf_dcpop_dc_I_flavor_grouping : +id : string {key}
ietf_dcpop_dc_I_flavor_grouping : name : string
class "port" as ietf_dcpop_dc_I_port_grouping <<(G,Lime) grouping>>
ietf_dcpop_dc_I_port_grouping : ip-address : inet:ip-address
ietf_dcpop_dc_I_port_grouping : instance : leafref : /dcpop/dc/instance/id
ietf_dcpop_dc_I_port_grouping : project : string
ietf_dcpop_dc_I_port_grouping : status : enumeration : {zero,}
ietf_dcpop_dc_I_port_grouping : +id : string {key}
ietf_dcpop_dc_I_port_grouping : name : string
class "dhcp-agent" as ietf_dcpop_dc_I_dhcp_agent_grouping <<(G,Lime) grouping>>
ietf_dcpop_dc_I_dhcp_agent_grouping : enabled : boolean
class "pools" as ietf_dcpop_dc_I_dhcp_agent_I_pools << (L, #FF7700) list>>
ietf_dcpop_dc_I_dhcp_agent_grouping *-- "0..N" ietf_dcpop_dc_I_dhcp_agent_I_pools
ietf_dcpop_dc_I_dhcp_agent_I_pools : +ip-address : inet:ip-address {key}
ietf_dcpop_dc_I_dhcp_agent_grouping : project : string
ietf_dcpop_dc_I_dhcp_agent_grouping : status : enumeration : {zero,}
ietf_dcpop_dc_I_dhcp_agent_grouping : id : string
ietf_dcpop_dc_I_dhcp_agent_grouping : name : string
class "subnetwork" as ietf_dcpop_dc_I_subnetwork_grouping <<(G,Lime) grouping>>
class "port" as ietf_dcpop_dc_I_subnetwork_I_port << (L, #FF7700) list>>
ietf_dcpop_dc_I_subnetwork_grouping *-- "0..N" ietf_dcpop_dc_I_subnetwork_I_port
ietf_dcpop_dc_I_subnetwork_I_port : port {uses}
ietf_dcpop_dc_I_subnetwork_grouping : project : string
ietf_dcpop_dc_I_subnetwork_grouping : status : enumeration : {zero,}
ietf_dcpop_dc_I_subnetwork_grouping : +id : string {key}
ietf_dcpop_dc_I_subnetwork_grouping : name : string
class "network" as ietf_dcpop_dc_I_network_grouping <<(G,Lime) grouping>>
class "subnetwork" as ietf_dcpop_dc_I_network_I_subnetwork << (L, #FF7700) list>>
ietf_dcpop_dc_I_network_grouping *-- "0..N" ietf_dcpop_dc_I_network_I_subnetwork
ietf_dcpop_dc_I_network_I_subnetwork : subnetwork {uses}
class "dhcp-agent" as ietf_dcpop_dc_I_network_I_dhcp_agent << (L, #FF7700) list>>
ietf_dcpop_dc_I_network_grouping *-- "0..N" ietf_dcpop_dc_I_network_I_dhcp_agent
ietf_dcpop_dc_I_network_I_dhcp_agent : dhcp-agent {uses}
ietf_dcpop_dc_I_network_grouping : project : string
ietf_dcpop_dc_I_network_grouping : status : enumeration : {zero,}
ietf_dcpop_dc_I_network_grouping : +id : string {key}
ietf_dcpop_dc_I_network_grouping : name : string
ietf_dcpop_dc_I_network_grouping : dcpop-ref : leafref : /dcpop/dcpop-id
class "dcpop" as ietf_dcpop_dc_I_dcpop <<container>>
ietf_dcpop_dc *-- "1" ietf_dcpop_dc_I_dcpop
class "dc" as ietf_dcpop_dc_I_dcpop_I_dc << (L, #FF7700) list>>
ietf_dcpop_dc_I_dcpop *-- "0..N" ietf_dcpop_dc_I_dcpop_I_dc
ietf_dcpop_dc_I_dcpop_I_dc : datacenter {uses}
ietf_dcpop_dc_I_dcpop : dcpop-id : string
}
ietf_dcpop_dc_I_datacenter_I_hypervisor --> ietf_dcpop_dc_I_hypervisor_grouping : uses
ietf_dcpop_dc_I_datacenter_I_instance --> ietf_dcpop_dc_I_instance_grouping : uses
ietf_dcpop_dc_I_datacenter_I_image --> ietf_dcpop_dc_I_image_grouping : uses
ietf_dcpop_dc_I_datacenter_I_flavor --> ietf_dcpop_dc_I_flavor_grouping : uses
ietf_dcpop_dc_I_datacenter_I_network --> ietf_dcpop_dc_I_network_grouping : uses
ietf_dcpop_dc_I_instance_I_flavor --> ietf_dcpop_dc_I_flavor_grouping : uses
ietf_dcpop_dc_I_instance_I_image --> ietf_dcpop_dc_I_image_grouping : uses
ietf_dcpop_dc_I_subnetwork_I_port --> ietf_dcpop_dc_I_port_grouping : uses
ietf_dcpop_dc_I_network_I_subnetwork --> ietf_dcpop_dc_I_subnetwork_grouping : uses
ietf_dcpop_dc_I_network_I_dhcp_agent --> ietf_dcpop_dc_I_dhcp_agent_grouping : uses
ietf_dcpop_dc_I_dcpop_I_dc --> ietf_dcpop_dc_I_datacenter_grouping : uses
center footer
<size:20> UML Generated : 2022-11-1
7
16:5
1
</size>
<size:20> UML Generated : 2022-11-1
8
16:
2
5 </size>
endfooter
@enduml
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment