git AT sugarlabs DOT org
For non-emergency calls, preferably send email to the administrative contact.
- Aleksey Lim
- puppet related stuff is still in progress of settling down
We do not have root on git.sugarlabs.org. Put the following aliases in your ~/.bashrc to quickly switch to the Gitorious production, test and development environments:
alias gitorious='sudo su - gitorious' alias gittest='sudo su - gittest' alias gitdev='sudo su - gitdev' alias db='mysql -h db1.osuosl.org -u sugarlabs_git -p sugarlabs_git_dev'
Get a MySQL prompt
type "db" at the prompt, then give the db password from ~gitorious/config/database.yml
Change project owner
UPDATE projects SET user_id=(SELECT id FROM users WHERE login='jasg') WHERE slug='labyrinth';
Change repo owner
UPDATE repositories SET user_id=(SELECT id FROM users WHERE login='jasg') WHERE name='mainline' AND project_id=(SELECT id FROM projects WHERE title='poll');
INSERT INTO committerships SET user_id=(select id from users where login='bernie'), repository_id=(SELECT id FROM repositories where project_id=(SELECT id FROM projects WHERE title='sugar') AND name='mainline'), kind=2, created_at=NOW(), updated_at=NOW();
Hijack account to reset password
update users set email='YOUREMAIL' where login='USER';
Then make Gitorious send you a password reset email.
update users set email='OLDEMAIL' where login='USER';
Zapping a user account
WARNING: to kill a user account, make sure you also remove *ALL* its associated records from all tables, or Gitorious will break in non-obvious ways.
SELECT id FROM users WHERE login='demian'; DELETE FROM committers WHERE user_id=666; DELETE FROM events WHERE user_id=666; DELETE FROM comments WHERE user_id=666; DELETE FROM merge_requests WHERE user_id=666; DELETE FROM repositories WHERE user_id=666; DELETE FROM projects WHERE user_id=666;
NOTE: tch pointed out that Rails applications often provide a higher-level method in class User which deletes the record and its associated entries. However, our deployed version of Gitorious does not seem to provide it.
Restart gitorious after code/config changes
Upgrade will be triggered on every puppet session, vcs repository will be rebased to the HEAD commit with all related changes like database migration.