Service/git

From Sugar Labs
< Service
Revision as of 13:33, 18 August 2010 by Bernie (talk | contribs)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Hostnames

Hardware

  • XEN VM

Location

Hosted by the Open Source Lab

Admins

  • OSL Support <support AT osuosl.org> (ask here for anything that requires root access)
  • Lance Albertson <lance AT osuosl.org>, Ramereth on #osuosl Freenode
  • Bernie Innocenti, bernie on #sugar Freenode
  • Luke Faraone, lfaraone on #sugar Freenode
  • Sascha Silbe, silbe on #sugar Freenode

Notes

Web interface

http://admin.osuosl.org/phpmyadmin

Gitorious environments

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');

Add committer

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

touch tmp/restart.txt