Commit 63dac843fdad0697c147b3c994500c84bc66f100
Exists in
master
and in
4 other branches
Merge pull request #2149 from jojosch/help-rake-tasks
add help page for gitlab specific rake tasks
Showing
7 changed files
with
275 additions
and
0 deletions
Show diff stats
app/views/help/index.html.haml
@@ -0,0 +1,55 @@ | @@ -0,0 +1,55 @@ | ||
1 | +%h3.page_title GitLab Rake Tasks | ||
2 | +.back_link | ||
3 | + = link_to help_path do | ||
4 | + ← to index | ||
5 | +%hr | ||
6 | + | ||
7 | +%p.slead | ||
8 | + GitLab provides some specific rake tasks to enable special features or perform maintenance tasks. | ||
9 | + | ||
10 | +%ul.nav.nav-tabs.log-tabs | ||
11 | + %li.active | ||
12 | + = link_to "Features", "#features", 'data-toggle' => 'tab' | ||
13 | + %li | ||
14 | + = link_to "Maintenance", "#maintenance", 'data-toggle' => 'tab' | ||
15 | + %li | ||
16 | + = link_to "User Management", "#user_management", 'data-toggle' => 'tab' | ||
17 | + %li | ||
18 | + = link_to "Backup & Restore", "#backup_restore", 'data-toggle' => 'tab' | ||
19 | + | ||
20 | +.tab-content | ||
21 | + .tab-pane.active#features | ||
22 | + .file_holder | ||
23 | + .file_title | ||
24 | + %i.icon-file | ||
25 | + Features | ||
26 | + .file_content.wiki | ||
27 | + = preserve do | ||
28 | + = markdown File.read(Rails.root.join("doc", "raketasks", "features.md")) | ||
29 | + | ||
30 | + .tab-pane#maintenance | ||
31 | + .file_holder | ||
32 | + .file_title | ||
33 | + %i.icon-file | ||
34 | + Maintenance | ||
35 | + .file_content.wiki | ||
36 | + = preserve do | ||
37 | + = markdown File.read(Rails.root.join("doc", "raketasks", "maintenance.md")) | ||
38 | + | ||
39 | + .tab-pane#user_management | ||
40 | + .file_holder | ||
41 | + .file_title | ||
42 | + %i.icon-file | ||
43 | + User Management | ||
44 | + .file_content.wiki | ||
45 | + = preserve do | ||
46 | + = markdown File.read(Rails.root.join("doc", "raketasks", "user_management.md")) | ||
47 | + | ||
48 | + .tab-pane#backup_restore | ||
49 | + .file_holder | ||
50 | + .file_title | ||
51 | + %i.icon-file | ||
52 | + Backup & Restore | ||
53 | + .file_content.wiki | ||
54 | + = preserve do | ||
55 | + = markdown File.read(Rails.root.join("doc", "raketasks", "backup_restore.md")) |
config/routes.rb
@@ -31,6 +31,7 @@ Gitlab::Application.routes.draw do | @@ -31,6 +31,7 @@ Gitlab::Application.routes.draw do | ||
31 | get 'help/system_hooks' => 'help#system_hooks' | 31 | get 'help/system_hooks' => 'help#system_hooks' |
32 | get 'help/markdown' => 'help#markdown' | 32 | get 'help/markdown' => 'help#markdown' |
33 | get 'help/ssh' => 'help#ssh' | 33 | get 'help/ssh' => 'help#ssh' |
34 | + get 'help/raketasks' => 'help#raketasks' | ||
34 | 35 | ||
35 | # | 36 | # |
36 | # Admin Area | 37 | # Admin Area |
@@ -0,0 +1,82 @@ | @@ -0,0 +1,82 @@ | ||
1 | +### Create a backup of the GitLab system | ||
2 | + | ||
3 | +Creates a backup archive of the database and all repositories. This archive will be saved in backup_path (see `config/gitlab.yml`). | ||
4 | +The filename will be `[TIMESTAMP]_gitlab_backup.tar`. This timestamp can be used to restore an specific backup. | ||
5 | + | ||
6 | +``` | ||
7 | +bundle exec rake gitlab:app:backup_create | ||
8 | +``` | ||
9 | + | ||
10 | +Example output: | ||
11 | + | ||
12 | +``` | ||
13 | +Dumping database tables: | ||
14 | +- Dumping table events... [DONE] | ||
15 | +- Dumping table issues... [DONE] | ||
16 | +- Dumping table keys... [DONE] | ||
17 | +- Dumping table merge_requests... [DONE] | ||
18 | +- Dumping table milestones... [DONE] | ||
19 | +- Dumping table namespaces... [DONE] | ||
20 | +- Dumping table notes... [DONE] | ||
21 | +- Dumping table projects... [DONE] | ||
22 | +- Dumping table protected_branches... [DONE] | ||
23 | +- Dumping table schema_migrations... [DONE] | ||
24 | +- Dumping table services... [DONE] | ||
25 | +- Dumping table snippets... [DONE] | ||
26 | +- Dumping table taggings... [DONE] | ||
27 | +- Dumping table tags... [DONE] | ||
28 | +- Dumping table users... [DONE] | ||
29 | +- Dumping table users_projects... [DONE] | ||
30 | +- Dumping table web_hooks... [DONE] | ||
31 | +- Dumping table wikis... [DONE] | ||
32 | +Dumping repositories: | ||
33 | +- Dumping repository abcd... [DONE] | ||
34 | +- Dumping repository gitolite-admin.git... [DONE] | ||
35 | +Creating backup archive: $TIMESTAMP_gitlab_backup.tar [DONE] | ||
36 | +Deleting tmp directories...[DONE] | ||
37 | +Deleting old backups... [SKIPPING] | ||
38 | +``` | ||
39 | + | ||
40 | +### Restore a previously created backup | ||
41 | + | ||
42 | +``` | ||
43 | +bundle exec rake gitlab:app:backup_restore | ||
44 | +``` | ||
45 | + | ||
46 | +Options: | ||
47 | + | ||
48 | +``` | ||
49 | +BACKUP=timestamp_of_backup (required if more than one backup exists) | ||
50 | +``` | ||
51 | + | ||
52 | +Example output: | ||
53 | + | ||
54 | +``` | ||
55 | +Unpacking backup... [DONE] | ||
56 | +Restoring database tables: | ||
57 | +-- create_table("events", {:force=>true}) | ||
58 | + -> 0.2231s | ||
59 | +[...] | ||
60 | +- Loading fixture events...[DONE] | ||
61 | +- Loading fixture issues...[DONE] | ||
62 | +- Loading fixture keys...[SKIPPING] | ||
63 | +- Loading fixture merge_requests...[DONE] | ||
64 | +- Loading fixture milestones...[DONE] | ||
65 | +- Loading fixture namespaces...[DONE] | ||
66 | +- Loading fixture notes...[DONE] | ||
67 | +- Loading fixture projects...[DONE] | ||
68 | +- Loading fixture protected_branches...[SKIPPING] | ||
69 | +- Loading fixture schema_migrations...[DONE] | ||
70 | +- Loading fixture services...[SKIPPING] | ||
71 | +- Loading fixture snippets...[SKIPPING] | ||
72 | +- Loading fixture taggings...[SKIPPING] | ||
73 | +- Loading fixture tags...[SKIPPING] | ||
74 | +- Loading fixture users...[DONE] | ||
75 | +- Loading fixture users_projects...[DONE] | ||
76 | +- Loading fixture web_hooks...[SKIPPING] | ||
77 | +- Loading fixture wikis...[SKIPPING] | ||
78 | +Restoring repositories: | ||
79 | +- Restoring repository abcd... [DONE] | ||
80 | +- Restoring repository gitolite-admin.git... [DONE] | ||
81 | +Deleting tmp directories...[DONE] | ||
82 | +``` |
@@ -0,0 +1,36 @@ | @@ -0,0 +1,36 @@ | ||
1 | +### Enable usernames and namespaces for user projects | ||
2 | + | ||
3 | +This command will enable the namespace feature introduced in v4.0. It will move every project in its namespace folder. | ||
4 | + | ||
5 | +Note: | ||
6 | + | ||
7 | +* Because the **repository location will change**, you will need to **update all your git url's** to point to the new location. | ||
8 | +* Username can be changed at [Profile / Account](/profile/account) | ||
9 | + | ||
10 | +**Example:** | ||
11 | + | ||
12 | +Old path: `git@example.org:myrepo.git` | ||
13 | +New path: `git@example.org:username/myrepo.git` or `git@example.org:groupname/myrepo.git` | ||
14 | + | ||
15 | +``` | ||
16 | +bundle exec rake gitlab:activate_namespaces | ||
17 | +``` | ||
18 | + | ||
19 | + | ||
20 | +### Enable auto merge | ||
21 | + | ||
22 | +This command will enable the auto merge feature. After this you will be able to **merge a merge request** via GitLab and use the **online editor**. | ||
23 | + | ||
24 | +``` | ||
25 | +bundle exec rake gitlab:app:enable_automerge | ||
26 | +``` | ||
27 | + | ||
28 | +Example output: | ||
29 | + | ||
30 | +``` | ||
31 | +Creating satellite for abcd.git | ||
32 | +[git clone output] | ||
33 | +Creating satellite for abcd2.git | ||
34 | +[git clone output] | ||
35 | +done | ||
36 | +``` |
@@ -0,0 +1,82 @@ | @@ -0,0 +1,82 @@ | ||
1 | +### Setup production application | ||
2 | + | ||
3 | +Runs the following rake tasks: | ||
4 | + | ||
5 | +* db:setup (Create the database, load the schema, and initialize with the seed data) | ||
6 | +* db:seed_fu (Loads seed data for the current environment.) | ||
7 | +* gitlab:app:enable_automerge (see "Features") | ||
8 | + | ||
9 | +``` | ||
10 | +bundle exec rake gitlab:app:setup | ||
11 | +``` | ||
12 | + | ||
13 | + | ||
14 | +### Check GitLab installation status | ||
15 | + | ||
16 | +[Trouble-Shooting-Guide](https://github.com/gitlabhq/gitlab-public-wiki/wiki/Trouble-Shooting-Guide) | ||
17 | + | ||
18 | +``` | ||
19 | +bundle exec rake gitlab:app:status | ||
20 | +``` | ||
21 | + | ||
22 | +Example output: | ||
23 | + | ||
24 | +``` | ||
25 | +config/database.yml............exists | ||
26 | +config/gitlab.yml............exists | ||
27 | +/home/git/repositories/............exists | ||
28 | +/home/git/repositories/ is writable?............YES | ||
29 | +Can clone gitolite-admin?............YES | ||
30 | +Can git commit?............YES | ||
31 | +UMASK for .gitolite.rc is 0007? ............YES | ||
32 | +/home/git/.gitolite/hooks/common/post-receive exists? ............YES | ||
33 | + | ||
34 | +Validating projects repositories: | ||
35 | +* abcd.....post-receive file ok | ||
36 | +* abcdtest.....post-receive file missing | ||
37 | + | ||
38 | +Finished | ||
39 | + | ||
40 | +``` | ||
41 | + | ||
42 | + | ||
43 | +### Rebuild each key at gitolite config | ||
44 | + | ||
45 | +This will send all users ssh public keys to gitolite and grant them access (based on their permission) to their projects. | ||
46 | + | ||
47 | +``` | ||
48 | +bundle exec rake gitlab:gitolite:update_keys | ||
49 | +``` | ||
50 | + | ||
51 | + | ||
52 | +### Rebuild each project at gitolite config | ||
53 | + | ||
54 | +This makes sure that all projects are present in gitolite and can be accessed. | ||
55 | + | ||
56 | +``` | ||
57 | +bundle exec rake gitlab:gitolite:update_repos | ||
58 | +``` | ||
59 | + | ||
60 | +### Import bare repositories into GitLab project instance | ||
61 | + | ||
62 | +Notes: | ||
63 | + | ||
64 | +* project owner will be a first admin | ||
65 | +* existing projects will be skipped | ||
66 | + | ||
67 | +How to use: | ||
68 | + | ||
69 | +1. copy your bare repos under git base_path (see `config/gitlab.yml` git_host -> base_path) | ||
70 | +2. run the command below | ||
71 | + | ||
72 | +``` | ||
73 | +bundle exec rake gitlab:import:repos RAILS_ENV=production | ||
74 | +``` | ||
75 | + | ||
76 | +Example output: | ||
77 | + | ||
78 | +``` | ||
79 | +Processing abcd.git | ||
80 | + * Created abcd (abcd.git) | ||
81 | +[...] | ||
82 | +``` |
@@ -0,0 +1,16 @@ | @@ -0,0 +1,16 @@ | ||
1 | +### Add user to as a developer to all projects | ||
2 | + | ||
3 | +``` | ||
4 | +bundle exec rake add_user_to_project_teams[username@domain.tld] | ||
5 | +``` | ||
6 | + | ||
7 | + | ||
8 | +### Add all users to all projects | ||
9 | + | ||
10 | +Notes: | ||
11 | + | ||
12 | +* admin users are added as masters | ||
13 | + | ||
14 | +``` | ||
15 | +bundle exec rake add_users_to_project_teams | ||
16 | +``` |