... | ... | @@ -39,38 +39,38 @@ When no `"identity": "gerrit:[username]"` exists the login will still not work e |
|
|
|
|
|
The container log of the Gerrit container holds a message like:
|
|
|
|
|
|
`WARN com.google.gerrit.httpd.auth.ldap.LdapLoginServlet : '[username]' failed to sign in
|
|
|
com.google.gerrit.server.account.AccountException: Cannot assign external ID "username:[username]" to account [account_id]; external ID already in use.`
|
|
|
`WARN com.google.gerrit.httpd.auth.ldap.LdapLoginServlet : 'dummyusername' failed to sign in
|
|
|
com.google.gerrit.server.account.AccountException: Cannot assign external ID "username:dummyusername" to account 4711; external ID already in use.`
|
|
|
|
|
|
In order to fix this the external.id must be manually added:
|
|
|
In order to fix this the [external.id](https://gerrit-review.googlesource.com/Documentation/config-accounts.html#external-ids) must be manually added.
|
|
|
|
|
|
Log in to the gerrit host, execute (obviously replacing `dummyusername` by the real users username, `4711` by the users user id and `dummyusername@example.org` by the email address used by the user in LDAP):
|
|
|
```
|
|
|
git clone /opt/docker/review.typo3.org/volumes/git/All-Users.git
|
|
|
docker-compose exec gerrit bash
|
|
|
cd /var/gerrit
|
|
|
git clone /var/gerrit/git/All-Users.git
|
|
|
cd All-Users
|
|
|
git fetch origin refs/meta/external-ids:refs/remotes/origin/meta/external-ids
|
|
|
git checkout FETCH_HEAD
|
|
|
grep -Rl --exclude-dir=.git ':dummyusername"' .
|
|
|
echo -n 'gerrit:dummyusername' | sha1sum
|
|
|
# returns 8315839d4322aa724143b1380c2e77ffc5de4b67
|
|
|
|
|
|
grep -Rl --exclude-dir=.git ':stiffes"' .
|
|
|
grep -Rl --exclude-dir=.git ':grossberndts"' .
|
|
|
echo "[externalId "gerrit:dummyusername"]" > ./83/15839d4322aa724143b1380c2e77ffc5de4b67
|
|
|
echo -e '\taccountId = 4711' >> ./83/15839d4322aa724143b1380c2e77ffc5de4b67
|
|
|
echo -e '\temail = dummyusername@example.org' >> ./83/15839d4322aa724143b1380c2e77ffc5de4b67
|
|
|
|
|
|
echo -n 'gerrit:stiffes' | sha1sum
|
|
|
2063416e9c63983fd72e2c282feac3e5e1bde2a7
|
|
|
git add ./83/15839d4322aa724143b1380c2e77ffc5de4b67
|
|
|
|
|
|
nano ./20/63416e9c63983fd72e2c282feac3e5e1bde2a7
|
|
|
git commit -m 'Insert externalId for user dummyusername'
|
|
|
git push origin HEAD:refs/meta/external-ids
|
|
|
cd ..
|
|
|
rm -rf All-Users
|
|
|
exit
|
|
|
```
|
|
|
|
|
|
Content for ./20/63416e9c63983fd72e2c282feac3e5e1bde2a7
|
|
|
```
|
|
|
[externalId "gerrit:stiffes"]
|
|
|
accountId = 49788
|
|
|
email = johannes.schlier@b13.com
|
|
|
Now from a local shell
|
|
|
```
|
|
|
|
|
|
ssh -p 29418 review.typo3.org gerrit flush-caches --all
|
|
|
```
|
|
|
git add ./20/63416e9c63983fd72e2c282feac3e5e1bde2a7
|
|
|
|
|
|
git commit -m 'Insert externalId for user stiffes'
|
|
|
git push origin HEAD:refs/meta/external-ids
|
|
|
cd /opt/docker/review.typo3.org/volumes/git/All-Users.git
|
|
|
find . -not -user mstucki
|
|
|
chown -R mstucki: .
|
|
|
``` |
|
|
\ No newline at end of file |
|
|
Solution was derived from https://github.com/mildis/gerrit-update-username |
|
|
\ No newline at end of file |