[release-announce] tacker 6.0.0 (xena)

no-reply at openstack.org no-reply at openstack.org
Wed Oct 6 11:39:34 UTC 2021


We are happy to announce the release of:

tacker 6.0.0: OpenStack NFV Orchestration

This release is part of the xena release series.

The source is available from:

    https://opendev.org/openstack/tacker

Download the package from:

    https://tarballs.openstack.org/tacker/

Please report issues through:

    https://bugs.launchpad.net/tacker/+bugs

For more details, please see below.

6.0.0
^^^^^

New Features

* Support multi-version of RESTfulAPI. The client can use both VNF
  LCM API "1.3.0" and "2.0.0" defined by ETSI NFV.

* Add new RESTful APIs of List VNF LCM API versions and Show VNF LCM
  API versions based on ETSI NFV specifications. They enable the
  client to retrieve supported versions of VNF LCM API.

* Add the following new version of RESTful APIs based on ETSI NFV
  specifications. Version "2.0.0" API of Create VNF, Delete VNF,
  Instantiate VNF, Terminate VNF, List VNF, Show VNF, List VNF LCM
  operation occurrence, Show VNF LCM operation occurrence, Create
  subscription, List subscription, and Show subscription are added.

* VNF LCM API "2.0.0" provides a new type of userdata script and
  utility functions to describe it. They enable the user to freely
  operate HEAT to meet the unique requirements of VNF.

* Functions to enable the use of Docker private registry images in a
  Kubernetes Cluster environment. We provide the sample of MgmtDriver
  which can deploy Docker private registry VNF for Kubernetes cluster
  before deploying Kubernetes cluster VNF, and deploy Kubernetes
  cluster VNF that can support both the Docker private registry
  created above and any others created outside of Tacker.

  Instantiate operation for Kubernetes cluster with MgmtDriver:
  MgmtDriver configures connections with Docker private registries on
  newly created all Master/Worker VMs.

  Scale-out operation for Kubernetes cluster Worker-nodes with
  MgmtDriver: MgmtDriver configures connections with Docker private
  registries on newly created Worker VMs.

  Heal operation for the entire Kubernetes cluster with MgmtDriver:
  MgmtDriver configures connections with Docker private registries on
  the created all Master/Worker VMs.

  Heal operation for a single node in Kubernetes cluster with
  MgmtDriver: MgmtDriver configures connections with Docker private
  registries on the created Master/Worker VM.

* Add new interface for Kubernetes VIM to handle Helm chart. It
  enables Users to include Helm chart files as MCIOP in their VNF
  Packages, to instantiate and to terminate CNF with them. And update
  sample of MgmtDriver to install and configure Helm package for using
  Helm cli command in the deployed Kubernetes cluster VNF, and to
  restore the registered helm repositories and charts after the master
  node is healed.

* MgmtDriver function configures applications provided by VNF
  vendors. VNF vendors can customize configuration methods for
  applications via MgmtDriver. These customizations are specified by
  "interface" definition in ETSI NFV-SOL001 v2.6.1. We provide the
  sample of MgmtDriver and scripts which can deploy a Kubernetes
  cluster. It can use kubespray as Ansible playbooks to install
  Kubernetes cluster VNF, and also install and configure HAproxy load
  balancer for the Kubernetes cluster. We also provide a user guide to
  help users understand how to use this feature.

  Instantiate kubernetes cluster: The Kubernetes cluster can be
  instantiated with VNF Lifecycle Management Interface in ETSI NFV-SOL
  003 v2.6.1.

  Scale kubernetes worker node: Scaling operations on the Worker-nodes
  for the VNF including Kubernetes cluster is supported with
  MgmtDriver.

  Heal kubernetes worker node: Healing operations on the Worker-nodes
  for the VNF including Kubernetes cluster is supported with
  MgmtDriver.

* Support deploying Kubernetes cluster VNF which has a storage
  server with Cinder volume. This feature enables users to deploy CNF
  which has PersistentVolume on it. The following changes are added
  for MgmtDriver.

  * Create a storage server VM with Cinder volume.

  * Expose Cinder volume as NFS shared directories in the storage
    server.

  * Register NFS shared directories as Kubernetes PersistentVolumes.

  * Install NFS client on newly created Master/Worker VMs in all LCM
    operations.

Changes in tacker 5.0.0.0rc1..6.0.0
-----------------------------------

43b19f63 Support PVs for k8s cluster with MgmtDriver
c94228a1 Update instructions of installing k8s VIM
1474cfe7 Private registry for deploying Kubernetes cluster
0e10c540 Add groups under topology_template in vnf_dict
17fed565 Sample script for healing k8s with kubespray
143c04ab Sample script for scaling k8s with kubespray
9c9e8827 Sample script for deploying k8s with kubespray
e48234f9 Sample script of pod-affinity in kubernetes cluster
34eaab61 Add documents for multi-version API support
fa73e438 Modify processing of _heal_grant and _scale_grant
d8b2ddbd Multi version API support
fa5f63d5 Object definitions of multi version API support
6205b4d5 Fix zuul settings to use latest kuryr-kubernetes
f77ae4a9 Support Helm chart as interface for Kubernetes VIM
9037608c Modify Placement Processing to Aspect definition
487ee151 Fix for Anti Affinity verification Exception
0133a35c Fix occasional multinode-sol job FT error
993169b2 Fix status code for invalid filter conditions
3eefc875 Add missing [oslo_reports] options
0df88fb2 Fix cnf rollback after instantiation failure
c40c14af Add missing options about periodic tasks
d66ecd14 Update zuul environment to support helm chart
292e05dc Fix get information about multiple VNF instances
8e97bf23 Support TOSCA route for ChgExternalConnectivity
23f3cca4 Drop test for lower constraints
b22db3d8 Update TOX_CONSTRAINTS_FILE for stable/xena
fc724184 Update .gitreview for stable/xena
5d23bf31 Remove the restriction of scaling group name
35f93e9b Remove tmp fix for heat-translator/tosca-parser
5eced54d Skip some FTs failed due to heat bug
ea1bc9bd Replace deprecated import of ABCs from collections
68b23730 Add ETSI getting started
ddf28104 Update version of cirros image to 0.5.2
26a2b5fc Fix missing required parameter when k8s_obj init
70bfbe43 Doc:Fix misspelled word in Legacy User Guide
ecbc80c0 Add hardware requirements
64655407 Fix required attributes when error happened
9a9c8dbf Update releasenotes from Xena cycle
33cb3ba5 Fix Healing so image is updated after Healing
385c4b44 Drop block storage v2 API
05bce744 Add LCM op figures to User Guide
401a12de Update references to sys.version_info
00ec6a5b Incomplete URLs in api-ref
89b3b65c Retaining permission of VNF package files
a9cb3854 Fix Patch Individual VNF instance
f4774e86 Fix MgmtDriver can not be called when scale CNF
55f3a221 Update examples of local.conf for OVN
96a9292f Use skipTest() instead of skip() method
3ca7b32f Zuul FT environment change to use OVN
2d2ea313 Update User Guide
e0c09499 Fix migration for SQLAlchemy 1.4
987f60ed Fix old link in Gerrit Dashboards
36e666cb Improvement of Processing Logic for Healing
3b1bd13e Avoid FT errors caused by other projects change
982af3a3 Update hyperlinks of ETSI NFV types definitions
b43edf8b [Doc] Update Freenode to OFTC as our IRC server
cf515057 Wrong subscription notification URL
828a34d4 DevStack job with heat-translator/tosca-parser master
915afe3d setup.cfg: Replace dashes with underscores
2c68a0a8 Updated vnflcm api output with host-path
c1b2c362 Fix two-stage process launcher in tacker-server
c137b0dd Add endpoint information in interfaceInfo
d4713777 Fix display bugs of vnflcm show command
206cc80e Fix exception not raised while install script failed
5100e318 Fix missing None judgement in rollback
44bf8f59 Add new inherited methods for kubernetes_mgmt
f731f885 Improvement of FT cases for Retry LCM Operation
5a9ae0c8 Addition of location header field in response
d987f619 Fix parameters passing in kubernetes_mgmt
19594e09 Add Python3 xena unit tests
3859ade8 Support Placement Constraints for Grant
12ff2919 Fix warnings for duplicated policy rules
e6a7ff59 Fix UT and FT VNFD yaml because lack of properties
667377b8 Fix some bugs related legacy cnf operations
ae3ad13f Update master for stable/wallaby


