From e0a877ed8f3f1685b9ca9bcadb1430bf5640ffc7 Mon Sep 17 00:00:00 2001 From: Yiwei Zhang Date: Fri, 5 Dec 2025 09:56:59 -0800 Subject: [PATCH] Revert "git_auth: Handle conflicting stale local config" This reverts commit e96cff71c91a9fcbd8836cfe81441ed01be64aeb. Reason for revert: causing https://issues.chromium.org/466343784 Original change's description: > git_auth: Handle conflicting stale local config > > As we prefer configuring the global config, it's possible to leave > stale local config behind if the user is swapping between emails. > > Change-Id: I86e2cda33a90b603e52d525fcb564fb0a5a68eab > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/7213753 > Reviewed-by: Gavin Mak > Commit-Queue: Allen Li No-Presubmit: true No-Tree-Checks: true No-Try: true Change-Id: Iec8ce86a6d17b26e5cc3940a38c6510ad3f855be Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/7231141 Bot-Commit: Rubber Stamper Auto-Submit: Yiwei Zhang Commit-Queue: Rubber Stamper --- git_auth.py | 14 -------------- tests/git_auth_test.py | 33 ++------------------------------- 2 files changed, 2 insertions(+), 45 deletions(-) diff --git a/git_auth.py b/git_auth.py index 932fe4e17a..fb92bd0771 100644 --- a/git_auth.py +++ b/git_auth.py @@ -340,9 +340,6 @@ class ConfigWizard(object): self._configure_sso(parts, scope=scope) return _ConfigInfo(method=_ConfigMethod.SSO) self._configure_oauth(parts, scope=scope) - if scope == 'global': - # Clear any potential overriding local config - self._clear_local_host_config(parts) return _ConfigInfo(method=_ConfigMethod.OAUTH) def _configure_sso(self, parts: urllib.parse.SplitResult, *, @@ -361,17 +358,6 @@ class ConfigWizard(object): self._set_url_rewrite_override(parts, scope=scope) self._clear_sso_rewrite(parts, scope=scope) - def _clear_local_host_config(self, parts: urllib.parse.SplitResult): - """Clear auth config for one Gerrit host. - - This is used to clear any local config that might override a - correct global config, as we default to configuring the global - config if the local config has the same email, but the local - config might have stale settings. - """ - self._clear_url_rewrite_override(parts, scope='local') - self._clear_sso_rewrite(parts, scope='local') - # Fixing competing auth def _fix_netrc(self) -> None: diff --git a/tests/git_auth_test.py b/tests/git_auth_test.py index a6f2b2f8f6..4b6f59ea4d 100755 --- a/tests/git_auth_test.py +++ b/tests/git_auth_test.py @@ -15,7 +15,6 @@ import sys import tempfile from typing import Iterable import unittest -from unittest import mock import urllib.parse sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) @@ -102,7 +101,7 @@ class TestConfigWizard(unittest.TestCase): } self.assertEqual(self.global_state, want) - def test_configure_sso_global_with_review_host(self): + def test_configure_review_sso_global(self): parts = urllib.parse.urlsplit( 'https://chromium-review.googlesource.com/chromium/tools/depot_tools.git' ) @@ -125,7 +124,7 @@ class TestConfigWizard(unittest.TestCase): } self.assertEqual(self.global_state, want) - def test_configure_oauth_global_with_review_host(self): + def test_configure_review_oauth_global(self): parts = urllib.parse.urlsplit( 'https://chromium-review.googlesource.com/chromium/tools/depot_tools.git' ) @@ -191,34 +190,6 @@ class TestConfigWizard(unittest.TestCase): 'https://chromium-review.googlesource.com/chromium/tools/depot_tools.git', ]) - @mock.patch('git_auth.ConfigWizard._check_use_sso', spec=True) - def test_configure_host_clears_conflicting_local_stale(self, check): - parts = urllib.parse.urlsplit( - 'https://chromium.googlesource.com/chromium/tools/depot_tools.git') - email = 'columbina@example.com' - - check.return_value = True - self.wizard._configure_host(parts, email, scope='local') - # Check local rule is created - self.assertEqual( - scm.GIT.GetConfigList(os.getcwd(), 'url.sso://chromium/.insteadof'), - [ - 'https://chromium.googlesource.com/', - 'https://chromium-review.googlesource.com/', - ]) - - check.return_value = False - self.wizard._configure_host(parts, email, scope='global') - want = { - 'credential.https://chromium.googlesource.com.helper': ['', 'luci'], - 'credential.https://chromium.googlesource.com.usehttppath': ['yes'], - } - self.assertEqual(self.global_state, want) - # Ensure the local rule gets purged - self.assertEqual( - scm.GIT.GetConfigList(os.getcwd(), 'url.sso://chromium/.insteadof'), - []) - def test_check_gitcookies_same(self): with tempfile.NamedTemporaryFile() as gitcookies: self.wizard._gitcookies = lambda: gitcookies.name