Loading 10-osm-client-commands-reference.md +74 −71 Original line number Diff line number Diff line Loading @@ -9,122 +9,121 @@ osm [OPTIONS] COMMAND [ARGS]... **Options:** ```bash --hostname TEXT hostname of server. Also can set OSM_HOSTNAME in environment --user TEXT user (defaults to admin). Also can set OSM_USER in environment --password TEXT password (defaults to admin). Also can set OSM_PASSWORD in environment --project TEXT project (defaults to admin). Also can set OSM_PROJECT in environment --help Show this message and exit. ``` **Commands:** ```bash --hostname TEXT hostname of server. Also can set OSM_HOSTNAME in environment --user TEXT user (defaults to admin). Also can set OSM_USER in environment --password TEXT password (defaults to admin). Also can set OSM_PASSWORD in environment --project TEXT project (defaults to admin). Also can set OSM_PROJECT in environment -h, --help Show this message and exit. Commands: k8scluster-add adds a K8s cluster to OSM NAME: name of the K8s cluster k8scluster-delete deletes a K8s cluster NAME: name or ID of the K8s cluster to be deleted k8scluster-list list all K8s clusters k8scluster-show shows the details of a K8s cluster NAME: name or ID of the K8s cluster k8scluster-update updates a K8s cluster netslice-instance-create creates a new Network Slice Instance netslice-instance-delete deletes a Network Slice Instance (NSI) netslice-instance-list list all Network Slice Instances (NSI) netslice-instance-op-list shows the history of operations over a... netslice-instance-op-show shows the info of an operation over a Network Slice Instance(NSI) netslice-instance-show shows the content of a Network Slice Instance (NSI) netslice-instance-op-list shows the history of operations over a Network Slice Instance (NSI) netslice-instance-op-show shows the info of an operation over a Network Slice Instance(NSI) netslice-instance-show shows the content of a Network Slice Instance (NSI) netslice-template-create creates a new Network Slice Template (NST) netslice-template-delete deletes a Network Slice Template (NST) netslice-template-list list all Network Slice Templates (NST) in the... netslice-template-show shows the content of a Network Slice Template (NST) netslice-template-list list all Network Slice Templates (NST) netslice-template-show shows the content of a Network Slice Template (NST) netslice-template-update updates a Network Slice Template (NST) nf-list list all NF instances Options: --ns TEXT NS... nf-list list all NF instances nfpkg-create creates a new NFpkg nfpkg-delete deletes a NFpkg nfpkg-list list all NF pkg (VNF pkg, PNF pkg, HNF pkg)... nfpkg-list list all xNF packages (VNF, HNF, PNF) nfpkg-show shows the content of a NF Descriptor nfpkg-update updates a NFpkg ns-action executes an action/primitive over a NS... ns-action executes an action/primitive over a NS instance ns-alarm-create creates a new alarm for a NS instance ns-create creates a new Network Service instance ns-delete deletes a NS instance ns-list list all NS instances Options: --filter... ns-metric-export exports a metric to the internal OSM bus,... ns-op-list shows the history of operations over a NS... ns-op-show shows the info of an operation ns-list list all NS instances ns-metric-export exports a metric to the internal OSM bus, which can be read by other apps ns-op-list shows the history of operations over a NS instance ns-op-show shows the info of a NS operation ns-show shows the info of a NS instance nsd-create creates a new NSD/NSpkg nsd-delete deletes a NSD/NSpkg nsd-list list all NSD/NS pkg in the system nsd-list list all NS packages nsd-show shows the content of a NSD nsd-update updates a NSD/NSpkg nsi-create creates a new Network Slice Instance nsi-delete deletes a Network Slice Instance (NSI) nsi-list list all Network Slice Instances (NSI) nsi-op-list shows the history of operations over a... nsi-op-show shows the info of an operation over a Network Slice Instance(NSI) nsi-show shows the content of a Network Slice Instance (NSI) nsi-op-list shows the history of operations over a Network Slice Instance (NSI) nsi-op-show shows the info of an operation over a Network Slice Instance(NSI) nsi-show shows the content of a Network Slice Instance (NSI) nspkg-create creates a new NSD/NSpkg nspkg-delete deletes a NSD/NSpkg nspkg-list list all NSD/NS pkg in the system nspkg-list list all NS packages nspkg-show shows the content of a NSD nspkg-update updates a NSD/NSpkg nst-create creates a new Network Slice Template (NST) nst-delete deletes a Network Slice Template (NST) nst-list list all Network Slice Templates (NST) in the... nst-show shows the content of a Network Slice Template (NST) nst-list list all Network Slice Templates (NST) nst-show shows the content of a Network Slice Template (NST) nst-update updates a Network Slice Template (NST) pdu-create adds a new Physical Deployment Unit to the catalog package-build Build the tar.gz of the package package-create Create a package descriptor package-validate Validate a package descriptor pdu-create adds a new Physical Deployment Unit to the catalog pdu-delete deletes a Physical Deployment Unit (PDU) pdu-list list all Physical Deployment Units (PDU) pdu-show shows the content of a Physical Deployment Unit (PDU) project-create Creates a new project NAME: name of the... project-delete deletes a project NAME: name or ID of the... pdu-show shows the content of a Physical Deployment Unit (PDU) project-create creates a new project project-delete deletes a project project-list list all projects project-show shows the details of a project NAME: name or... project-update Update a project name :param ctx: :param... role-create creates a role project-show shows the details of a project project-update updates a project (only the name can be updated) repo-add adds a repo to OSM NAME: name of the repo URI: URI of the repo repo-delete deletes a repo NAME: name or ID of the repo to be deleted repo-list list all repos repo-show shows the details of a repo NAME: name or ID of the repo repo-update updates a repo in OSM NAME: name of the repo role-create creates a new role role-delete deletes a role role-list list all roles role-show show specific role role-update updates a role sdnc-create creates a new SDN controller sdnc-delete deletes an SDN controller NAME: name or ID of... sdnc-delete deletes an SDN controller sdnc-list list all SDN controllers sdnc-show shows the details of an SDN controller NAME:... sdnc-show shows the details of an SDN controller sdnc-update updates an SDN controller upload-package uploads a VNF package or NS package FILENAME:... user-create Creates a new user USERNAME: name of the... user-delete deletes a user NAME: name or ID of the user... upload-package uploads a VNF package or NS package user-create creates a new user user-delete deletes a user user-list list all users user-show shows the details of a user NAME: name or ID... user-update Update a user information USERNAME: name of... user-show shows the details of a user user-update updates user information version vim-create creates a new VIM account vim-delete deletes a VIM account NAME: name or ID of the... vim-delete deletes a VIM account vim-list list all VIM accounts vim-show shows the details of a VIM account NAME: name... vim-show shows the details of a VIM account vim-update updates a VIM account vnf-list list all NF instances vnf-scale Executes a VNF scale (adding/removing VDUs)... vnf-scale executes a VNF scale (adding/removing VDUs) vnf-show shows the info of a VNF instance vnfd-create creates a new VNFD/VNFpkg vnfd-delete deletes a VNFD/VNFpkg vnfd-list list all VNFD/VNF pkg in the system vnfd-list list all xNF packages (VNF, HNF, PNF) vnfd-show shows the content of a VNFD vnfd-update updates a new VNFD/VNFpkg vnfpkg-create creates a new VNFD/VNFpkg vnfpkg-delete deletes a VNFD/VNFpkg vnfpkg-list list all VNFD/VNF pkg in the system vnfpkg-list list all xNF packages (VNF, HNF, PNF) vnfpkg-show shows the content of a VNFD vnfpkg-update updates a VNFD/VNFpkg wim-create creates a new WIM account wim-delete deletes a WIM account NAME: name or ID of the... wim-delete deletes a WIM account wim-list list all WIM accounts wim-show shows the details of a WIM account NAME: name... wim-show shows the details of a WIM account wim-update updates a WIM account ``` Loading @@ -151,28 +150,32 @@ Then you can add the following to your $HOME/.bashrc file: ```bash # Ubuntu pre-requirements sudo apt install python-pip libcurl4-gnutls-dev libgnutls-dev sudo apt install python3-pip libcurl4-gnutls-dev libgnutls-dev # CentOS pre-requirements # sudo yum install python-pip libcurl-devel gnutls-devel sudo -H pip install python-magic # sudo yum install python3-pip libcurl-devel gnutls-devel sudo -H pip install python3-magic # Install OSM Information model sudo -H pip3 install git+https://osm.etsi.org/gerrit/osm/IM --upgrade # Install OSM client from the git repo. # You can install the latest client from master branch in this way: sudo -H pip install git+https://osm.etsi.org/gerrit/osm/osmclient sudo -H pip3 install git+https://osm.etsi.org/gerrit/osm/osmclient # You could also install a specific tag/version in this way sudo -H pip install git+https://osm.etsi.org/gerrit/osm/osmclient@v6.0.1 sudo -H pip3 install git+https://osm.etsi.org/gerrit/osm/osmclient@v7.0.0rc1 ``` ### Installing from cloned repo (for developers) ```bash # Ubuntu pre-requirements sudo apt install python-pip libcurl4-gnutls-dev libgnutls-dev sudo apt install python3-pip libcurl4-gnutls-dev libgnutls-dev # Make sure that # sudo yum install python-pip libcurl-devel gnutls-devel sudo -H pip install python-magic sudo -H pip install python3-magic # Install OSM Information model sudo -H pip3 install git+https://osm.etsi.org/gerrit/osm/IM --upgrade # Clone the osmclient repo and install OSM client from the git repo. git clone https://osm.etsi.org/gerrit/osm/osmclient sudo -H pip install osmclient sudo -H pip3 install osmclient ``` ## Using osmclient as a library to interact with OSM Loading 12-osm-nbi.md +99 −7 Original line number Diff line number Diff line Loading @@ -91,6 +91,8 @@ URL: /osm GET POST /pnf_descriptors 5 5 /<pnfdInfoId> 5 5 5 /pnfd_content 5 5 /subscriptions 5 5 /<subscriptionId> 5 X /vnfpkgm/v1 /vnf_packages_content O O Loading @@ -101,6 +103,8 @@ URL: /osm GET POST /upload_from_uri X /vnfd O5 /artifacts[/<artifactPath>] O5 /subscriptions X X /<subscriptionId> X X /nslcm/v1 /ns_instances_content O O Loading @@ -117,9 +121,11 @@ URL: /osm GET POST TO BE COMPLETED 5 5 /vnf_instances (also vnfrs for compatibility) O /<vnfInstanceId> O /subscriptions 5 5 /<subscriptionId> 5 X /pdu/v1 /pdu_descriptor O O /pdu_descriptors O O /<id> O O O O /admin/v1 Loading @@ -135,6 +141,10 @@ URL: /osm GET POST /<id> O O O /sdns O O /<id> O O O /k8sclusters O O /<id> O O O /k8srepos O O /<id> O O /nst/v1 O O /netslice_templates_content O O Loading @@ -144,6 +154,8 @@ URL: /osm GET POST /nst_content O O /nst O /artifacts[/<artifactPath>] O /subscriptions X X /<subscriptionId> X X /nsilcm/v1 /netslice_instances_content O O Loading @@ -155,6 +167,62 @@ URL: /osm GET POST action O /nsi_lcm_op_occs O O /<nsiLcmOpOccId> O O O /subscriptions X X /<subscriptionId> X X query string: Follows SOL005 section 4.3.2 It contains extra METHOD to override http method, FORCE to force. simpleFilterExpr := <attrName>["."<attrName>]*["."<op>]"="<value>[","<value>]* filterExpr := <simpleFilterExpr>["&"<simpleFilterExpr>]* op := "eq" | "neq" (or "ne") | "gt" | "lt" | "gte" | "lte" | "cont" | "ncont" attrName := string For filtering inside array, it must select the element of the array, or add ANYINDEX to apply the filtering over any item of the array, that is, pass if any item of the array pass the filter. It allows both ne and neq for not equal TODO: 4.3.3 Attribute selectors all_fields, fields=x,y,.., exclude_default, exclude_fields=x,y,... (none)... same as “exclude_default” all_fields... all attributes. fields=<list>... all attributes except all complex attributes with minimum cardinality of zero that are not conditionally mandatory, and that are not provided in <list>. exclude_fields=<list>... all attributes except those complex attributes with a minimum cardinality of zero that are not conditionally mandatory, and that are provided in <list>. exclude_default... all attributes except those complex attributes with a minimum cardinality of zero that are not conditionally mandatory, and that are part of the "default exclude set" defined in the present specification for the particular resource exclude_default and include=<list>... all attributes except those complex attributes with a minimum cardinality of zero that are not conditionally mandatory and that are part of the "default exclude set" defined in the present specification for the particular resource, but that are not part of <list> Additionally it admits some administrator values: FORCE: To force operations skipping dependency checkings ADMIN: To act as an administrator or a different project PUBLIC: To get public descriptors or set a descriptor as public SET_PROJECT: To make a descriptor available for other project Header field name Reference Example Descriptions Accept IETF RFC 7231 [19] application/json Content-Types that are acceptable for the response. This header field shall be present if the response is expected to have a non-empty message body. Content-Type IETF RFC 7231 [19] application/json The MIME type of the body of the request. This header field shall be present if the request has a non-empty message body. Authorization IETF RFC 7235 [22] Bearer mF_9.B5f-4.1JqM The authorization token for the request. Details are specified in clause 4.5.3. Range IETF RFC 7233 [21] 1000-2000 Requested range of bytes from a file Header field name Reference Example Descriptions Content-Type IETF RFC 7231 [19] application/json The MIME type of the body of the response. This header field shall be present if the response has a non-empty message body. Location IETF RFC 7231 [19] http://www.example.com/vnflcm/v1/vnf_instances/123 Used in redirection, or when a new resource has been created. This header field shall be present if the response status code is 201 or 3xx. In the present document this header field is also used if the response status code is 202 and a new resource was created. WWW-Authenticate IETF RFC 7235 [22] Bearer realm="example" Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. Accept-Ranges IETF RFC 7233 [21] bytes Used by the Server to signal whether or not it supports ranges for certain resources. Content-Range IETF RFC 7233 [21] bytes 21010-47021/ 47022 Signals the byte range that is contained in the response, and the total length of the file. Retry-After IETF RFC 7231 [19] Fri, 31 Dec 1999 23:59:59 GMT``` ``` ## Administrative Content Details Loading Loading @@ -233,6 +301,18 @@ URL: /osm GET POST - POST: Add a new sdn. - Example of request content: TODO `/admin/v1/k8sclusters`. (rbac: `k8sclusters`). K8S Clusters to deploy juju bundles or helm packages - GET: Gets k8s clusters - POST: Add a new k8s cluster. - Example of request content: TODO `/admin/v1/k8srepos`. (rbac: `k8srepos`). K8S repository that contains the juju bundles or helm packages - GET: Gets k8s repositories - POST: Add a new k8s repository. - Example of request content: TODO `/admin/v1/sdns/`. (rbac: `sdn_controllers:id`) - GET: Get sdn details Loading @@ -240,6 +320,18 @@ URL: /osm GET POST - Example of sdn edition: TODO - DELETE: Removes sdn. `/admin/v1/k8sclusters/`. (rbac: `k8sclusters:id`) - GET: Get k8sclusters details - PUT/PATCH: Edit k8sclusters. - DELETE: Removes k8sclusters. `/admin/v1/k8srepos/`. (rbac: `k8srepos:id`) - GET: Get k8srepos details - PUT/PATCH: Edit k8srepos. - DELETE: Removes k8srepos. ## PDU Details Physical Data Unit. This is catalogue of physical elements present at some vim_account/s. Deployment of a PNFD/HNFD implies using one of this pdu from the catalogue. Matching from PNFD/HNFD to PDU is done by 'pdu.type' Loading Loading @@ -284,7 +376,7 @@ TBC ## NSLCM Details Network Services Life Ciclo Management Network Services Lifecycle Management `/nslcm/v1/ns_instances_content`. Loading Loading @@ -424,7 +516,7 @@ NetSlice Template descriptor ## NSILCM Details NetSlice Instance Life Cicle Management NetSlice Instance Lifecycle Management `/nsilcm/v1/netslice_instances_content` Loading 13-openvim-installation.md +15 −15 Original line number Diff line number Diff line Loading @@ -202,8 +202,8 @@ The outputs are: **Sources:** - Onos with Maven: https://wiki.onosproject.org/display/ONOS/Installing+and+Running+ONOS - Onos with Buck: https://wiki.onosproject.org/display/ONOS/Developer+Guide - [Onos with Maven](https://wiki.onosproject.org/display/ONOS/Installing+and+Running+ONOS) - [Onos with Buck](https://wiki.onosproject.org/display/ONOS/Developer+Guide) ##### Run ONOS Loading 14-tests-for-vim-validation.md +68 −70 File changed.Preview size limit exceeded, changes collapsed. Show changes Loading
10-osm-client-commands-reference.md +74 −71 Original line number Diff line number Diff line Loading @@ -9,122 +9,121 @@ osm [OPTIONS] COMMAND [ARGS]... **Options:** ```bash --hostname TEXT hostname of server. Also can set OSM_HOSTNAME in environment --user TEXT user (defaults to admin). Also can set OSM_USER in environment --password TEXT password (defaults to admin). Also can set OSM_PASSWORD in environment --project TEXT project (defaults to admin). Also can set OSM_PROJECT in environment --help Show this message and exit. ``` **Commands:** ```bash --hostname TEXT hostname of server. Also can set OSM_HOSTNAME in environment --user TEXT user (defaults to admin). Also can set OSM_USER in environment --password TEXT password (defaults to admin). Also can set OSM_PASSWORD in environment --project TEXT project (defaults to admin). Also can set OSM_PROJECT in environment -h, --help Show this message and exit. Commands: k8scluster-add adds a K8s cluster to OSM NAME: name of the K8s cluster k8scluster-delete deletes a K8s cluster NAME: name or ID of the K8s cluster to be deleted k8scluster-list list all K8s clusters k8scluster-show shows the details of a K8s cluster NAME: name or ID of the K8s cluster k8scluster-update updates a K8s cluster netslice-instance-create creates a new Network Slice Instance netslice-instance-delete deletes a Network Slice Instance (NSI) netslice-instance-list list all Network Slice Instances (NSI) netslice-instance-op-list shows the history of operations over a... netslice-instance-op-show shows the info of an operation over a Network Slice Instance(NSI) netslice-instance-show shows the content of a Network Slice Instance (NSI) netslice-instance-op-list shows the history of operations over a Network Slice Instance (NSI) netslice-instance-op-show shows the info of an operation over a Network Slice Instance(NSI) netslice-instance-show shows the content of a Network Slice Instance (NSI) netslice-template-create creates a new Network Slice Template (NST) netslice-template-delete deletes a Network Slice Template (NST) netslice-template-list list all Network Slice Templates (NST) in the... netslice-template-show shows the content of a Network Slice Template (NST) netslice-template-list list all Network Slice Templates (NST) netslice-template-show shows the content of a Network Slice Template (NST) netslice-template-update updates a Network Slice Template (NST) nf-list list all NF instances Options: --ns TEXT NS... nf-list list all NF instances nfpkg-create creates a new NFpkg nfpkg-delete deletes a NFpkg nfpkg-list list all NF pkg (VNF pkg, PNF pkg, HNF pkg)... nfpkg-list list all xNF packages (VNF, HNF, PNF) nfpkg-show shows the content of a NF Descriptor nfpkg-update updates a NFpkg ns-action executes an action/primitive over a NS... ns-action executes an action/primitive over a NS instance ns-alarm-create creates a new alarm for a NS instance ns-create creates a new Network Service instance ns-delete deletes a NS instance ns-list list all NS instances Options: --filter... ns-metric-export exports a metric to the internal OSM bus,... ns-op-list shows the history of operations over a NS... ns-op-show shows the info of an operation ns-list list all NS instances ns-metric-export exports a metric to the internal OSM bus, which can be read by other apps ns-op-list shows the history of operations over a NS instance ns-op-show shows the info of a NS operation ns-show shows the info of a NS instance nsd-create creates a new NSD/NSpkg nsd-delete deletes a NSD/NSpkg nsd-list list all NSD/NS pkg in the system nsd-list list all NS packages nsd-show shows the content of a NSD nsd-update updates a NSD/NSpkg nsi-create creates a new Network Slice Instance nsi-delete deletes a Network Slice Instance (NSI) nsi-list list all Network Slice Instances (NSI) nsi-op-list shows the history of operations over a... nsi-op-show shows the info of an operation over a Network Slice Instance(NSI) nsi-show shows the content of a Network Slice Instance (NSI) nsi-op-list shows the history of operations over a Network Slice Instance (NSI) nsi-op-show shows the info of an operation over a Network Slice Instance(NSI) nsi-show shows the content of a Network Slice Instance (NSI) nspkg-create creates a new NSD/NSpkg nspkg-delete deletes a NSD/NSpkg nspkg-list list all NSD/NS pkg in the system nspkg-list list all NS packages nspkg-show shows the content of a NSD nspkg-update updates a NSD/NSpkg nst-create creates a new Network Slice Template (NST) nst-delete deletes a Network Slice Template (NST) nst-list list all Network Slice Templates (NST) in the... nst-show shows the content of a Network Slice Template (NST) nst-list list all Network Slice Templates (NST) nst-show shows the content of a Network Slice Template (NST) nst-update updates a Network Slice Template (NST) pdu-create adds a new Physical Deployment Unit to the catalog package-build Build the tar.gz of the package package-create Create a package descriptor package-validate Validate a package descriptor pdu-create adds a new Physical Deployment Unit to the catalog pdu-delete deletes a Physical Deployment Unit (PDU) pdu-list list all Physical Deployment Units (PDU) pdu-show shows the content of a Physical Deployment Unit (PDU) project-create Creates a new project NAME: name of the... project-delete deletes a project NAME: name or ID of the... pdu-show shows the content of a Physical Deployment Unit (PDU) project-create creates a new project project-delete deletes a project project-list list all projects project-show shows the details of a project NAME: name or... project-update Update a project name :param ctx: :param... role-create creates a role project-show shows the details of a project project-update updates a project (only the name can be updated) repo-add adds a repo to OSM NAME: name of the repo URI: URI of the repo repo-delete deletes a repo NAME: name or ID of the repo to be deleted repo-list list all repos repo-show shows the details of a repo NAME: name or ID of the repo repo-update updates a repo in OSM NAME: name of the repo role-create creates a new role role-delete deletes a role role-list list all roles role-show show specific role role-update updates a role sdnc-create creates a new SDN controller sdnc-delete deletes an SDN controller NAME: name or ID of... sdnc-delete deletes an SDN controller sdnc-list list all SDN controllers sdnc-show shows the details of an SDN controller NAME:... sdnc-show shows the details of an SDN controller sdnc-update updates an SDN controller upload-package uploads a VNF package or NS package FILENAME:... user-create Creates a new user USERNAME: name of the... user-delete deletes a user NAME: name or ID of the user... upload-package uploads a VNF package or NS package user-create creates a new user user-delete deletes a user user-list list all users user-show shows the details of a user NAME: name or ID... user-update Update a user information USERNAME: name of... user-show shows the details of a user user-update updates user information version vim-create creates a new VIM account vim-delete deletes a VIM account NAME: name or ID of the... vim-delete deletes a VIM account vim-list list all VIM accounts vim-show shows the details of a VIM account NAME: name... vim-show shows the details of a VIM account vim-update updates a VIM account vnf-list list all NF instances vnf-scale Executes a VNF scale (adding/removing VDUs)... vnf-scale executes a VNF scale (adding/removing VDUs) vnf-show shows the info of a VNF instance vnfd-create creates a new VNFD/VNFpkg vnfd-delete deletes a VNFD/VNFpkg vnfd-list list all VNFD/VNF pkg in the system vnfd-list list all xNF packages (VNF, HNF, PNF) vnfd-show shows the content of a VNFD vnfd-update updates a new VNFD/VNFpkg vnfpkg-create creates a new VNFD/VNFpkg vnfpkg-delete deletes a VNFD/VNFpkg vnfpkg-list list all VNFD/VNF pkg in the system vnfpkg-list list all xNF packages (VNF, HNF, PNF) vnfpkg-show shows the content of a VNFD vnfpkg-update updates a VNFD/VNFpkg wim-create creates a new WIM account wim-delete deletes a WIM account NAME: name or ID of the... wim-delete deletes a WIM account wim-list list all WIM accounts wim-show shows the details of a WIM account NAME: name... wim-show shows the details of a WIM account wim-update updates a WIM account ``` Loading @@ -151,28 +150,32 @@ Then you can add the following to your $HOME/.bashrc file: ```bash # Ubuntu pre-requirements sudo apt install python-pip libcurl4-gnutls-dev libgnutls-dev sudo apt install python3-pip libcurl4-gnutls-dev libgnutls-dev # CentOS pre-requirements # sudo yum install python-pip libcurl-devel gnutls-devel sudo -H pip install python-magic # sudo yum install python3-pip libcurl-devel gnutls-devel sudo -H pip install python3-magic # Install OSM Information model sudo -H pip3 install git+https://osm.etsi.org/gerrit/osm/IM --upgrade # Install OSM client from the git repo. # You can install the latest client from master branch in this way: sudo -H pip install git+https://osm.etsi.org/gerrit/osm/osmclient sudo -H pip3 install git+https://osm.etsi.org/gerrit/osm/osmclient # You could also install a specific tag/version in this way sudo -H pip install git+https://osm.etsi.org/gerrit/osm/osmclient@v6.0.1 sudo -H pip3 install git+https://osm.etsi.org/gerrit/osm/osmclient@v7.0.0rc1 ``` ### Installing from cloned repo (for developers) ```bash # Ubuntu pre-requirements sudo apt install python-pip libcurl4-gnutls-dev libgnutls-dev sudo apt install python3-pip libcurl4-gnutls-dev libgnutls-dev # Make sure that # sudo yum install python-pip libcurl-devel gnutls-devel sudo -H pip install python-magic sudo -H pip install python3-magic # Install OSM Information model sudo -H pip3 install git+https://osm.etsi.org/gerrit/osm/IM --upgrade # Clone the osmclient repo and install OSM client from the git repo. git clone https://osm.etsi.org/gerrit/osm/osmclient sudo -H pip install osmclient sudo -H pip3 install osmclient ``` ## Using osmclient as a library to interact with OSM Loading
12-osm-nbi.md +99 −7 Original line number Diff line number Diff line Loading @@ -91,6 +91,8 @@ URL: /osm GET POST /pnf_descriptors 5 5 /<pnfdInfoId> 5 5 5 /pnfd_content 5 5 /subscriptions 5 5 /<subscriptionId> 5 X /vnfpkgm/v1 /vnf_packages_content O O Loading @@ -101,6 +103,8 @@ URL: /osm GET POST /upload_from_uri X /vnfd O5 /artifacts[/<artifactPath>] O5 /subscriptions X X /<subscriptionId> X X /nslcm/v1 /ns_instances_content O O Loading @@ -117,9 +121,11 @@ URL: /osm GET POST TO BE COMPLETED 5 5 /vnf_instances (also vnfrs for compatibility) O /<vnfInstanceId> O /subscriptions 5 5 /<subscriptionId> 5 X /pdu/v1 /pdu_descriptor O O /pdu_descriptors O O /<id> O O O O /admin/v1 Loading @@ -135,6 +141,10 @@ URL: /osm GET POST /<id> O O O /sdns O O /<id> O O O /k8sclusters O O /<id> O O O /k8srepos O O /<id> O O /nst/v1 O O /netslice_templates_content O O Loading @@ -144,6 +154,8 @@ URL: /osm GET POST /nst_content O O /nst O /artifacts[/<artifactPath>] O /subscriptions X X /<subscriptionId> X X /nsilcm/v1 /netslice_instances_content O O Loading @@ -155,6 +167,62 @@ URL: /osm GET POST action O /nsi_lcm_op_occs O O /<nsiLcmOpOccId> O O O /subscriptions X X /<subscriptionId> X X query string: Follows SOL005 section 4.3.2 It contains extra METHOD to override http method, FORCE to force. simpleFilterExpr := <attrName>["."<attrName>]*["."<op>]"="<value>[","<value>]* filterExpr := <simpleFilterExpr>["&"<simpleFilterExpr>]* op := "eq" | "neq" (or "ne") | "gt" | "lt" | "gte" | "lte" | "cont" | "ncont" attrName := string For filtering inside array, it must select the element of the array, or add ANYINDEX to apply the filtering over any item of the array, that is, pass if any item of the array pass the filter. It allows both ne and neq for not equal TODO: 4.3.3 Attribute selectors all_fields, fields=x,y,.., exclude_default, exclude_fields=x,y,... (none)... same as “exclude_default” all_fields... all attributes. fields=<list>... all attributes except all complex attributes with minimum cardinality of zero that are not conditionally mandatory, and that are not provided in <list>. exclude_fields=<list>... all attributes except those complex attributes with a minimum cardinality of zero that are not conditionally mandatory, and that are provided in <list>. exclude_default... all attributes except those complex attributes with a minimum cardinality of zero that are not conditionally mandatory, and that are part of the "default exclude set" defined in the present specification for the particular resource exclude_default and include=<list>... all attributes except those complex attributes with a minimum cardinality of zero that are not conditionally mandatory and that are part of the "default exclude set" defined in the present specification for the particular resource, but that are not part of <list> Additionally it admits some administrator values: FORCE: To force operations skipping dependency checkings ADMIN: To act as an administrator or a different project PUBLIC: To get public descriptors or set a descriptor as public SET_PROJECT: To make a descriptor available for other project Header field name Reference Example Descriptions Accept IETF RFC 7231 [19] application/json Content-Types that are acceptable for the response. This header field shall be present if the response is expected to have a non-empty message body. Content-Type IETF RFC 7231 [19] application/json The MIME type of the body of the request. This header field shall be present if the request has a non-empty message body. Authorization IETF RFC 7235 [22] Bearer mF_9.B5f-4.1JqM The authorization token for the request. Details are specified in clause 4.5.3. Range IETF RFC 7233 [21] 1000-2000 Requested range of bytes from a file Header field name Reference Example Descriptions Content-Type IETF RFC 7231 [19] application/json The MIME type of the body of the response. This header field shall be present if the response has a non-empty message body. Location IETF RFC 7231 [19] http://www.example.com/vnflcm/v1/vnf_instances/123 Used in redirection, or when a new resource has been created. This header field shall be present if the response status code is 201 or 3xx. In the present document this header field is also used if the response status code is 202 and a new resource was created. WWW-Authenticate IETF RFC 7235 [22] Bearer realm="example" Challenge if the corresponding HTTP request has not provided authorization, or error details if the corresponding HTTP request has provided an invalid authorization token. Accept-Ranges IETF RFC 7233 [21] bytes Used by the Server to signal whether or not it supports ranges for certain resources. Content-Range IETF RFC 7233 [21] bytes 21010-47021/ 47022 Signals the byte range that is contained in the response, and the total length of the file. Retry-After IETF RFC 7231 [19] Fri, 31 Dec 1999 23:59:59 GMT``` ``` ## Administrative Content Details Loading Loading @@ -233,6 +301,18 @@ URL: /osm GET POST - POST: Add a new sdn. - Example of request content: TODO `/admin/v1/k8sclusters`. (rbac: `k8sclusters`). K8S Clusters to deploy juju bundles or helm packages - GET: Gets k8s clusters - POST: Add a new k8s cluster. - Example of request content: TODO `/admin/v1/k8srepos`. (rbac: `k8srepos`). K8S repository that contains the juju bundles or helm packages - GET: Gets k8s repositories - POST: Add a new k8s repository. - Example of request content: TODO `/admin/v1/sdns/`. (rbac: `sdn_controllers:id`) - GET: Get sdn details Loading @@ -240,6 +320,18 @@ URL: /osm GET POST - Example of sdn edition: TODO - DELETE: Removes sdn. `/admin/v1/k8sclusters/`. (rbac: `k8sclusters:id`) - GET: Get k8sclusters details - PUT/PATCH: Edit k8sclusters. - DELETE: Removes k8sclusters. `/admin/v1/k8srepos/`. (rbac: `k8srepos:id`) - GET: Get k8srepos details - PUT/PATCH: Edit k8srepos. - DELETE: Removes k8srepos. ## PDU Details Physical Data Unit. This is catalogue of physical elements present at some vim_account/s. Deployment of a PNFD/HNFD implies using one of this pdu from the catalogue. Matching from PNFD/HNFD to PDU is done by 'pdu.type' Loading Loading @@ -284,7 +376,7 @@ TBC ## NSLCM Details Network Services Life Ciclo Management Network Services Lifecycle Management `/nslcm/v1/ns_instances_content`. Loading Loading @@ -424,7 +516,7 @@ NetSlice Template descriptor ## NSILCM Details NetSlice Instance Life Cicle Management NetSlice Instance Lifecycle Management `/nsilcm/v1/netslice_instances_content` Loading
13-openvim-installation.md +15 −15 Original line number Diff line number Diff line Loading @@ -202,8 +202,8 @@ The outputs are: **Sources:** - Onos with Maven: https://wiki.onosproject.org/display/ONOS/Installing+and+Running+ONOS - Onos with Buck: https://wiki.onosproject.org/display/ONOS/Developer+Guide - [Onos with Maven](https://wiki.onosproject.org/display/ONOS/Installing+and+Running+ONOS) - [Onos with Buck](https://wiki.onosproject.org/display/ONOS/Developer+Guide) ##### Run ONOS Loading
14-tests-for-vim-validation.md +68 −70 File changed.Preview size limit exceeded, changes collapsed. Show changes