Difference between revisions of "Service/git"

From Sugar Labs
Jump to navigation Jump to search
(add note on how to restart gitorious)
Line 57: Line 57:
 
  update users set email='OLDEMAIL' where login='USER';
 
  update users set email='OLDEMAIL' where login='USER';
  
=== WARNING ===
+
=== Zapping a user account
To zap a user account, make sure you also remove
+
 
its related records from all tables (committers,
+
WARNING: to zap a user account, make sure you also remove its related records
projects, repositories, events...)
+
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;
  
 
=== Restart gitorious after code/config changes ===
 
=== Restart gitorious after code/config changes ===
 
  touch tmp/restart.txt
 
  touch tmp/restart.txt

Revision as of 15:37, 6 August 2010

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 zap a user account, make sure you also remove its related 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;

Restart gitorious after code/config changes

touch tmp/restart.txt