Diffstat (except docs and test files)
-------------------------------------

.gitreview                                         |    1 +
.zuul.yaml                                         |  115 +-
api-ref/source/index.rst                           |   17 +-
api-ref/source/v1/{index.rst => legacy.rst}        |    8 +-
api-ref/source/v1/parameters_vnflcm.yaml           |    2 +-
api-ref/source/v1/parameters_vnflcm_versions.yaml  |   44 +
.../vnf_packages/vnf-packages-list-response.json   |    8 +-
.../vnf_packages/vnf-packages-show-response.json   |    8 +-
.../v1/samples/vnfds/vnfds-create-request.json     |    2 +-
.../v1/samples/vnfds/vnfds-create-response.json    |    2 +-
.../v1/samples/vnfds/vnfds-list-response.json      |    2 +-
.../v1/samples/vnfds/vnfds-show-response.json      |    2 +-
.../v1/samples/vnfds/vnfds-update-response.json    |    2 +-
.../vnflcm/create-vnf-instance-response.json       |    4 +-
.../samples/vnflcm/fail-vnf-instance-response.json |    2 +-
.../samples/vnflcm/list-vnf-instance-response.json |    8 +-
.../samples/vnflcm/show-vnf-instance-response.json |    6 +-
.../show-vnflcm-operation-occurrence-response.json |    6 +-
.../list-vnflcm-version-response.json              |   13 +
.../show-vnflcm-version-response.json              |    9 +
.../samples/vnfs/vnfs-inline-create-request.json   |    2 +-
api-ref/source/v1/status.yaml                      |    2 +-
api-ref/source/v1/vnflcm.inc                       |    2 +-
api-ref/source/v1/vnflcm.rst                       |    9 +
api-ref/source/v1/vnflcm_versions.inc              |   97 ++
api-ref/source/v1/vnflcm_versions.rst              |    9 +
api-ref/source/v1/vnfpkgm.rst                      |    9 +
api-ref/source/v2/parameters_vnflcm.yaml           | 1426 ++++++++++++++++++
.../vnflcm/create-subscription-request.json        |    3 +
.../vnflcm/create-subscription-response.json       |   10 +
.../vnflcm/create-vnf-instance-request.json        |    5 +
.../vnflcm/create-vnf-instance-response.json       |   22 +
.../vnflcm/instantiate-vnf-instance-request.json   |  128 ++
.../samples/vnflcm/list-subscription-response.json |   12 +
.../samples/vnflcm/list-vnf-instance-response.json |  473 ++++++
.../list-vnflcm-operation-occurrence-response.json |  232 +++
.../samples/vnflcm/show-subscription-response.json |   10 +
.../samples/vnflcm/show-vnf-instance-response.json |  471 ++++++
.../show-vnflcm-operation-occurrence-response.json |  229 +++
.../vnflcm/terminate-vnf-instance-request.json     |    4 +
api-ref/source/v2/status.yaml                      |   88 ++
api-ref/source/v2/vnflcm.inc                       |  939 ++++++++++++
api-ref/source/v2/vnflcm.rst                       |    9 +
contrib/tacker-config/ns-config.sh                 |    4 +-
contrib/tacker-config/vnffg-config.sh              |    4 +-
devstack/lib/download_upper_consts                 |   18 -
devstack/lib/tacker                                |   25 +-
devstack/local.conf.example                        |    3 +-
devstack/local.conf.kubernetes                     |    7 +-
devstack/local.conf.standalone                     |    1 +
devstack/plugin.sh                                 |   16 +-
devstack/settings                                  |   22 +-
.../_images/etsi-getting-started-sample-vnf.png    |  Bin 0 -> 8604 bytes
.../_images/etsi-getting-started-sample-vnf.pu     |    9 +
.../_images/etsi_containerized_vnf_usage_guide.png |  Bin 0 -> 43617 bytes
.../_images/etsi_containerized_vnf_usage_guide.pu  |   38 +
.../etsi_vnf_deployment_as_vm_with_tosca.png       |  Bin 0 -> 36778 bytes
.../etsi_vnf_deployment_as_vm_with_tosca.pu        |   35 +
.../etsi_vnf_deployment_as_vm_with_user_data.png   |  Bin 0 -> 40438 bytes
.../etsi_vnf_deployment_as_vm_with_user_data.pu    |   38 +
.../contributor/vnfd_template_description.rst      |   26 +-
.../contributor/vnfd_template_parameterization.rst |   16 +-
.../contributor/vnffgd_template_description.rst    |   12 +-
...ting_started.rst => legacy_getting_started.rst} |   32 +-
.../reference/mistral_workflows_usage_guide.rst    |    4 +-
.../reference/reservation_policy_usage_guide.rst   |    4 +-
.../user/etsi_containerized_vnf_usage_guide.rst    |   57 +-
.../etsi_vnf_change_external_vnf_connectivity.rst  |    2 +-
.../user/etsi_vnf_deployment_as_vm_with_tosca.rst  |   34 +-
.../etsi_vnf_deployment_as_vm_with_user_data.rst   |   36 +-
.../user/mgmt_driver_deploy_k8s_usage_guide.rst    |  725 +++++++++-
etc/config-generator.conf                          |    2 +
etc/tacker/api-paste.ini                           |   18 +
lower-constraints.txt                              |  164 ---
playbooks/devstack/pre.yaml                        |    1 +
...multi-version-api-support-0653df1edb67162e.yaml |   24 +
.../bp-placement-constraints-e3256cfc2d1b2b9f.yaml |    5 +
.../bug-1923360-link-vnflcm-486fbbffb2636b50.yaml  |    7 +
...1923425-add-endpoint-info-77c3f975d0f876c9.yaml |    6 +
...1923478-wrong-opocc-notif-523c33da2d9a0e04.yaml |    7 +
...-1923528-too-many-workers-919ad36e0c0ea9b0.yaml |   11 +
...23540-unzipped-permission-4f34dce4a73a9342.yaml |    8 +
...g-1924214-unexpected-heal-e59f6dcf0f03bc6a.yaml |    8 +
...-missing-vnf-config-props-c3bc122d70041da1.yaml |    7 +
.../notes/cirros-0.5.2-51990bfb9ec72fc9.yaml       |    4 +
.../drop-sqlalchemy-filters-7ba7a03a309654bc.yaml  |    8 +
.../notes/ovs-to-ovn-2f14dcaaa7b186b5.yaml         |    5 +
.../revise-doc-user-guide-cbd7b20ef04d373e.yaml    |   18 +
.../support-cir-k8s-cluster-d2596de8fed78f6c.yaml  |   27 +
...support-helmchart-k8s-vim-3604f0070cca6b63.yaml |   10 +
...-k8s-mgmtdriver-kubespray-b0ecbaaefb755b11.yaml |   24 +
.../support-pv-k8s-cluster-2893a5619ea9e91c.yaml   |   12 +
releasenotes/source/index.rst                      |    1 +
releasenotes/source/wallaby.rst                    |    6 +
requirements-extra.txt                             |    8 -
requirements.txt                                   |   20 +-
.../files/create_admin_token.yaml                  |   23 +
roles/setup-default-vim/tasks/main.yaml            |   45 +
roles/setup-helm/defaults/main.yaml                |    4 +
roles/setup-helm/files/50_helm_sh                  |    1 +
roles/setup-helm/tasks/main.yaml                   |  106 ++
.../lcm_instantiate_request/sample_param_file.json |    3 +
.../Definitions/etsi_nfv_sol001_common_types.yaml  |  202 +++
.../Definitions/etsi_nfv_sol001_vnfd_types.yaml    | 1465 +++++++++++++++++++
.../Definitions/sample_vnfd_df_simple.yaml         |  136 ++
.../Definitions/sample_vnfd_top.yaml               |   31 +
.../Definitions/sample_vnfd_types.yaml             |   63 +
.../sample_vnf_package_csar/Files/images/.gitkeep  |    0
.../TOSCA-Metadata/TOSCA.meta                      |    4 +
.../etsi_getting_started/tosca/vim/vim_config.yaml |    7 +
.../lcm_instantiate_request/sample_param_file.json |   43 +
.../simple/sample_lcm_with_user_data_hot.yaml      |   32 +
.../userdata/sample_vnf_package_csar/Definitions   |    1 +
.../userdata/sample_vnf_package_csar/Files         |    1 +
.../sample_vnf_package_csar/TOSCA-Metadata         |    1 +
.../sample_vnf_package_csar/UserData/__init__.py   |    0
.../UserData/lcm_user_data.py                      |   39 +
samples/etsi_getting_started/userdata/vim          |    1 +
samples/mgmt_driver/install_helm.sh                |   49 +
samples/mgmt_driver/install_k8s_cluster.sh         |   19 +-
samples/mgmt_driver/kubernetes_mgmt.py             | 1245 +++++++++++++++-
.../BaseHOT/complex/complex_hot_top.yaml           |   14 +-
.../nested/podaffinity_nested_master.yaml          |   34 +
.../nested/podaffinity_nested_worker.yaml          |   30 +
.../BaseHOT/podaffinity/podaffinity_hot_top.yaml   |   95 ++
.../BaseHOT/simple/simple_hot_top.yaml             |   14 +-
.../sample_kubernetes_df_podaffinity.yaml          |  254 ++++
.../Definitions/sample_kubernetes_top.vnfd.yaml    |    1 +
.../Definitions/sample_kubernetes_types.yaml       |    2 +-
.../TOSCA-Metadata/TOSCA.meta                      |    9 +-
.../cnf_nodeport_setting/cnf_nodeport_mgmt.py      |  363 +++++
.../Definitions/helloworld3_df_simple.yaml         |  124 ++
.../Definitions/helloworld3_top.vnfd.yaml          |   31 +
.../Definitions/helloworld3_types.yaml             |   53 +
.../Files/kubernetes/deployment.yaml               |   28 +
.../Files/kubernetes/service_with_nodeport.yaml    |   16 +
.../Files/kubernetes/service_without_nodeport.yaml |   11 +
.../TOSCA-Metadata/TOSCA.meta                      |   29 +
.../kubespray/cnf_nodeport_setting/configure_lb.sh |  128 ++
.../mgmt_driver/kubespray/install_external_lb.sh   |  278 ++++
samples/mgmt_driver/kubespray/kubespray_mgmt.py    | 1530 ++++++++++++++++++++
.../BaseHOT/simple/base_hot_top.yaml               |   87 ++
.../simple/nested/base_hot_nested_master.yaml      |   33 +
.../simple/nested/base_hot_nested_worker.yaml      |   33 +
.../Definitions/sample_kubernetes_df_simple.yaml   |  288 ++++
.../Definitions/sample_kubernetes_top.vnfd.yaml    |   31 +
.../Definitions/sample_kubernetes_types.yaml       |   63 +
.../TOSCA-Metadata/TOSCA.meta                      |   14 +
.../kubespray_vnf_package/UserData/__init__.py     |    0
.../UserData/lcm_user_data.py                      |   35 +
samples/mgmt_driver/private_registry_mgmt.py       |  467 ++++++
.../Definitions/etsi_nfv_sol001_common_types.yaml  |  202 +++
.../Definitions/etsi_nfv_sol001_vnfd_types.yaml    | 1465 +++++++++++++++++++
.../Definitions/sample_vnfd_df_simple.yaml         |  101 ++
.../Definitions/sample_vnfd_top.yaml               |   31 +
.../Definitions/sample_vnfd_types.yaml             |   63 +
.../TOSCA-Metadata/TOSCA.meta                      |   12 +
samples/mistral/workflows/input/create_vnfd.json   |    2 +-
.../tosca-templates/nsd/sample-tosca-vnfd1.yaml    |    4 +-
.../tosca-templates/nsd/sample-tosca-vnfd2.yaml    |    4 +-
.../tosca-templates/nsd/sample2-tosca-vnfd1.yaml   |    4 +-
.../tosca-templates/nsd/sample2-tosca-vnfd2.yaml   |    4 +-
.../vnfd/tosca-placement-policy-anti-affinity.yaml |    4 +-
.../vnfd/tosca-vnfd-alarm-multi-actions.yaml       |    2 +-
.../vnfd/tosca-vnfd-alarm-respawn.yaml             |    2 +-
.../vnfd/tosca-vnfd-alarm-scale.yaml               |    4 +-
.../vnfd/tosca-vnfd-block-attach.yaml              |    4 +-
.../tosca-vnfd-containerized-two-containers.yaml   |    4 +-
.../vnfd/tosca-vnfd-containerized.yaml             |    2 +
.../vnfd/tosca-vnfd-cpu-dedicate.yaml              |    2 +-
.../vnfd/tosca-vnfd-hello-world.yaml               |    2 +-
.../vnfd/tosca-vnfd-host-reservation.yaml          |    2 +-
.../tosca-templates/vnfd/tosca-vnfd-hugepages.yaml |    2 +-
samples/tosca-templates/vnfd/tosca-vnfd-image.yaml |    2 +-
.../vnfd/tosca-vnfd-instance-reservation.yaml      |    2 +-
.../tosca-templates/vnfd/tosca-vnfd-keyname.yaml   |    2 +-
.../tosca-templates/vnfd/tosca-vnfd-mac-ip.yaml    |    2 +-
.../vnfd/tosca-vnfd-monitor-multi-vdu.yaml         |    6 +-
.../tosca-templates/vnfd/tosca-vnfd-monitor.yaml   |    2 +-
.../vnfd/tosca-vnfd-monitoring-vdu-autoheal.yaml   |    2 +-
.../tosca-templates/vnfd/tosca-vnfd-multi-vdu.yaml |    6 +-
.../tosca-templates/vnfd/tosca-vnfd-network.yaml   |    2 +-
.../vnfd/tosca-vnfd-nova-flavor.yaml               |    2 +-
.../tosca-templates/vnfd/tosca-vnfd-numacount.yaml |    2 +-
.../vnfd/tosca-vnfd-numadefine.yaml                |    2 +-
.../vnfd/tosca-vnfd-param-values.yaml              |    4 +-
samples/tosca-templates/vnfd/tosca-vnfd-scale.yaml |    6 +-
.../tosca-templates/vnfd/tosca-vnfd-secgroups.yaml |    2 +-
.../tosca-templates/vnfd/tosca-vnfd-userdata.yaml  |    2 +-
.../vnfd/tosca-vnfd-vcpu-topology.yaml             |    2 +-
.../tosca-templates/vnfd/tosca-vnfd-vdu-name.yaml  |    2 +-
samples/tosca-templates/vnfd/tosca-vnfd-vip.yaml   |    4 +-
...vnfd_assign_fip_to_vdu_floating_ip_address.yaml |    2 +-
...ca_vnfd_assign_fip_to_vdu_floating_network.yaml |    2 +-
.../vnffg-nsd/tosca-vnfd1-sample.yaml              |    2 +-
.../vnffg-nsd/tosca-vnfd2-sample.yaml              |    2 +-
.../tosca-templates/vnffgd/tosca-vnffg-vnfd1.yaml  |    2 +-
.../tosca-templates/vnffgd/tosca-vnffg-vnfd2.yaml  |    2 +-
.../Definitions/helloworld3_df_simple.yaml         |   12 +-
.../Files/images/cirros-0.4.0-x86_64-disk.img      |    1 -
.../Files/images/cirros-0.5.2-x86_64-disk.img      |    1 +
samples/vnf_packages/TOSCA-Metadata/TOSCA.meta     |    2 +-
setup.cfg                                          |    8 +-
tacker/api/api_common.py                           |   25 +
tacker/api/common/_filters.py                      |   22 +-
tacker/api/validation/validators.py                |   12 +
tacker/api/views/vnf_lcm.py                        |   76 +-
tacker/api/views/vnf_lcm_op_occs.py                |   43 +-
tacker/api/vnflcm/v1/controller.py                 |   57 +-
tacker/api/vnflcm/v1/router.py                     |    4 +
tacker/cmd/eventlet/tacker_server.py               |    2 +
tacker/common/csar_utils.py                        |   26 +-
tacker/common/exceptions.py                        |    4 +
tacker/common/rpc.py                               |    5 +-
tacker/conductor/conductor_server.py               |  360 +++--
tacker/context.py                                  |    9 +
tacker/db/db_base.py                               |    5 +-
.../6dc60a5760e5_add_extra_field_to_vims_db.py     |   36 +
.../db/migration/alembic_migrations/versions/HEAD  |    2 +-
...a23ebee909a8_introduce_sol_refactored_models.py |   97 ++
tacker/db/migration/models/head.py                 |    7 +-
tacker/db/nfvo/nfvo_db.py                          |    1 +
tacker/db/nfvo/nfvo_db_plugin.py                   |   10 +-
tacker/db/nfvo/ns_db.py                            |    2 +-
tacker/db/nfvo/vnffg_db.py                         |    8 +-
tacker/db/vnfm/vnfm_db.py                          |    4 +-
tacker/extensions/vnfm.py                          |   12 +
tacker/objects/common.py                           |   65 +
tacker/objects/heal_vnf_request.py                 |    6 +-
tacker/objects/scale_vnf_request.py                |    2 +-
tacker/objects/terminate_vnf_req.py                |    2 +-
tacker/objects/vim_connection.py                   |    9 +-
tacker/objects/vnf_instance.py                     |   10 +-
tacker/objects/vnf_instantiated_info.py            |    2 +-
tacker/objects/vnf_lcm_op_occs.py                  |   59 +-
tacker/objects/vnf_lcm_subscriptions.py            |    6 +-
tacker/objects/vnf_package.py                      |   16 +-
tacker/objects/vnf_software_image.py               |    2 +-
tacker/policies/__init__.py                        |    2 +
tacker/policies/vnf_lcm.py                         |   11 +
tacker/policy.py                                   |    4 +-
tacker/service.py                                  |    3 +-
tacker/sol_refactored/api/api_version.py           |  115 ++
tacker/sol_refactored/api/policies/vnflcm_v2.py    |  170 +++
tacker/sol_refactored/api/router.py                |   54 +
tacker/sol_refactored/api/schemas/__init__.py      |    0
tacker/sol_refactored/api/schemas/common_types.py  |  244 ++++
tacker/sol_refactored/api/schemas/vnflcm_v2.py     |  252 ++++
tacker/sol_refactored/api/validator.py             |   49 +
tacker/sol_refactored/api/wsgi.py                  |  180 +++
tacker/sol_refactored/common/config.py             |   79 +
tacker/sol_refactored/common/coordinate.py         |   69 +
tacker/sol_refactored/common/exceptions.py         |  212 +++
tacker/sol_refactored/common/http_client.py        |  237 +++
tacker/sol_refactored/common/lcm_op_occ_utils.py   |  181 +++
tacker/sol_refactored/common/subscription_utils.py |  269 ++++
tacker/sol_refactored/common/vim_utils.py          |   79 +
tacker/sol_refactored/common/vnf_instance_utils.py |   77 +
tacker/sol_refactored/common/vnfd_utils.py         |  353 +++++
tacker/sol_refactored/conductor/__init__.py        |    0
.../sol_refactored/conductor/conductor_rpc_v2.py   |   40 +
tacker/sol_refactored/conductor/conductor_v2.py    |  131 ++
tacker/sol_refactored/conductor/v2_hook.py         |   29 +
.../sol_refactored/conductor/vnflcm_driver_v2.py   |  379 +++++
tacker/sol_refactored/controller/__init__.py       |    0
tacker/sol_refactored/controller/vnflcm_v2.py      |  338 +++++
.../sol_refactored/controller/vnflcm_versions.py   |   27 +
tacker/sol_refactored/controller/vnflcm_view.py    |  366 +++++
tacker/sol_refactored/db/__init__.py               |    0
tacker/sol_refactored/db/api.py                    |   24 +
tacker/sol_refactored/db/sqlalchemy/__init__.py    |    0
tacker/sol_refactored/db/sqlalchemy/models.py      |  100 ++
.../infra_drivers/openstack/heat_utils.py          |  130 ++
.../infra_drivers/openstack/openstack.py           |  535 +++++++
.../infra_drivers/openstack/userdata_default.py    |   86 ++
.../infra_drivers/openstack/userdata_main.py       |   59 +
.../infra_drivers/openstack/userdata_utils.py      |  216 +++
.../sol_refactored/mgmt_drivers/sample_script.py   |   67 +
tacker/sol_refactored/nfvo/glance_utils.py         |   58 +
tacker/sol_refactored/nfvo/local_nfvo.py           |  305 ++++
tacker/sol_refactored/nfvo/nfvo_client.py          |  143 ++
tacker/sol_refactored/objects/__init__.py          |  125 ++
tacker/sol_refactored/objects/base.py              |  440 ++++++
.../objects/common/cp_protocol_data.py             |   33 +
.../objects/common/ext_link_port_data.py           |   32 +
.../common/ext_managed_virtual_link_data.py        |   40 +
.../objects/common/ext_virtual_link_data.py        |   37 +
tacker/sol_refactored/objects/common/fields.py     |  111 ++
.../common/ip_over_ethernet_address_data.py        |   67 +
tacker/sol_refactored/objects/common/link.py       |   30 +
.../objects/common/notification_link.py            |   30 +
.../objects/common/problem_details.py              |   34 +
.../objects/common/resource_handle.py              |   33 +
.../objects/common/subscription_authentication.py  |   72 +
.../objects/common/vim_connection_info.py          |   34 +
.../objects/common/vnf_ext_cp_config.py            |   33 +
.../objects/common/vnf_ext_cp_data.py              |   32 +
.../common/vnf_instance_subscription_filter.py     |   80 +
.../objects/v1/constraint_resource_ref.py          |   37 +
tacker/sol_refactored/objects/v1/fields.py         |   43 +
tacker/sol_refactored/objects/v1/grant.py          |   85 ++
tacker/sol_refactored/objects/v1/grant_info.py     |   38 +
tacker/sol_refactored/objects/v1/grant_request.py  |   64 +
.../objects/v1/placement_constraint.py             |   51 +
.../objects/v1/resource_definition.py              |   46 +
.../objects/v1/snapshot_resource_definition.py     |   35 +
.../objects/v1/vim_compute_resource_flavour.py     |   37 +
tacker/sol_refactored/objects/v1/vim_constraint.py |   35 +
.../objects/v1/vim_snapshot_resource.py            |   35 +
.../objects/v1/vim_software_image.py               |   36 +
.../sol_refactored/objects/v1/zone_group_info.py   |   33 +
tacker/sol_refactored/objects/v1/zone_info.py      |   36 +
.../objects/v2/affected_ext_link_port.py           |   41 +
.../objects/v2/affected_virtual_link.py            |   49 +
.../objects/v2/affected_virtual_storage.py         |   46 +
tacker/sol_refactored/objects/v2/affected_vnfc.py  |   49 +
tacker/sol_refactored/objects/v2/cancel_mode.py    |   30 +
.../objects/v2/change_current_vnf_pkg_request.py   |   40 +
.../v2/change_ext_vnf_connectivity_request.py      |   35 +
.../objects/v2/change_vnf_flavour_request.py       |   40 +
.../sol_refactored/objects/v2/cp_protocol_info.py  |   34 +
.../objects/v2/create_vnf_pkg_info_request.py      |   31 +
.../objects/v2/create_vnf_request.py               |   33 +
.../objects/v2/create_vnf_snapshot_info_request.py |   32 +
.../objects/v2/create_vnf_snapshot_request.py      |   35 +
.../objects/v2/ext_link_port_info.py               |   33 +
.../objects/v2/ext_managed_virtual_link_info.py    |   39 +
.../objects/v2/ext_virtual_link_info.py            |   36 +
.../objects/v2/external_artifacts_access_config.py |   73 +
tacker/sol_refactored/objects/v2/fields.py         |  175 +++
.../sol_refactored/objects/v2/heal_vnf_request.py  |   34 +
.../objects/v2/instantiate_vnf_request.py          |   41 +
.../objects/v2/ip_over_ethernet_address_info.py    |   66 +
tacker/sol_refactored/objects/v2/lccn_links.py     |   35 +
.../sol_refactored/objects/v2/lccn_subscription.py |   55 +
.../objects/v2/lccn_subscription_request.py        |   38 +
.../v2/lifecycle_change_notifications_filter.py    |   45 +
.../modifications_triggered_by_vnf_pkg_change.py   |   39 +
.../objects/v2/monitoring_parameter.py             |   34 +
.../objects/v2/operate_vnf_request.py              |   36 +
tacker/sol_refactored/objects/v2/pkgm_links.py     |   33 +
.../objects/v2/pkgm_notification_filter.py         |   91 ++
.../objects/v2/pkgm_subscription_request.py        |   35 +
.../objects/v2/revert_to_vnf_snapshot_request.py   |   35 +
tacker/sol_refactored/objects/v2/scale_info.py     |   32 +
.../sol_refactored/objects/v2/scale_vnf_request.py |   34 +
.../objects/v2/scale_vnf_to_level_request.py       |   32 +
.../objects/v2/terminate_vnf_request.py            |   33 +
.../v2/upload_vnf_package_from_uri_request.py      |   58 +
.../objects/v2/virtual_storage_resource_info.py    |   38 +
.../sol_refactored/objects/v2/vnf_ext_cp_info.py   |   39 +
.../v2/vnf_identifier_creation_notification.py     |   36 +
.../v2/vnf_identifier_deletion_notification.py     |   36 +
.../objects/v2/vnf_info_modification_request.py    |   44 +
.../objects/v2/vnf_info_modifications.py           |   45 +
tacker/sol_refactored/objects/v2/vnf_instance.py   |  109 ++
tacker/sol_refactored/objects/v2/vnf_lcm_op_occ.py |  136 ++
.../vnf_lcm_operation_occurrence_notification.py   |   61 +
.../objects/v2/vnf_link_port_data.py               |   32 +
.../objects/v2/vnf_link_port_info.py               |   36 +
.../objects/v2/vnf_package_artifact_info.py        |   43 +
.../objects/v2/vnf_package_change_notification.py  |   41 +
.../v2/vnf_package_onboarding_notification.py      |   39 +
.../objects/v2/vnf_package_software_image_info.py  |   70 +
tacker/sol_refactored/objects/v2/vnf_pkg_info.py   |   74 +
.../objects/v2/vnf_pkg_info_modifications.py       |   34 +
tacker/sol_refactored/objects/v2/vnf_snapshot.py   |   54 +
.../sol_refactored/objects/v2/vnf_snapshot_info.py |   47 +
.../v2/vnf_snapshot_info_modification_request.py   |   33 +
.../objects/v2/vnf_snapshot_info_modifications.py  |   33 +
.../objects/v2/vnf_state_snapshot_info.py          |   32 +
.../objects/v2/vnf_virtual_link_resource_info.py   |   40 +
tacker/sol_refactored/objects/v2/vnfc_info.py      |   35 +
.../objects/v2/vnfc_info_modifications.py          |   32 +
.../objects/v2/vnfc_resource_info.py               |   59 +
.../objects/v2/vnfc_snapshot_info.py               |   52 +
tacker/sol_refactored/test-tools/cli.py            |  171 +++
.../test-tools/notif_endpoint_app.py               |  111 ++
...86_64-disk.img => cirros-0.5.2-x86_64-disk.img} |  Bin 12716032 -> 16300544 bytes
.../Definitions/helloworld3_df_simple.yaml         |   12 +-
.../Definitions/helloworld3_df_simple.yaml         |    8 +-
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../Definitions/helloworld3_df_simple.yaml         |    2 +-
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../Definitions/helloworld3_df_simple.yaml         |    6 +-
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../Definitions/helloworld3_df_simple.yaml         |   12 +-
.../Definitions/helloworld3_df_simple.yaml         |   12 +-
.../functional3/BaseHOT/simple/helloworld3.yaml    |   14 +-
.../Definitions/helloworld3_df_simple.yaml         |   12 +-
.../functional4/BaseHOT/simple/helloworld3.yaml    |   12 +-
.../Definitions/helloworld3_df_simple.yaml         |   12 +-
.../functional5/BaseHOT/simple/helloworld3.yaml    |   12 +-
.../Definitions/helloworld3_df_simple.yaml         |   12 +-
.../functional6/BaseHOT/simple/helloworld3.yaml    |   31 +-
.../functional6/BaseHOT/simple/nested/VDU1.yaml    |    4 +
.../functional6/BaseHOT/simple/nested/VDU2.yaml    |   10 +-
.../Definitions/helloworld3_df_simple.yaml         |   38 +-
.../functional7/BaseHOT/simple/helloworld3.yaml    |  100 ++
.../functional7/BaseHOT/simple/nested/VDU1.yaml    |   65 +
.../functional7/BaseHOT/simple/nested/VDU2.yaml    |   65 +
.../Definitions/helloworld3_df_simple.yaml         |  413 ++++++
.../Definitions/helloworld3_top.vnfd.yaml          |   31 +
.../functional7/Definitions/helloworld3_types.yaml |   55 +
.../etsi/nfv/functional7/TOSCA-Metadata/TOSCA.meta |    4 +
.../etsi/nfv/functional7/UserData/__init__.py      |    0
.../etsi/nfv/functional7/UserData/lcm_user_data.py |   35 +
.../Definitions/helloworld3_df_simple.yaml         |   12 +-
.../Definitions/helloworld3_df_simple.yaml         |   12 +-
.../Definitions/helloworld3_df_simple.yaml         |   12 +-
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../manifest.mf                                    |    6 +-
.../manifest.mf                                    |    6 +-
.../manifest.mf                                    |    6 +-
.../VNF.yaml                                       |   12 +-
.../nfv/sample_vnf_package_csar_manifest/VNF.mf    |    6 +-
.../nfv/sample_vnf_package_csar_manifest/VNF.yaml  |   12 +-
.../manifest.mf                                    |    6 +-
.../Definitions/helloworld3_df_simple.yaml         |   12 +-
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../vnfd_helloworld_single.yaml                    |   12 +-
.../Definitions/helloworld3_df_simple.yaml         |   12 +-
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../Definitions/sample_vnfd_df_helmchart.yaml      |  151 ++
.../Definitions/sample_vnfd_top.yaml               |   31 +
.../Definitions/sample_vnfd_types.yaml             |   53 +
.../Files/kubernetes/localhelm-0.1.0.tgz           |  Bin 0 -> 3603 bytes
.../test_cnf_helmchart/TOSCA-Metadata/TOSCA.meta   |    9 +
.../Files/kubernetes/statefulset_fail.yaml         |   36 +
.../TOSCA-Metadata/TOSCA.meta                      |    7 +-
.../Definitions/main_tosca.yaml                    |    2 +-
.../Definitions/tosca_with_vdus.yaml               |    8 +-
.../Definitions/helloworld3_df_simple.yaml         |    6 +-
.../Definitions/tosca_with_vdus.yaml               |    2 +-
.../Definitions/tosca_with_vdus.yaml               |   12 +-
...86_64-disk.img => cirros-0.5.2-x86_64-disk.img} |    0
.../vnfd_helloworld_single.yaml                    |   12 +-
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../test_heal_grant_unit/helloworld3_types.yaml    |   59 +
.../etsi/nfv/test_heal_grant_unit/sample_vnfd.yaml |  144 ++
.../Definitions/helloworld3_df_simple.yaml         |    6 +-
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../sample_lcm_with_user_data_df_simple.yaml       |    6 +-
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../BaseHOT/simple/helloworld3.yaml                |  101 ++
.../BaseHOT/simple/nested/VDU1.yaml                |   76 +
.../BaseHOT/simple/nested/VDU2.yaml                |   68 +
.../Definitions/helloworld3_df_simple.yaml         |  403 ++++++
.../Definitions/helloworld3_top.vnfd.yaml          |   31 +
.../Definitions/helloworld3_types.yaml             |   55 +
.../TOSCA-Metadata/TOSCA.meta                      |    4 +
.../UserData/__init__.py                           |    0
.../UserData/lcm_user_data.py                      |   39 +
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../TOSCA-Metadata/TOSCA.meta                      |    2 +-
.../vnflcm1/Definitions/helloworld3_df_simple.yaml |    6 +-
.../etsi/nfv/vnflcm1/TOSCA-Metadata/TOSCA.meta     |    2 +-
.../vnflcm2/Definitions/helloworld3_df_simple.yaml |    6 +-
.../etsi/nfv/vnflcm2/TOSCA-Metadata/TOSCA.meta     |    2 +-
.../Definitions/helloworld3simple.vnfd.tosca.yaml  |    6 +-
.../etsi/nfv/vnflcm3/TOSCA-Metadata/TOSCA.meta     |    2 +-
.../vnflcm4/Definitions/helloworld3_df_simple.yaml |   12 +-
.../etsi/nfv/vnflcm4/TOSCA-Metadata/TOSCA.meta     |    2 +-
.../etsi/nfv/vnfpkgm1/TOSCA-Metadata/TOSCA.meta    |    2 +-
.../Definitions/helloworld3_df_simple.yaml         |   12 +-
.../etsi/nfv/vnfpkgm2/TOSCA-Metadata/TOSCA.meta    |    2 +-
.../etc/samples/etsi/nfv/vnfpkgm2/manifest.mf      |    6 +-
.../etsi/nfv/vnfpkgm3/vnfd_helloworld_single.mf    |    6 +-
.../etsi/nfv/vnfpkgm3/vnfd_helloworld_single.yaml  |   12 +-
.../etc/samples/hot_lcm_user_data_with_scale.yaml  |   81 ++
.../etc/samples/sample-tosca-alarm-respawn.yaml    |    2 +-
.../etc/samples/sample-tosca-alarm-scale.yaml      |    4 +-
.../sample-tosca-vnf-artifacts-image-values.yaml   |    2 +-
.../sample-tosca-vnfd-anti-affinity-multi-vdu.yaml |    6 +-
.../samples/sample-tosca-vnfd-block-storage.yaml   |    4 +-
.../sample-tosca-vnfd-existing-block-storage.yaml  |    2 +-
.../etc/samples/sample-tosca-vnfd-flavor.yaml      |    2 +-
.../sample-tosca-vnfd-instance-reservation.yaml    |    4 +-
.../samples/sample-tosca-vnfd-large-template.yaml  |    4 +-
.../etc/samples/sample-tosca-vnfd-maintenance.yaml |    6 +-
.../etc/samples/sample-tosca-vnfd-monitor.yaml     |    2 +-
...sca-vnfd-multi-vdu-monitoring-vdu-autoheal.yaml |    4 +-
.../sample-tosca-vnfd-multi-vdu-monitoring.yaml    |    6 +-
.../etc/samples/sample-tosca-vnfd-multi-vdu.yaml   |    6 +-
.../etc/samples/sample-tosca-vnfd-no-monitor.yaml  |    2 +-
...ample-tosca-vnfd-placement-policy-affinity.yaml |    4 +-
...-tosca-vnfd-placement-policy-anti-affinity.yaml |    4 +-
...sample-tosca-vnfd-placement-policy-invalid.yaml |    6 +-
...ca-vnfd-single-vdu-monitoring-vdu-autoheal.yaml |    2 +-
.../etc/samples/sample-tosca-vnfd-static-ip.yaml   |    2 +-
.../sample_tosca_assign_floatingip_to_vdu.yaml     |    2 +-
.../Definitions/sample_vnfd_df_complex_int.yaml    |   12 +-
.../Definitions/sample_vnfd_df_simple_int.yaml     |   12 +-
...86_64-disk.img => cirros-0.5.2-x86_64-disk.img} |    0
.../manifest.mf                                    |    4 +-
.../etc/samples/tosca-ns-vnffg-vnfd1-sample.yaml   |    2 +-
.../etc/samples/tosca-ns-vnffg-vnfd2-sample.yaml   |    2 +-
.../legacy/vnfm/test_vnf_placement_policy.py       |    7 +
.../functional/sol/vnflcm/test_vnf_instance.py     |  303 +++-
.../sol/vnflcm/test_vnf_instance_with_user_data.py |   72 +-
.../functional/sol/vnflcm/test_vnflcm_noop.py      |   26 +-
.../functional/sol/vnfpkgm/test_vnf_package.py     |   13 +-
.../sol_kubernetes/vnflcm/test_kubernetes.py       |  101 +-
.../sol_kubernetes/vnflcm/test_kubernetes_helm.py  |  447 ++++++
.../sol_separated_nfvo/vnflcm/fake_grant.py        |    9 +-
.../sol_separated_nfvo/vnflcm/fake_vnfpkgm.py      |    8 +-
...st_vnf_instance_with_user_data_nfvo_separate.py |  217 ++-
.../contents/BaseHOT/simple/nested/VDU1.yaml       |   87 ++
.../sample1/contents/BaseHOT/simple/sample1.yaml   |  125 ++
.../Definitions/etsi_nfv_sol001_common_types.yaml  |  202 +++
.../Definitions/etsi_nfv_sol001_vnfd_types.yaml    | 1463 +++++++++++++++++++
.../contents/Definitions/v2_sample1_df_simple.yaml |  406 ++++++
.../contents/Definitions/v2_sample1_top.vnfd.yaml  |   31 +
.../contents/Definitions/v2_sample1_types.yaml     |   55 +
.../sample1/contents/TOSCA-Metadata/TOSCA.meta     |    4 +
.../functional/sol_v2/samples/sample1/pkggen.py    |   58 +
.../contents/BaseHOT/simple/nested/VDU1.yaml       |   89 ++
.../sample2/contents/BaseHOT/simple/sample2.yaml   |  136 ++
.../Definitions/etsi_nfv_sol001_common_types.yaml  |  202 +++
.../Definitions/etsi_nfv_sol001_vnfd_types.yaml    | 1463 +++++++++++++++++++
.../contents/Definitions/v2_sample2_df_simple.yaml |  406 ++++++
.../contents/Definitions/v2_sample2_top.vnfd.yaml  |   31 +
.../contents/Definitions/v2_sample2_types.yaml     |   55 +
.../sample2/contents/Scripts/sample_script.py      |   67 +
.../sample2/contents/TOSCA-Metadata/TOSCA.meta     |    4 +
.../sample2/contents/UserData/userdata_default.py  |   86 ++
.../functional/sol_v2/samples/sample2/pkggen.py    |   51 +
.../test_extension_extended_attribute.py           |    2 +-
.../unit/sol_refactored/api/test_api_version.py    |   62 +
.../unit/sol_refactored/api/test_validator.py      |   80 +
.../unit/sol_refactored/common/test_coordinate.py  |   80 +
.../common/test_vnf_instance_utils.py              |   67 +
.../unit/sol_refactored/common/test_vnfd_utils.py  |  151 ++
.../unit/sol_refactored/controller/__init__.py     |    0
.../sol_refactored/controller/test_vnflcm_v2.py    |   94 ++
.../sol_refactored/controller/test_vnflcm_view.py  |  153 ++
.../unit/sol_refactored/infra_drivers/__init__.py  |    0
.../infra_drivers/openstack/__init__.py            |    0
.../infra_drivers/openstack/test_userdata_utils.py |  218 +++
.../sample1/BaseHOT/simple/nested/VDU1.yaml        |   87 ++
.../samples/sample1/BaseHOT/simple/ut_sample1.yaml |  133 ++
.../sample1/Definitions/ut_sample1_df_simple.yaml  |  411 ++++++
.../samples/sample1/Scripts/sample_script.py       |   67 +
.../samples/sample1/TOSCA-Metadata/TOSCA.meta      |    4 +
.../samples/sample1/UserData/userdata_default.py   |   86 ++
.../unit/vnfm/infra_drivers/kubernetes/fakes.py    |  167 ++-
.../kubernetes_api_resource/api-service.yaml       |    4 +-
.../kubernetes_api_resource/daemon-set.yaml        |    8 +
.../kubernetes_api_resource/deployment.yaml        |    7 +
.../horizontal-pod-autoscaler.yaml                 |    3 +
.../kubernetes/kubernetes_api_resource/job.yaml    |    5 +-
.../kubernetes_api_resource/limit-range.yaml       |    3 +-
.../kubernetes_api_resource/namespace.yaml         |    6 +-
.../kubernetes_api_resource/network-policy.yaml    |    9 +-
.../kubernetes/kubernetes_api_resource/node.yaml   |   35 +
.../persistent-volume-claim.yaml                   |    9 +-
.../kubernetes_api_resource/persistent-volume.yaml |   42 +-
.../kubernetes_api_resource/pod-template.yaml      |   76 +
.../kubernetes/kubernetes_api_resource/pod.yaml    |   88 ++
.../kubernetes_api_resource/replica-set.yaml       |    7 +-
.../kubernetes_api_resource/resource-quota.yaml    |    6 +
.../self-subject-rule-review.yaml                  |   10 +-
.../kubernetes_api_resource/stateful-set.yaml      |    5 +
.../kubernetes_api_resource/storage-class.yaml     |    5 +
.../subject-access-review.yaml                     |    4 +-
.../kubernetes_api_resource/volume-attachment.yaml |    4 +-
.../kubernetes/test_kubernetes_driver.py           |   23 +-
.../kubernetes/test_kubernetes_driver_helm.py      |  509 +++++++
.../kubernetes/test_translate_outputs.py           |  739 ++++++++--
.../etsi_nfv/tosca_generate_hot_from_tosca.yaml    |    6 +-
...a_generate_hot_from_tosca_translator_error.yaml |    6 +-
..._generate_hot_from_tosca_with_params_error.yaml |    6 +-
...tosca_generate_hot_from_tosca_with_scaling.yaml |    6 +-
...t_from_tosca_with_scaling_invalid_inst_req.yaml |    6 +-
...rom_tosca_with_substitution_mappings_error.yaml |    6 +-
.../openstack/data/etsi_nfv/tosca_vnfd.yaml        |    6 +-
.../data/etsi_nfv/tosca_vnfd_group_member.yaml     |  103 ++
.../openstack/data/hot_alarm_scale_custom.yaml     |    2 +-
.../data/hot_image_before_processed_image.yaml     |    2 +-
.../infra_drivers/openstack/data/hot_openwrt.yaml  |    2 +-
.../openstack/data/hot_openwrt_ipparams.yaml       |    2 +-
.../openstack/data/hot_openwrt_params.yaml         |    2 +-
.../data/hot_placement_policy_affinity.yaml        |    4 +-
.../data/hot_placement_policy_anti_affinity.yaml   |    4 +-
.../hot_placement_policy_default_affinity.yaml     |    4 +-
.../hot_placement_policy_soft_anti_affinity.yaml   |    4 +-
.../openstack/data/hot_scale_custom.yaml           |    2 +-
.../openstack/data/hot_scale_grant.yaml            |    4 +-
.../openstack/data/hot_tosca_alarm_metadata.yaml   |    2 +-
.../openstack/data/hot_tosca_alarm_respawn.yaml    |    2 +-
.../hot_tosca_artifacts_image_vnfd_params.yaml     |    2 +-
.../data/hot_tosca_monitoring_multi_vdu.yaml       |    4 +-
.../test-tosca-vnfd-existing-block-storage.yaml    |    2 +-
.../data/test_tosca-vnfd-instance-reservation.yaml |    2 +-
.../data/test_tosca_vnfd_alarm_multi_actions.yaml  |    2 +-
.../data/test_tosca_vnfd_alarm_respawn.yaml        |    2 +-
.../data/test_tosca_vnfd_alarm_scale.yaml          |    4 +-
.../openstack/data/tosca_alarm_metadata.yaml       |    2 +-
.../openstack/data/tosca_alarm_respawn.yaml        |    2 +-
.../openstack/data/tosca_alarm_scale.yaml          |    4 +-
.../openstack/data/tosca_block_storage.yaml        |    4 +-
.../openstack/data/tosca_monitoring_multi_vdu.yaml |    4 +-
.../data/tosca_placement_policy_affinity.yaml      |    4 +-
.../data/tosca_placement_policy_anti_affinity.yaml |    4 +-
.../tosca_placement_policy_default_affinity.yaml   |    4 +-
.../tosca_placement_policy_soft_anti_affinity.yaml |    4 +-
.../infra_drivers/openstack/data/tosca_scale.yaml  |    4 +-
.../openstack/fixture_data/fixture_data_utils.py   |  187 ++-
.../vnfm/infra_drivers/openstack/test_openstack.py |    4 +-
.../openstack/test_openstack_driver.py             | 1255 ++++++++++++++--
.../openstack/test_update_template.py              |  227 +++
.../unit/vnfm/infra_drivers/openstack/test_vdu.py  |    4 +-
.../vdu_autoheal/test_vdu_autoheal.py              |    2 +-
tacker/tosca/lib/tacker_defs.yaml                  |    6 +
tacker/vnflcm/utils.py                             |   76 +-
tacker/vnflcm/vnflcm_driver.py                     |   77 +-
.../vnfm/infra_drivers/kubernetes/helm/__init__.py |    0
.../infra_drivers/kubernetes/helm/helm_client.py   |  152 ++
.../kubernetes/k8s/translate_inputs.py             |    7 +-
.../kubernetes/k8s/translate_outputs.py            |  135 +-
.../infra_drivers/kubernetes/kubernetes_driver.py  |  337 ++++-
tacker/vnfm/infra_drivers/openstack/openstack.py   |  564 ++++++--
.../infra_drivers/openstack/update_template.py     |   98 ++
tacker/vnfm/infra_drivers/openstack/vdu.py         |    3 +-
tacker/vnfm/infra_drivers/scale_driver.py          |    3 +-
.../policy_actions/vdu_autoheal/vdu_autoheal.py    |    3 +-
tacker/vnfm/vim_client.py                          |    3 +-
tacker/wsgi.py                                     |   91 +-
test-requirements.txt                              |    4 +-
tools/install_venv_common.py                       |    6 +-
tox.ini                                            |   24 +-
upper-constraints.txt                              |  575 --------
723 files changed, 45165 insertions(+), 3289 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index 7727198d..8352eaaa 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -4 +4 @@
-pbr!=2.1.0,>=2.0.0 # Apache-2.0
+pbr>=5.5.0 # Apache-2.0
@@ -12 +12 @@ eventlet!=0.18.3,!=0.20.1,>=0.18.2 # MIT
-requests>=2.20.0 # Apache-2.0
+requests>=2.25.1 # Apache-2.0
@@ -18 +17,0 @@ SQLAlchemy>=1.3.11 # MIT
-sqlalchemy-filters>=0.10.0
@@ -23 +22 @@ alembic>=0.9.6 # MIT
-stevedore>=1.20.0 # Apache-2.0
+stevedore>=3.3.0 # Apache-2.0
@@ -37 +36 @@ oslo.upgradecheck>=1.3.0 # Apache-2.0
-oslo.utils>=4.5.0 # Apache-2.0
+oslo.utils>=4.8.0 # Apache-2.0
@@ -49 +48 @@ castellan>=0.16.0 # Apache-2.0
-kubernetes>=11.0.0 # Apache-2.0
+kubernetes>=18.20.0 # Apache-2.0
@@ -52 +51 @@ tooz>=1.58.0 # Apache-2.0
-PyYAML>=5.1 # MIT
+PyYAML>=5.4.1 # MIT
@@ -58,6 +57 @@ glance-store>=2.4.0 # Apache-2.0
-# TODO(yasufum) Remove following comments after those two packages have devstack script.
-# NOTE(yasufum) We don't install tosca-parser and heat-translator of stable,
-# but the latest revision from git repo for development.
-# If you install packages, comment out two lines of `install_package_gitrepo` in
-# `devstack/plugin.sh` in addition to activate following lines.
-heat-translator>=2.2.0 # Apache-2.0
+heat-translator>=2.3.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index fe0fc3db..6ae7245b 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -9 +9 @@ ddt>=1.0.1 # MIT
-doc8>=0.8.1 # Apache-2.0
+doc8>=0.9.0 # Apache-2.0
@@ -14 +14 @@ python-tackerclient>=0.8.0 # Apache-2.0
-python-cinderclient>=3.3.0 # Apache-2.0
+python-cinderclient>=8.0.0 # Apache-2.0






More information about the Release-announce mailing list