From 75b8c6a91815ca8f244f33cc725638185032f512 Mon Sep 17 00:00:00 2001 From: Russ Savage Date: Tue, 23 Mar 2021 14:41:45 -0700 Subject: [PATCH 1/7] fix: adds dummy id to new cloned task --- influxdb_client/client/tasks_api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/influxdb_client/client/tasks_api.py b/influxdb_client/client/tasks_api.py index 61011714..f60d9521 100644 --- a/influxdb_client/client/tasks_api.py +++ b/influxdb_client/client/tasks_api.py @@ -98,7 +98,7 @@ def update_task_request(self, task_id, task_update_request: TaskUpdateRequest) - def clone_task(self, task: Task) -> Task: """Clone a task.""" - cloned = Task(name=task.name, org_id=task.org_id, org=task.org, flux=task.flux, status="active") + cloned = Task(id=0, name=task.name, org_id=task.org_id, org=task.org, flux=task.flux, status="active") created = self.create_task(cloned) labels = self.get_labels(task) From 7719f4d6fa0daa78b47c5ce5b0bdb27894d1e3b1 Mon Sep 17 00:00:00 2001 From: Russ Savage Date: Tue, 23 Mar 2021 14:49:03 -0700 Subject: [PATCH 2/7] fix: get_labels needs a task_id, not task --- influxdb_client/client/tasks_api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/influxdb_client/client/tasks_api.py b/influxdb_client/client/tasks_api.py index f60d9521..33ddc20f 100644 --- a/influxdb_client/client/tasks_api.py +++ b/influxdb_client/client/tasks_api.py @@ -101,7 +101,7 @@ def clone_task(self, task: Task) -> Task: cloned = Task(id=0, name=task.name, org_id=task.org_id, org=task.org, flux=task.flux, status="active") created = self.create_task(cloned) - labels = self.get_labels(task) + labels = self.get_labels(task.id) for label in labels: self.add_label(label, created.id) return created From 39e330e2b13bc02f078c33c3fd5028e0eb4bea1d Mon Sep 17 00:00:00 2001 From: Russ Savage Date: Tue, 23 Mar 2021 14:50:49 -0700 Subject: [PATCH 3/7] fix: labels object not iterable bug --- influxdb_client/client/tasks_api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/influxdb_client/client/tasks_api.py b/influxdb_client/client/tasks_api.py index 33ddc20f..1d62a7fc 100644 --- a/influxdb_client/client/tasks_api.py +++ b/influxdb_client/client/tasks_api.py @@ -102,7 +102,7 @@ def clone_task(self, task: Task) -> Task: created = self.create_task(cloned) labels = self.get_labels(task.id) - for label in labels: + for label in labels.labels: self.add_label(label, created.id) return created From 70026c33a9cdd24df2f727471672dc62de6344da Mon Sep 17 00:00:00 2001 From: Russ Savage Date: Tue, 23 Mar 2021 14:52:39 -0700 Subject: [PATCH 4/7] fix: sending label id into add_label --- influxdb_client/client/tasks_api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/influxdb_client/client/tasks_api.py b/influxdb_client/client/tasks_api.py index 1d62a7fc..8a9eae98 100644 --- a/influxdb_client/client/tasks_api.py +++ b/influxdb_client/client/tasks_api.py @@ -103,7 +103,7 @@ def clone_task(self, task: Task) -> Task: created = self.create_task(cloned) labels = self.get_labels(task.id) for label in labels.labels: - self.add_label(label, created.id) + self.add_label(label.id, created.id) return created def get_labels(self, task_id): From b4c687ad76d76e2f082aa928452581b2f4b50374 Mon Sep 17 00:00:00 2001 From: Jakub Bednar Date: Wed, 24 Mar 2021 06:47:30 +0100 Subject: [PATCH 5/7] fix: cloning labels for not saved Task --- influxdb_client/client/tasks_api.py | 7 ++++--- tests/test_TasksApi.py | 13 ++++++++++++- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/influxdb_client/client/tasks_api.py b/influxdb_client/client/tasks_api.py index 8a9eae98..d67b5d73 100644 --- a/influxdb_client/client/tasks_api.py +++ b/influxdb_client/client/tasks_api.py @@ -101,9 +101,10 @@ def clone_task(self, task: Task) -> Task: cloned = Task(id=0, name=task.name, org_id=task.org_id, org=task.org, flux=task.flux, status="active") created = self.create_task(cloned) - labels = self.get_labels(task.id) - for label in labels.labels: - self.add_label(label.id, created.id) + if task.id: + labels = self.get_labels(task.id) + for label in labels.labels: + self.add_label(label.id, created.id) return created def get_labels(self, task_id): diff --git a/tests/test_TasksApi.py b/tests/test_TasksApi.py index 9c3283a2..72828fe6 100644 --- a/tests/test_TasksApi.py +++ b/tests/test_TasksApi.py @@ -112,7 +112,6 @@ def test_create_task_with_offset(self): def test_create_task_every(self): task_name = self.generate_name("it_task") task = self.tasks_api.create_task_every(task_name, TASK_FLUX, "1h", self.organization) - print(task) self.assertIsNotNone(task) self.assertGreater(len(task.id), 1) @@ -391,3 +390,15 @@ def test_get_run(self): self.assertIsNotNone(run_by_id) self.assertEqual(run.id, run_by_id.id) + def test_clone(self): + task_name = self.generate_name("it_task") + task = self.tasks_api.create_task_every(task_name, TASK_FLUX, "1h", self.organization) + cloned = self.tasks_api.clone_task(task) + self.assertNotEqual(task.id, cloned.id) + self.assertEqual(task.flux, cloned.flux) + + def test_clone_new(self): + task = self.tasks_api._create_task(self.generate_name("it_task"), TASK_FLUX, "1h", None, self.organization.id) + cloned = self.tasks_api.clone_task(task) + self.assertNotEqual(task.id, cloned.id) + self.assertEqual(task.flux, cloned.flux) From bb5714249e1a66852bfed4bcc8641d10bf74e63c Mon Sep 17 00:00:00 2001 From: Jakub Bednar Date: Wed, 24 Mar 2021 06:55:17 +0100 Subject: [PATCH 6/7] chore: test labels --- tests/test_TasksApi.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/tests/test_TasksApi.py b/tests/test_TasksApi.py index 72828fe6..9511f338 100644 --- a/tests/test_TasksApi.py +++ b/tests/test_TasksApi.py @@ -391,11 +391,18 @@ def test_get_run(self): self.assertEqual(run.id, run_by_id.id) def test_clone(self): - task_name = self.generate_name("it_task") - task = self.tasks_api.create_task_every(task_name, TASK_FLUX, "1h", self.organization) + task = self.tasks_api.create_task_every(self.generate_name("it_task"), TASK_FLUX, "1h", self.organization) + label = self.labels_api.create_label(self.generate_name("it_task"), self.organization.id, { + "color": "green", + "location": "west" + }) + self.tasks_api.add_label(label.id, task.id) cloned = self.tasks_api.clone_task(task) self.assertNotEqual(task.id, cloned.id) self.assertEqual(task.flux, cloned.flux) + labels = self.tasks_api.get_labels(cloned.id).labels + self.assertEqual(1, len(labels)) + self.assertEqual(label.id, labels[0].id) def test_clone_new(self): task = self.tasks_api._create_task(self.generate_name("it_task"), TASK_FLUX, "1h", None, self.organization.id) From 3e00ab2a467635fbfbd48ed127f7d9b1ca35f2e7 Mon Sep 17 00:00:00 2001 From: Robert Hajek Date: Wed, 24 Mar 2021 10:00:49 +0100 Subject: [PATCH 7/7] chore: updated CHANGELOG.md --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6240f3f2..e108747a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ ### Bug Fixes 1. [#206](https://github.com/influxdata/influxdb-client-python/pull/207): Use default (system) certificates instead of Mozilla's root certificates (certifi.where()) +1. [#217](https://github.com/influxdata/influxdb-client-python/pull/217): Fixed clone_task function ### API 1. [#209](https://github.com/influxdata/influxdb-client-python/pull/209): Allow setting shard-group durations for buckets via API pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy