You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
depot_tools/tests/gerrit_util_test.inputs/testLaunchHelperOK/git-remote-sso.py

39 lines
1.1 KiB
Python

#!/usr/bin/env python3
# Copyright 2024 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import os
import shutil
import sys
import tempfile
from pathlib import Path
THIS_DIR = Path(__file__).parent.absolute()
with tempfile.TemporaryDirectory() as tempdir:
tempdir = Path(tempdir)
target_config = tempdir / "gitconfig"
target_cookies = tempdir / "cookiefile.txt"
shutil.copyfile(THIS_DIR / "gitconfig", target_config)
shutil.copyfile(THIS_DIR / "cookiefile.txt", target_cookies)
print('http.proxy=localhost:12345')
print(f'include.path={target_config}')
print(f'http.cookiefile={target_cookies}')
sys.stdout.flush()
# need to fully close file descriptor, sys.stdout.close() doesn't seem to cut
# it.
os.close(1)
print("OK", file=sys.stderr)
# block until stdin closes, then clean everything via TemporaryDirectory().
#
# This emulates the behavior of the real git-remote-sso helper which just
# prints temporary configuration for a daemon running elsewhere.
sys.stdin.read()