mirror of
https://gerrit.googlesource.com/git-repo
synced 2024-12-21 07:16:21 +00:00
Enable use of REPO_CONFIG_DIR to customize .repoconfig location
For use cases with multiple instances of repo, eg some CI environments. Bug: https://crbug.com/gerrit/15803 Change-Id: I65c1cfc8f6a98adfeb5efefc7ac6b45bf8e134de Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/356719 Tested-by: Gavin Mak <gavinmak@google.com> Reviewed-by: Mike Frysinger <vapier@google.com>
This commit is contained in:
parent
c3d61ec252
commit
7e3b65beb7
@ -243,7 +243,9 @@ The `[branch]` settings are updated by `repo start` and `git branch`.
|
|||||||
|
|
||||||
## ~/ dotconfig layout
|
## ~/ dotconfig layout
|
||||||
|
|
||||||
Repo will create & maintain a few files in the user's home directory.
|
Repo will create & maintain a few files under the `.repoconfig/` directory.
|
||||||
|
This is placed in the user's home directory by default but can be changed by
|
||||||
|
setting `REPO_CONFIG_DIR`.
|
||||||
|
|
||||||
* `.repoconfig/`: Repo's per-user directory for all random config files/state.
|
* `.repoconfig/`: Repo's per-user directory for all random config files/state.
|
||||||
* `.repoconfig/config`: Per-user settings using [git-config] file format.
|
* `.repoconfig/config`: Per-user settings using [git-config] file format.
|
||||||
|
@ -69,8 +69,6 @@ def _key(name):
|
|||||||
class GitConfig(object):
|
class GitConfig(object):
|
||||||
_ForUser = None
|
_ForUser = None
|
||||||
|
|
||||||
_USER_CONFIG = '~/.gitconfig'
|
|
||||||
|
|
||||||
_ForSystem = None
|
_ForSystem = None
|
||||||
_SYSTEM_CONFIG = '/etc/gitconfig'
|
_SYSTEM_CONFIG = '/etc/gitconfig'
|
||||||
|
|
||||||
@ -83,9 +81,13 @@ class GitConfig(object):
|
|||||||
@classmethod
|
@classmethod
|
||||||
def ForUser(cls):
|
def ForUser(cls):
|
||||||
if cls._ForUser is None:
|
if cls._ForUser is None:
|
||||||
cls._ForUser = cls(configfile=os.path.expanduser(cls._USER_CONFIG))
|
cls._ForUser = cls(configfile=cls._getUserConfig())
|
||||||
return cls._ForUser
|
return cls._ForUser
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def _getUserConfig():
|
||||||
|
return os.path.expanduser('~/.gitconfig')
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def ForRepository(cls, gitdir, defaults=None):
|
def ForRepository(cls, gitdir, defaults=None):
|
||||||
return cls(configfile=os.path.join(gitdir, 'config'),
|
return cls(configfile=os.path.join(gitdir, 'config'),
|
||||||
@ -415,7 +417,10 @@ class GitConfig(object):
|
|||||||
class RepoConfig(GitConfig):
|
class RepoConfig(GitConfig):
|
||||||
"""User settings for repo itself."""
|
"""User settings for repo itself."""
|
||||||
|
|
||||||
_USER_CONFIG = '~/.repoconfig/config'
|
@staticmethod
|
||||||
|
def _getUserConfig():
|
||||||
|
repo_config_dir = os.getenv('REPO_CONFIG_DIR', os.path.expanduser('~'))
|
||||||
|
return os.path.join(repo_config_dir, '.repoconfig/config')
|
||||||
|
|
||||||
|
|
||||||
class RefSpec(object):
|
class RefSpec(object):
|
||||||
|
5
repo
5
repo
@ -149,7 +149,7 @@ if not REPO_REV:
|
|||||||
BUG_URL = 'https://bugs.chromium.org/p/gerrit/issues/entry?template=Repo+tool+issue'
|
BUG_URL = 'https://bugs.chromium.org/p/gerrit/issues/entry?template=Repo+tool+issue'
|
||||||
|
|
||||||
# increment this whenever we make important changes to this script
|
# increment this whenever we make important changes to this script
|
||||||
VERSION = (2, 30)
|
VERSION = (2, 32)
|
||||||
|
|
||||||
# increment this if the MAINTAINER_KEYS block is modified
|
# increment this if the MAINTAINER_KEYS block is modified
|
||||||
KEYRING_VERSION = (2, 3)
|
KEYRING_VERSION = (2, 3)
|
||||||
@ -265,7 +265,8 @@ else:
|
|||||||
urllib.error = urllib2
|
urllib.error = urllib2
|
||||||
|
|
||||||
|
|
||||||
home_dot_repo = os.path.expanduser('~/.repoconfig')
|
repo_config_dir = os.getenv('REPO_CONFIG_DIR', os.path.expanduser('~'))
|
||||||
|
home_dot_repo = os.path.join(repo_config_dir, '.repoconfig')
|
||||||
gpg_dir = os.path.join(home_dot_repo, 'gnupg')
|
gpg_dir = os.path.join(home_dot_repo, 'gnupg')
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user