X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osmclient%2Ftemplates%2Fvnfd_old.yaml.j2;fp=osmclient%2Ftemplates%2Fvnfd_old.yaml.j2;h=7da40867340fc065c953aed65d55dda4d14d2f98;hb=134d87495b22e068a39616ae61860d2be803b7a9;hp=0000000000000000000000000000000000000000;hpb=70208ca1de7ff0e91a17d8f918d5b6044e9fa388;p=osm%2Fosmclient.git diff --git a/osmclient/templates/vnfd_old.yaml.j2 b/osmclient/templates/vnfd_old.yaml.j2 new file mode 100644 index 0000000..7da4086 --- /dev/null +++ b/osmclient/templates/vnfd_old.yaml.j2 @@ -0,0 +1,334 @@ +# Copyright 2021 ETSI OSM +# +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +vnfd-catalog: + schema-version: "v3.0" + vnfd: + - id: {{ name }}_vnfd + name: {{ name }}_vnfd + short-name: {{ name }}_vnfd + description: Generated by OSM package generator + vendor: OSM + version: '1.0' + + {%- if detailed is sameas true %} + #Place the logo as png in icons directory and provide the name here + #logo: + + {%- endif %} + + # Management interface + mgmt-interface: + cp: vnf-cp0 + + # At least one VDU need to be specified + vdu: + # Additional VDUs can be created by copying the + # VDU descriptor below + - id: {{ name }}_vnfd-VM + name: {{ name }}_vnfd-VM + description: {{ name }}_vnfd-VM + count: 1 + {%- if detailed is sameas true %} + #pdu-type: + #mgmt-vpci: + {%- endif %} + + # Flavour of the VM to be instantiated for the VDU + vm-flavor: + vcpu-count: {{ vcpu }} + memory-mb: {{ memory }} + storage-gb: {{ storage }} + + # Image including the full path + image: "{{ image }}" + {%- if detailed is sameas true %} + #image-checksum: + {%- endif %} + + interface: + # Specify the external interfaces + # There can be multiple interfaces defined + - name: eth0 + type: EXTERNAL + virtual-interface: + type: PARAVIRT + {%- if detailed is sameas true %} + #vpci: + #bandwidth: + {%- endif %} + external-connection-point-ref: vnf-cp0 + {%- if detailed is sameas true %} + #internal-connection-point-ref: + #mac-address + #mgmt-interface: + {%- endif %} + + {%- for x in range(1, interfaces + 1 ) %} + - name: eth{{ x }} + type: EXTERNAL + virtual-interface: + type: PARAVIRT + {%- if detailed is sameas true %} + #vpci: + #bandwidth: + {%- endif %} + external-connection-point-ref: vnf-cp{{ x }} + {%- if detailed is sameas true %} + #internal-connection-point-ref: + #mac-address + #mgmt-interface: + {%- endif %} + {%- endfor %} + + {%- if detailed is sameas true %} + #guest-epa: + # mempage-size: + # # Choice cpu-pinning / cpu-quota + # cpu-pinning-policy: [DEDICATED, SHARED, ANY] + # cpu-thread-pinning-policy: [AVOID, SEPARATED, ISOLATE, PREFER] + # cpu-quota: + # limit: + # reserve: + # shares: + # mem-quota: + # limit: + # reserve: + # shares: + # disk-io-quota: + # limit: + # reserve: + # shares: + # vif-quota: + # limit: + # reserve: + # shares: + + #alarm: + #- alarm-id: + # vnf-monitoring-param-ref: + # operation: + # value: + # actions: + # ok: + # - url: + # insufficient-data: + # - url: + # alarm: + # - url: + # + #alternative-images: + #- vim-type: + # image: + # image-checksum: + # + #vdu-configuration: + # # Configure the VNF or VDU through Juju. + # juju: + # charm: + # proxy: + # vca-relationships: + # relation: + # - requires: + # provides: + # config-primitive: + # - name: + # parameter: + # - name: + # data-type: + # mandatory: + # default-value: + # parameter-pool: + # read-only: + # hidden: + # initial-config-primitive: + # - seq: + # name: + # parameter: + # - name: + # data-type: + # value: + # terminate-config-primitive: + # - seq: + # name: + # parameter: + # - name: + # data-type: + # value: + # metrics: + # - name: + # config-access: + # ssh-access: + # required: + # default-user: + # + #monitoring-param: + #- id: + # nfvi-metric: + # interface-name-ref: + # + ## Choice cloud-init / cloud-init-file + #cloud-init: + #cloud-init-file: + #supplemental-boot-data: + # boot-data-drive: + # + #internal-connection-point: + #- id: + # name: + # short-name: + # type: + # port-security-enabled: + # internal-vld-ref: + # + #interface: + #- name: + # position: + # mgmt-interface: + # type: + # mac-address: + # # Choice: connection-point-type | internal-connection-point-ref / external-connection-point-ref + # internal-connection-point-ref: + # external-connection-point-ref: + # virtual-interface: + # type: # PARAVIRT,OM-MGMT,PCI-PASSTHROUGH,SR-IOV,VIRTIO,E1000,RTL8139,PCNET + # vpci: + # bandwidth: + # + #volumes: + #- name: + # description: + # size: + # device-bus: # ide, usb, virtio, iscsi + # device-type: # disk, cdrom, floopy, lun + # # Choice volume-source | ephemeral / image + # ephemeral: + # image: + # image-checksum: + + #scaling-group-descriptor: + #- name: + # min-instance-count: + # max-instance-count: + # scaling-policy: + # - name: + # scaling-type: + # enabled: + # scale-in-operator-type: + # scale-out-operator-type: + # threshold-time: + # cooldown-time: + # scaling-criteria: + # - name: + # scale-in-threshold: + # scale-in-relational-operation: + # scale-out-threshold: + # scale-out-relational-operation: + # vnf-monitoring-param-ref: + # vdu: + # - vdu-id-ref: + # count: + # scaling-config-action: + # - trigger: + # vnf-config-primitive-name-ref: + + # List of monitoring params at NS level + #monitoring-param: + #- id: + # name: + # aggregation-type: + # # Choice monitoring-type | vdu-monitoring-param / vnf-metric / vdu-metric + # vdu-monitoring-param: + # vdu-ref: + # vdu-monitoring-param-ref: + # vnf-metric: + # vnfm-metric-name-ref: + # vdu-metric: + # vdu-ref: + # vdu-metric-name-ref: + # + # Placement groups at VNF Level + #placement-groups: + #- name: + # requirement: + # strategy: # COLOCATION, ISOLATION + # member-vdus: + # - member-vdu-ref: + {%- endif %} + {%- if vdus > 1 %} + {% for y in range(1, vdus ) %} + - id: {{ name }}_vnfd{{y}}-VM + name: {{ name }}_vnfd{{y}}-VM + description: {{ name }}_vnfd{{y}}-VM + count: 1 + {%- if detailed is sameas true %} + #pdu-type: + #mgmt-vpci: + {%- endif %} + + # Flavour of the VM to be instantiated for the VDU + vm-flavor: + vcpu-count: {{ vcpu }} + memory-mb: {{ memory }} + storage-gb: {{ storage }} + + # Image including the full path + image: "{{ image }}" + {%- if detailed is sameas true %} + #image-checksum: + {%- endif %} + + interface: + # Specify the external interfaces + # There can be multiple interfaces defined + - name: eth0 + type: EXTERNAL + virtual-interface: + type: PARAVIRT + {%- if detailed is sameas true %} + #vpci: + #bandwidth: + {%- endif %} + external-connection-point-ref: vnf-cp0 + {%- if detailed is sameas true %} + #internal-connection-point-ref: + #mac-address + #mgmt-interface: + {%- endif %} + + {%- for z in range(1, interfaces + 1 ) %} + - name: eth{{ z }} + type: EXTERNAL + virtual-interface: + type: PARAVIRT + {%- if detailed is sameas true %} + #vpci: + #bandwidth: + {%- endif %} + external-connection-point-ref: vnf-cp{{ z }} + {%- if detailed is sameas true %} + #internal-connection-point-ref: + #mac-address + #mgmt-interface: + {%- endif %} + {%- endfor %} + {%- endfor %} + {%- endif %} + connection-point: + - name: vnf-cp0 + {%- for x in range(1, interfaces + 1 ) %} + - name: vnf-cp{{ x }} + {%- endfor %} \ No newline at end of file