From db70d1cc5c34516cae04460da5433a94d6371d53 Mon Sep 17 00:00:00 2001 From: Dave Berenbaum Date: Thu, 26 Jan 2023 11:05:14 -0500 Subject: [PATCH] analytics: differentiate ci users (#8838) --- dvc/analytics.py | 11 +++++++++-- pyproject.toml | 2 +- tests/unit/test_analytics.py | 1 + 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/dvc/analytics.py b/dvc/analytics.py index 7f196c02c..479c1ef91 100644 --- a/dvc/analytics.py +++ b/dvc/analytics.py @@ -102,17 +102,24 @@ def _runtime_info(): """ Gather information from the environment where DVC runs to fill a report. """ - from iterative_telemetry import find_or_create_user_id + from iterative_telemetry import _generate_ci_id, find_or_create_user_id from dvc import __version__ from dvc.utils import is_binary + ci_id = _generate_ci_id() + if ci_id: + group_id, user_id = ci_id + else: + group_id, user_id = None, find_or_create_user_id() + return { "dvc_version": __version__, "is_binary": is_binary(), "scm_class": _scm_in_use(), "system_info": _system_info(), - "user_id": find_or_create_user_id(), + "user_id": user_id, + "group_id": group_id, } diff --git a/pyproject.toml b/pyproject.toml index 07ef14ad0..461bcc2f3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -56,7 +56,7 @@ dependencies = [ "dvc-data==0.36.2", "dvc-http", "hydra-core>=1.1.0", - "iterative-telemetry==0.0.6", + "iterative-telemetry==0.0.7", "dvc-studio-client>=0.1.1" ] dynamic = ["version"] diff --git a/tests/unit/test_analytics.py b/tests/unit/test_analytics.py index d31a0b3d1..8adb1bc4c 100644 --- a/tests/unit/test_analytics.py +++ b/tests/unit/test_analytics.py @@ -49,6 +49,7 @@ def test_runtime_info(tmp_global_dir): "scm_class": Any("Git", None), "user_id": str, "system_info": dict, + "group_id": Any(str, None), }, required=True, )