return changes_list
- def _remove_old_ro_tasks(self, nsr_id: str, changes_list: list, task_param) -> None:
- """Delete all ro_tasks registered for the targets vdurs (target_record)
- If task of type CREATE exist then vim will try to get info form deleted VMs.
- So remove all task related to target record.
-
- Args:
- nsr_id (str): NS record ID
- changes_list (list): list of dictionaries to create tasks later
- """
-
- ro_tasks = self.db.get_list("ro_tasks", {"tasks.nsr_id": nsr_id})
- for change in changes_list:
- if task_param == "task_id":
- param_to_check = "{}:{}".format(
- change.get("deployment_info", {}).get("action_id"),
- change.get("deployment_info", {}).get("task_index"),
- )
- elif task_param == "target_record":
- param_to_check = change["target_record"]
- for ro_task in ro_tasks:
- for task in ro_task["tasks"]:
- if task[task_param] == param_to_check:
- self.db.del_one(
- "ro_tasks",
- q_filter={
- "_id": ro_task["_id"],
- "modified_at": ro_task["modified_at"],
- },
- fail_on_empty=False,
- )
-
def recreate(self, session, indata, version, nsr_id, *args, **kwargs):
self.logger.debug("ns.recreate nsr_id={} indata={}".format(nsr_id, indata))
# TODO: validate_input(indata, recreate_schema)
tasks_by_target_record_id=tasks_by_target_record_id,
)
- self._remove_old_ro_tasks(nsr_id, changes_list, "target_record")
self.define_all_tasks(
changes_list=changes_list,
db_new_tasks=db_new_tasks,
action_id=action_id,
tasks_by_target_record_id=tasks_by_target_record_id,
)
- self._remove_old_ro_tasks(nsr_id, changes_list, "task_id")
self.define_all_tasks(
changes_list=changes_list,
db_new_tasks=db_new_tasks,
+++ /dev/null
-#######################################################################################
-# Copyright ETSI Contributors and Others.
-#
-# 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.
-#######################################################################################
----
-prelude: >
- Replace this text with content to appear at the top of the section for this
- release. All of the prelude content is merged together and then rendered
- separately from the items listed in other parts of the file, so the text
- needs to be worded so that both the prelude and the other items make sense
- when read independently. This may mean repeating some details. Not every
- release note requires a prelude. Usually only notes describing major
- features or adding release theme details should have a prelude.
-features:
- - |
- List new features here, or remove this section. All of the list items in
- this section are combined when the release notes are rendered, so the text
- needs to be worded so that it does not depend on any information only
- available in another section, such as the prelude. This may mean repeating
- some details.
-issues:
- - |
- List known issues here, or remove this section. All of the list items in
- this section are combined when the release notes are rendered, so the text
- needs to be worded so that it does not depend on any information only
- available in another section, such as the prelude. This may mean repeating
- some details.
-upgrade:
- - |
- List upgrade notes here, or remove this section. All of the list items in
- this section are combined when the release notes are rendered, so the text
- needs to be worded so that it does not depend on any information only
- available in another section, such as the prelude. This may mean repeating
- some details.
-deprecations:
- - |
- List deprecations notes here, or remove this section. All of the list
- items in this section are combined when the release notes are rendered, so
- the text needs to be worded so that it does not depend on any information
- only available in another section, such as the prelude. This may mean
- repeating some details.
-critical:
- - |
- Add critical notes here, or remove this section. All of the list items in
- this section are combined when the release notes are rendered, so the text
- needs to be worded so that it does not depend on any information only
- available in another section, such as the prelude. This may mean repeating
- some details.
-security:
- - |
- Add security notes here, or remove this section. All of the list items in
- this section are combined when the release notes are rendered, so the text
- needs to be worded so that it does not depend on any information only
- available in another section, such as the prelude. This may mean repeating
- some details.
-fixes:
- - |
- Add normal bug fixes here, or remove this section. All of the list items
- in this section are combined when the release notes are rendered, so the
- text needs to be worded so that it does not depend on any information only
- available in another section, such as the prelude. This may mean repeating
- some details.
-other:
- - |
- Add other notes here, or remove this section. All of the list items in
- this section are combined when the release notes are rendered, so the text
- needs to be worded so that it does not depend on any information only
- available in another section, such as the prelude. This may mean repeating
- some details.