diff --git a/example-data/complex-vnfd.xml b/example-data/complex-vnfd.xml new file mode 100644 index 0000000..8aee7fc --- /dev/null +++ b/example-data/complex-vnfd.xml @@ -0,0 +1,260 @@ + + + + complex-vnf + ACME + complex-vnf + 1.0 + 1.0 + netconf + + control-plane-active + control-plane-active + + internal + internal-vl + IPv4 + + + mgmt + mgmt + IPv4 + + CP + root + CP + + + control-plane-standby + control-plane-standby + + internal + internal-vl + IPv4 + + + mgmt + mgmt + IPv4 + + CP + root + CP + + + data-plane + data-plane + + in + IPv4 + + + internal + internal-vl + IPv4 + + + out + IPv4 + + DP + root + DP + + + CP + + 16.0 + + + 8 + + + + DP + + 32.0 + + + 16 + + + + root + root + 10 + + + CP + CP + bare + qcow2 + http://acme.images.com/control-plane.qcow2 + + + DP + DP + bare + qcow2 + http://acme.images.com/data-plane.qcow2 + + + internal-vl + + + IPv4 + + + + + mgmt + + + IPv4 + + + + + in + + data-plane + in + + IPv4 + + + mgmt + mgmt + IPv4 + + + out + + data-plane + out + + IPv4 + + + gold + + control-plane-active + 1 + 1 + + control-plane + + + + control-plane-standby + 1 + 1 + + control-plane + + + + data-plane + 2 + 8 + + + il-1 + + control-plane-active + 1 + + + control-plane-standby + 1 + + + data-plane + 2 + + + + il-2 + + control-plane-active + 1 + + + control-plane-standby + 1 + + + data-plane + 4 + + + il-1 + + control-plane + anti-affinity + nfvi-node + + + + silver + + control-plane-active + 1 + 1 + + control-plane + + + + control-plane-standby + 1 + 1 + + control-plane + + + + data-plane + 1 + 4 + + + il-1 + + control-plane-active + 1 + + + control-plane-standby + 1 + + + data-plane + 1 + + + + il-2 + + control-plane-active + 1 + + + control-plane-standby + 1 + + + data-plane + 2 + + + il-1 + + control-plane + anti-affinity + nfvi-node + + + + + diff --git a/example-data/nfv.xml b/example-data/nfv.xml index ddfd65a..23a6b64 100644 --- a/example-data/nfv.xml +++ b/example-data/nfv.xml @@ -25,7 +25,7 @@ asa-vsd asa-image - + asa-vcd 4.0 @@ -33,7 +33,7 @@ 2 - + asa-vsd root @@ -120,7 +120,7 @@ csr-vsd csr-image - + csr-vcd 4.0 @@ -128,7 +128,7 @@ 2 - + csr-vsd root diff --git a/run-test.sh b/run-test.sh index 36bc6ec..e45d593 100755 --- a/run-test.sh +++ b/run-test.sh @@ -15,8 +15,10 @@ confdc -c $CONFD_OPTS -o /opt/confd/etc/confd/etsi-nfv.fxs etsi-nfv.yang echo "Starting ConfD" confd -echo "Loading Data" +echo "Loading data for the simple example" confd_load -l -m nfv.xml +echo "Loading data for the complex Vnfd example" +confd_load -l -m complex-vnfd.xml # Don't do this in the actual test, just waste of cycles # echo "Stopping ConfD" diff --git a/src/yang/etsi-nfv-vnf.yang b/src/yang/etsi-nfv-vnf.yang index cc08efb..eaae5e7 100755 --- a/src/yang/etsi-nfv-vnf.yang +++ b/src/yang/etsi-nfv-vnf.yang @@ -82,7 +82,7 @@ submodule etsi-nfv-vnf { } leaf nicio-requirements { type leafref { - path "/nfv/vnfd/virtual-compute-descriptor/id"; + path "/nfv/vnfd/virtual-compute-desc/id"; } description "This references (couples) the CPD with any logical node I/O @@ -295,10 +295,10 @@ submodule etsi-nfv-vnf { } leaf virtual-compute-desc { type leafref { - path "../../nfv:virtual-compute-descriptor/" + + path "../../nfv:virtual-compute-desc/" + "nfv:id"; } - must "../../nfv:virtual-compute-descriptor[id=current()]/" + + must "../../nfv:virtual-compute-desc[id=current()]/" + "nfv:virtual-memory/size >=" + "../../nfv:sw-image-desc[id=current()/" + "../sw-image-desc]/min-ram" { @@ -419,7 +419,7 @@ submodule etsi-nfv-vnf { } } - list virtual-compute-descriptor { + list virtual-compute-desc { key "id"; description "Defines descriptors of virtual compute resources to be