aboutsummaryrefslogtreecommitdiffstats
path: root/identity/identity.go
diff options
context:
space:
mode:
Diffstat (limited to 'identity/identity.go')
-rw-r--r--identity/identity.go16
1 files changed, 15 insertions, 1 deletions
diff --git a/identity/identity.go b/identity/identity.go
index a0800bcd..35edca18 100644
--- a/identity/identity.go
+++ b/identity/identity.go
@@ -204,8 +204,22 @@ func NewFromGitUser(repo repository.Repo) (*Identity, error) {
return NewIdentity(name, email), nil
}
+// IsUserIdentitySet tell if the user identity is correctly set.
+func IsUserIdentitySet(repo repository.RepoCommon) (bool, error) {
+ configs, err := repo.ReadConfigs(identityConfigKey)
+ if err != nil {
+ return false, err
+ }
+
+ if len(configs) > 1 {
+ return false, fmt.Errorf("multiple identity config exist")
+ }
+
+ return len(configs) == 1, nil
+}
+
// SetUserIdentity store the user identity's id in the git config
-func SetUserIdentity(repo repository.RepoCommon, identity Identity) error {
+func SetUserIdentity(repo repository.RepoCommon, identity *Identity) error {
return repo.StoreConfig(identityConfigKey, identity.Id())
}