Commit 1a6ba7e640577a98b6db480c8e7884882fb0fa03
Exists in
master
and in
4 other branches
Merge branch 'master' of dev.gitlab.org:gitlab/gitlabhq
Showing
19 changed files
with
314 additions
and
340 deletions
Show diff stats
README.md
@@ -127,14 +127,17 @@ or start each component separately | @@ -127,14 +127,17 @@ or start each component separately | ||
127 | 127 | ||
128 | ### GitLab interfaces | 128 | ### GitLab interfaces |
129 | 129 | ||
130 | -* [GitLab API](doc/api/README.md) | 130 | +* [GitLab API doc](doc/api/README.md) or see the [GitLab API website](http://api.gitlab.org/) |
131 | 131 | ||
132 | -* [Rake tasks](doc/raketasks) | 132 | +* [Rake tasks](doc/raketasks) including a [backup and restore procedure](doc/raketasks/backup_restore.md) |
133 | 133 | ||
134 | * [Directory structure](doc/install/structure.md) | 134 | * [Directory structure](doc/install/structure.md) |
135 | 135 | ||
136 | -* [Databases](doc/install/databases.md) | 136 | +* [Database installation](doc/install/databases.md) |
137 | 137 | ||
138 | +* [Markdown specification](doc/markdown/markdown.md) | ||
139 | + | ||
140 | +* [Security guide](doc/security/rack_attack.md) to throttle abusive requests | ||
138 | 141 | ||
139 | ### Getting help | 142 | ### Getting help |
140 | 143 | ||
@@ -157,10 +160,8 @@ or start each component separately | @@ -157,10 +160,8 @@ or start each component separately | ||
157 | 160 | ||
158 | ### Getting in touch | 161 | ### Getting in touch |
159 | 162 | ||
160 | -* [Core team](https://github.com/gitlabhq?tab=members) | ||
161 | - | ||
162 | -* [Contributors](https://github.com/gitlabhq/gitlabhq/graphs/contributors) | 163 | +* [Core team](http://gitlab.org/team/) |
163 | 164 | ||
164 | -* [Leader](https://github.com/randx) | 165 | +* [Contributors](http://contributors.gitlab.org/) |
165 | 166 | ||
166 | -* [Contact page](http://gitlab.org/contact/) | 167 | +* [Community](http://gitlab.org/community/) |
config/database.yml.mysql
@@ -7,7 +7,7 @@ production: | @@ -7,7 +7,7 @@ production: | ||
7 | reconnect: false | 7 | reconnect: false |
8 | database: gitlabhq_production | 8 | database: gitlabhq_production |
9 | pool: 10 | 9 | pool: 10 |
10 | - username: root | 10 | + username: gitlab |
11 | password: "secure password" | 11 | password: "secure password" |
12 | # host: localhost | 12 | # host: localhost |
13 | # socket: /tmp/mysql.sock | 13 | # socket: /tmp/mysql.sock |
config/database.yml.postgresql
@@ -6,8 +6,8 @@ production: | @@ -6,8 +6,8 @@ production: | ||
6 | encoding: unicode | 6 | encoding: unicode |
7 | database: gitlabhq_production | 7 | database: gitlabhq_production |
8 | pool: 10 | 8 | pool: 10 |
9 | - username: git | ||
10 | - password: | 9 | + # username: git |
10 | + # password: | ||
11 | # host: localhost | 11 | # host: localhost |
12 | # port: 5432 | 12 | # port: 5432 |
13 | # socket: /tmp/postgresql.sock | 13 | # socket: /tmp/postgresql.sock |
config/gitlab.yml.example
@@ -56,9 +56,10 @@ production: &base | @@ -56,9 +56,10 @@ production: &base | ||
56 | # signup_enabled: true | 56 | # signup_enabled: true |
57 | 57 | ||
58 | ## Automatic issue closing | 58 | ## Automatic issue closing |
59 | - # If a commit message matches this regular express, all issues referenced from the matched text will be closed | ||
60 | - # if it's pushed to a project's default branch. | ||
61 | - # issue_closing_pattern: ^([Cc]loses|[Ff]ixes) +#\d+ | 59 | + # If a commit message matches this regular expression, all issues referenced from the matched text will be closed. |
60 | + # This happends when the commit is pushed or merged into the default branch of a project. | ||
61 | + # When not specified the default issue_closing_pattern as specified below will be used. | ||
62 | + # issue_closing_pattern: ([Cc]loses|[Ff]ixes) +#\d+ | ||
62 | 63 | ||
63 | ## Default project features settings | 64 | ## Default project features settings |
64 | default_projects_features: | 65 | default_projects_features: |
config/initializers/1_settings.rb
@@ -69,7 +69,7 @@ rescue ArgumentError # no user configured | @@ -69,7 +69,7 @@ rescue ArgumentError # no user configured | ||
69 | end | 69 | end |
70 | Settings.gitlab['signup_enabled'] ||= false | 70 | Settings.gitlab['signup_enabled'] ||= false |
71 | Settings.gitlab['username_changing_enabled'] = true if Settings.gitlab['username_changing_enabled'].nil? | 71 | Settings.gitlab['username_changing_enabled'] = true if Settings.gitlab['username_changing_enabled'].nil? |
72 | -Settings.gitlab['issue_closing_pattern'] = '^([Cc]loses|[Ff]ixes) #(\d+)' if Settings.gitlab['issue_closing_pattern'].nil? | 72 | +Settings.gitlab['issue_closing_pattern'] = '([Cc]loses|[Ff]ixes) #(\d+)' if Settings.gitlab['issue_closing_pattern'].nil? |
73 | Settings.gitlab['default_projects_features'] ||= {} | 73 | Settings.gitlab['default_projects_features'] ||= {} |
74 | Settings.gitlab.default_projects_features['issues'] = true if Settings.gitlab.default_projects_features['issues'].nil? | 74 | Settings.gitlab.default_projects_features['issues'] = true if Settings.gitlab.default_projects_features['issues'].nil? |
75 | Settings.gitlab.default_projects_features['merge_requests'] = true if Settings.gitlab.default_projects_features['merge_requests'].nil? | 75 | Settings.gitlab.default_projects_features['merge_requests'] = true if Settings.gitlab.default_projects_features['merge_requests'].nil? |
doc/api/README.md
@@ -117,7 +117,7 @@ When listing resources you can pass the following parameters: | @@ -117,7 +117,7 @@ When listing resources you can pass the following parameters: | ||
117 | + [Deploy Keys](deploy_keys.md) | 117 | + [Deploy Keys](deploy_keys.md) |
118 | + [System Hooks](system_hooks.md) | 118 | + [System Hooks](system_hooks.md) |
119 | + [Groups](groups.md) | 119 | + [Groups](groups.md) |
120 | -+ [User Teams](user_teams.md) | 120 | + |
121 | 121 | ||
122 | ## Clients | 122 | ## Clients |
123 | 123 |
doc/api/deploy_keys.md
@@ -20,13 +20,15 @@ Parameters: | @@ -20,13 +20,15 @@ Parameters: | ||
20 | "key": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4 | 20 | "key": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4 |
21 | 596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4 | 21 | 596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4 |
22 | soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0=", | 22 | soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0=", |
23 | + "created_at":"2013-10-02T10:12:29Z" | ||
23 | }, | 24 | }, |
24 | { | 25 | { |
25 | "id": 3, | 26 | "id": 3, |
26 | "title" : "Another Public key", | 27 | "title" : "Another Public key", |
27 | "key": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4 | 28 | "key": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4 |
28 | 596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4 | 29 | 596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4 |
29 | - soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0=" | 30 | + soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0=", |
31 | + "created_at":"2013-10-02T11:12:29Z" | ||
30 | } | 32 | } |
31 | ] | 33 | ] |
32 | ``` | 34 | ``` |
@@ -51,7 +53,8 @@ Parameters: | @@ -51,7 +53,8 @@ Parameters: | ||
51 | "title" : "Public key", | 53 | "title" : "Public key", |
52 | "key": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4 | 54 | "key": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4 |
53 | 596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4 | 55 | 596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4 |
54 | - soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0=" | 56 | + soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0=", |
57 | + "created_at":"2013-10-02T10:12:29Z" | ||
55 | } | 58 | } |
56 | ``` | 59 | ``` |
57 | 60 |
doc/api/groups.md
@@ -8,12 +8,12 @@ GET /groups | @@ -8,12 +8,12 @@ GET /groups | ||
8 | 8 | ||
9 | ```json | 9 | ```json |
10 | [ | 10 | [ |
11 | - { | ||
12 | - "id": 1, | ||
13 | - "name": "Foobar Group", | ||
14 | - "path": "foo-bar", | ||
15 | - "owner_id": 18 | ||
16 | - } | 11 | + { |
12 | + "id": 1, | ||
13 | + "name": "Foobar Group", | ||
14 | + "path": "foo-bar", | ||
15 | + "owner_id": 18 | ||
16 | + } | ||
17 | ] | 17 | ] |
18 | ``` | 18 | ``` |
19 | 19 | ||
@@ -59,6 +59,19 @@ Parameters: | @@ -59,6 +59,19 @@ Parameters: | ||
59 | 59 | ||
60 | ## Group members | 60 | ## Group members |
61 | 61 | ||
62 | + | ||
63 | +**Group access levels** | ||
64 | + | ||
65 | +The group access levels are defined in the `Gitlab::Access` module. Currently, these levels are recognized: | ||
66 | + | ||
67 | +``` | ||
68 | + GUEST = 10 | ||
69 | + REPORTER = 20 | ||
70 | + DEVELOPER = 30 | ||
71 | + MASTER = 40 | ||
72 | + OWNER = 50 | ||
73 | +``` | ||
74 | + | ||
62 | ### List group members | 75 | ### List group members |
63 | 76 | ||
64 | Get a list of group members viewable by the authenticated user. | 77 | Get a list of group members viewable by the authenticated user. |
doc/api/issues.md
@@ -22,10 +22,10 @@ GET /issues | @@ -22,10 +22,10 @@ GET /issues | ||
22 | "username": "john_smith", | 22 | "username": "john_smith", |
23 | "email": "john@example.com", | 23 | "email": "john@example.com", |
24 | "name": "John Smith", | 24 | "name": "John Smith", |
25 | - "blocked": false, | 25 | + "state": "active", |
26 | "created_at": "2012-05-23T08:00:58Z" | 26 | "created_at": "2012-05-23T08:00:58Z" |
27 | }, | 27 | }, |
28 | - "state": 'closed', | 28 | + "state": "closed", |
29 | "updated_at": "2012-07-02T17:53:12Z", | 29 | "updated_at": "2012-07-02T17:53:12Z", |
30 | "created_at": "2012-07-02T17:53:12Z" | 30 | "created_at": "2012-07-02T17:53:12Z" |
31 | }, | 31 | }, |
@@ -42,7 +42,7 @@ GET /issues | @@ -42,7 +42,7 @@ GET /issues | ||
42 | "title": "v1.0", | 42 | "title": "v1.0", |
43 | "description": "", | 43 | "description": "", |
44 | "due_date": "2012-07-20", | 44 | "due_date": "2012-07-20", |
45 | - "state": 'reopenend', | 45 | + "state": "reopenend", |
46 | "updated_at": "2012-07-04T13:42:48Z", | 46 | "updated_at": "2012-07-04T13:42:48Z", |
47 | "created_at": "2012-07-04T13:42:48Z" | 47 | "created_at": "2012-07-04T13:42:48Z" |
48 | }, | 48 | }, |
@@ -51,7 +51,7 @@ GET /issues | @@ -51,7 +51,7 @@ GET /issues | ||
51 | "username": "jack_smith", | 51 | "username": "jack_smith", |
52 | "email": "jack@example.com", | 52 | "email": "jack@example.com", |
53 | "name": "Jack Smith", | 53 | "name": "Jack Smith", |
54 | - "blocked": false, | 54 | + "state": "active", |
55 | "created_at": "2012-05-23T08:01:01Z" | 55 | "created_at": "2012-05-23T08:01:01Z" |
56 | }, | 56 | }, |
57 | "author": { | 57 | "author": { |
@@ -59,10 +59,10 @@ GET /issues | @@ -59,10 +59,10 @@ GET /issues | ||
59 | "username": "john_smith", | 59 | "username": "john_smith", |
60 | "email": "john@example.com", | 60 | "email": "john@example.com", |
61 | "name": "John Smith", | 61 | "name": "John Smith", |
62 | - "blocked": false, | 62 | + "state": "active", |
63 | "created_at": "2012-05-23T08:00:58Z" | 63 | "created_at": "2012-05-23T08:00:58Z" |
64 | }, | 64 | }, |
65 | - "state": 'opened', | 65 | + "state": "opened", |
66 | "updated_at": "2012-07-12T13:43:19Z", | 66 | "updated_at": "2012-07-12T13:43:19Z", |
67 | "created_at": "2012-06-28T12:58:06Z" | 67 | "created_at": "2012-06-28T12:58:06Z" |
68 | } | 68 | } |
@@ -111,7 +111,7 @@ Parameters: | @@ -111,7 +111,7 @@ Parameters: | ||
111 | "title": "v1.0", | 111 | "title": "v1.0", |
112 | "description": "", | 112 | "description": "", |
113 | "due_date": "2012-07-20", | 113 | "due_date": "2012-07-20", |
114 | - "state": 'closed', | 114 | + "state": "closed", |
115 | "updated_at": "2012-07-04T13:42:48Z", | 115 | "updated_at": "2012-07-04T13:42:48Z", |
116 | "created_at": "2012-07-04T13:42:48Z" | 116 | "created_at": "2012-07-04T13:42:48Z" |
117 | }, | 117 | }, |
@@ -120,7 +120,7 @@ Parameters: | @@ -120,7 +120,7 @@ Parameters: | ||
120 | "username": "jack_smith", | 120 | "username": "jack_smith", |
121 | "email": "jack@example.com", | 121 | "email": "jack@example.com", |
122 | "name": "Jack Smith", | 122 | "name": "Jack Smith", |
123 | - "blocked": false, | 123 | + "state": "active", |
124 | "created_at": "2012-05-23T08:01:01Z" | 124 | "created_at": "2012-05-23T08:01:01Z" |
125 | }, | 125 | }, |
126 | "author": { | 126 | "author": { |
@@ -128,10 +128,10 @@ Parameters: | @@ -128,10 +128,10 @@ Parameters: | ||
128 | "username": "john_smith", | 128 | "username": "john_smith", |
129 | "email": "john@example.com", | 129 | "email": "john@example.com", |
130 | "name": "John Smith", | 130 | "name": "John Smith", |
131 | - "blocked": false, | 131 | + "state": "active", |
132 | "created_at": "2012-05-23T08:00:58Z" | 132 | "created_at": "2012-05-23T08:00:58Z" |
133 | }, | 133 | }, |
134 | - "state": 'opened', | 134 | + "state": "opened", |
135 | "updated_at": "2012-07-12T13:43:19Z", | 135 | "updated_at": "2012-07-12T13:43:19Z", |
136 | "created_at": "2012-06-28T12:58:06Z" | 136 | "created_at": "2012-06-28T12:58:06Z" |
137 | } | 137 | } |
doc/api/merge_requests.md
@@ -19,14 +19,13 @@ Parameters: | @@ -19,14 +19,13 @@ Parameters: | ||
19 | "source_branch":"test1", | 19 | "source_branch":"test1", |
20 | "project_id":3, | 20 | "project_id":3, |
21 | "title":"test1", | 21 | "title":"test1", |
22 | - "closed":true, | ||
23 | - "merged":false, | 22 | + "state":"opened", |
24 | "author":{ | 23 | "author":{ |
25 | "id":1, | 24 | "id":1, |
26 | "username": "admin", | 25 | "username": "admin", |
27 | "email":"admin@local.host", | 26 | "email":"admin@local.host", |
28 | "name":"Administrator", | 27 | "name":"Administrator", |
29 | - "blocked":false, | 28 | + "state":"active", |
30 | "created_at":"2012-04-29T08:46:00Z" | 29 | "created_at":"2012-04-29T08:46:00Z" |
31 | }, | 30 | }, |
32 | "assignee":{ | 31 | "assignee":{ |
@@ -34,7 +33,7 @@ Parameters: | @@ -34,7 +33,7 @@ Parameters: | ||
34 | "username": "admin", | 33 | "username": "admin", |
35 | "email":"admin@local.host", | 34 | "email":"admin@local.host", |
36 | "name":"Administrator", | 35 | "name":"Administrator", |
37 | - "blocked":false, | 36 | + "state":"active", |
38 | "created_at":"2012-04-29T08:46:00Z" | 37 | "created_at":"2012-04-29T08:46:00Z" |
39 | } | 38 | } |
40 | } | 39 | } |
@@ -62,14 +61,13 @@ Parameters: | @@ -62,14 +61,13 @@ Parameters: | ||
62 | "source_branch":"test1", | 61 | "source_branch":"test1", |
63 | "project_id":3, | 62 | "project_id":3, |
64 | "title":"test1", | 63 | "title":"test1", |
65 | - "closed":true, | ||
66 | - "merged":false, | 64 | + "state":"merged", |
67 | "author":{ | 65 | "author":{ |
68 | "id":1, | 66 | "id":1, |
69 | "username": "admin", | 67 | "username": "admin", |
70 | "email":"admin@local.host", | 68 | "email":"admin@local.host", |
71 | "name":"Administrator", | 69 | "name":"Administrator", |
72 | - "blocked":false, | 70 | + "state":"active", |
73 | "created_at":"2012-04-29T08:46:00Z" | 71 | "created_at":"2012-04-29T08:46:00Z" |
74 | }, | 72 | }, |
75 | "assignee":{ | 73 | "assignee":{ |
@@ -77,7 +75,7 @@ Parameters: | @@ -77,7 +75,7 @@ Parameters: | ||
77 | "username": "admin", | 75 | "username": "admin", |
78 | "email":"admin@local.host", | 76 | "email":"admin@local.host", |
79 | "name":"Administrator", | 77 | "name":"Administrator", |
80 | - "blocked":false, | 78 | + "state":"active", |
81 | "created_at":"2012-04-29T08:46:00Z" | 79 | "created_at":"2012-04-29T08:46:00Z" |
82 | } | 80 | } |
83 | } | 81 | } |
@@ -97,7 +95,7 @@ Parameters: | @@ -97,7 +95,7 @@ Parameters: | ||
97 | + `id` (required) - The ID of a project | 95 | + `id` (required) - The ID of a project |
98 | + `source_branch` (required) - The source branch | 96 | + `source_branch` (required) - The source branch |
99 | + `target_branch` (required) - The target branch | 97 | + `target_branch` (required) - The target branch |
100 | -+ `assignee_id` - Assignee user ID | 98 | ++ `assignee_id` (optional) - Assignee user ID |
101 | + `title` (required) - Title of MR | 99 | + `title` (required) - Title of MR |
102 | 100 | ||
103 | ```json | 101 | ```json |
@@ -107,14 +105,13 @@ Parameters: | @@ -107,14 +105,13 @@ Parameters: | ||
107 | "source_branch":"test1", | 105 | "source_branch":"test1", |
108 | "project_id":3, | 106 | "project_id":3, |
109 | "title":"test1", | 107 | "title":"test1", |
110 | - "closed":true, | ||
111 | - "merged":false, | 108 | + "state":"opened", |
112 | "author":{ | 109 | "author":{ |
113 | "id":1, | 110 | "id":1, |
114 | "username": "admin", | 111 | "username": "admin", |
115 | "email":"admin@local.host", | 112 | "email":"admin@local.host", |
116 | "name":"Administrator", | 113 | "name":"Administrator", |
117 | - "blocked":false, | 114 | + "state":"active", |
118 | "created_at":"2012-04-29T08:46:00Z" | 115 | "created_at":"2012-04-29T08:46:00Z" |
119 | }, | 116 | }, |
120 | "assignee":{ | 117 | "assignee":{ |
@@ -122,7 +119,7 @@ Parameters: | @@ -122,7 +119,7 @@ Parameters: | ||
122 | "username": "admin", | 119 | "username": "admin", |
123 | "email":"admin@local.host", | 120 | "email":"admin@local.host", |
124 | "name":"Administrator", | 121 | "name":"Administrator", |
125 | - "blocked":false, | 122 | + "state":"active", |
126 | "created_at":"2012-04-29T08:46:00Z" | 123 | "created_at":"2012-04-29T08:46:00Z" |
127 | } | 124 | } |
128 | } | 125 | } |
@@ -145,24 +142,22 @@ Parameters: | @@ -145,24 +142,22 @@ Parameters: | ||
145 | + `target_branch` - The target branch | 142 | + `target_branch` - The target branch |
146 | + `assignee_id` - Assignee user ID | 143 | + `assignee_id` - Assignee user ID |
147 | + `title` - Title of MR | 144 | + `title` - Title of MR |
148 | -+ `closed` - Status of MR. true - closed | ||
149 | - | ||
150 | 145 | ||
151 | ```json | 146 | ```json |
147 | + | ||
152 | { | 148 | { |
153 | "id":1, | 149 | "id":1, |
154 | "target_branch":"master", | 150 | "target_branch":"master", |
155 | "source_branch":"test1", | 151 | "source_branch":"test1", |
156 | "project_id":3, | 152 | "project_id":3, |
157 | "title":"test1", | 153 | "title":"test1", |
158 | - "closed":true, | ||
159 | - "merged":false, | 154 | + "state":"opened", |
160 | "author":{ | 155 | "author":{ |
161 | "id":1, | 156 | "id":1, |
162 | "username": "admin", | 157 | "username": "admin", |
163 | "email":"admin@local.host", | 158 | "email":"admin@local.host", |
164 | "name":"Administrator", | 159 | "name":"Administrator", |
165 | - "blocked":false, | 160 | + "state":"active", |
166 | "created_at":"2012-04-29T08:46:00Z" | 161 | "created_at":"2012-04-29T08:46:00Z" |
167 | }, | 162 | }, |
168 | "assignee":{ | 163 | "assignee":{ |
@@ -170,7 +165,7 @@ Parameters: | @@ -170,7 +165,7 @@ Parameters: | ||
170 | "username": "admin", | 165 | "username": "admin", |
171 | "email":"admin@local.host", | 166 | "email":"admin@local.host", |
172 | "name":"Administrator", | 167 | "name":"Administrator", |
173 | - "blocked":false, | 168 | + "state":"active", |
174 | "created_at":"2012-04-29T08:46:00Z" | 169 | "created_at":"2012-04-29T08:46:00Z" |
175 | } | 170 | } |
176 | } | 171 | } |
doc/api/milestones.md
@@ -6,6 +6,21 @@ Returns a list of project milestones. | @@ -6,6 +6,21 @@ Returns a list of project milestones. | ||
6 | GET /projects/:id/milestones | 6 | GET /projects/:id/milestones |
7 | ``` | 7 | ``` |
8 | 8 | ||
9 | +```json | ||
10 | +[ | ||
11 | + { | ||
12 | + "id":12, | ||
13 | + "project_id":16, | ||
14 | + "title":"10.0", | ||
15 | + "description":"Version", | ||
16 | + "due_date":"2013-11-29", | ||
17 | + "state":"active", | ||
18 | + "updated_at":"2013-10-02T09:24:18Z", | ||
19 | + "created_at":"2013-10-02T09:24:18Z" | ||
20 | + } | ||
21 | +] | ||
22 | +``` | ||
23 | + | ||
9 | Parameters: | 24 | Parameters: |
10 | 25 | ||
11 | + `id` (required) - The ID of a project | 26 | + `id` (required) - The ID of a project |
doc/api/notes.md
@@ -8,17 +8,22 @@ Get a list of project wall notes. | @@ -8,17 +8,22 @@ Get a list of project wall notes. | ||
8 | GET /projects/:id/notes | 8 | GET /projects/:id/notes |
9 | ``` | 9 | ``` |
10 | 10 | ||
11 | +Parameters: | ||
12 | + | ||
13 | ++ `id` (required) - The ID of a project | ||
14 | + | ||
11 | ```json | 15 | ```json |
12 | [ | 16 | [ |
13 | { | 17 | { |
14 | "id": 522, | 18 | "id": 522, |
15 | "body": "The solution is rather tricky", | 19 | "body": "The solution is rather tricky", |
20 | + "attachment":null, | ||
16 | "author": { | 21 | "author": { |
17 | "id": 1, | 22 | "id": 1, |
18 | "username": "john_smith", | 23 | "username": "john_smith", |
19 | "email": "john@example.com", | 24 | "email": "john@example.com", |
20 | "name": "John Smith", | 25 | "name": "John Smith", |
21 | - "blocked": false, | 26 | + "state": "active", |
22 | "created_at": "2012-05-23T08:00:58Z" | 27 | "created_at": "2012-05-23T08:00:58Z" |
23 | }, | 28 | }, |
24 | "created_at": "2012-11-27T19:16:44Z" | 29 | "created_at": "2012-11-27T19:16:44Z" |
@@ -26,11 +31,6 @@ GET /projects/:id/notes | @@ -26,11 +31,6 @@ GET /projects/:id/notes | ||
26 | ] | 31 | ] |
27 | ``` | 32 | ``` |
28 | 33 | ||
29 | -Parameters: | ||
30 | - | ||
31 | -+ `id` (required) - The ID of a project | ||
32 | - | ||
33 | - | ||
34 | ### Get single wall note | 34 | ### Get single wall note |
35 | 35 | ||
36 | Returns a single wall note. | 36 | Returns a single wall note. |
@@ -74,6 +74,38 @@ Parameters: | @@ -74,6 +74,38 @@ Parameters: | ||
74 | + `id` (required) - The ID of a project | 74 | + `id` (required) - The ID of a project |
75 | + `issue_id` (required) - The ID of an issue | 75 | + `issue_id` (required) - The ID of an issue |
76 | 76 | ||
77 | +```json | ||
78 | +[ | ||
79 | + { | ||
80 | + "id":302, | ||
81 | + "body":"_Status changed to closed_", | ||
82 | + "attachment":null, | ||
83 | + "author":{ | ||
84 | + "id":1, | ||
85 | + "username":"pipin", | ||
86 | + "email":"admin@example.com", | ||
87 | + "name":"Pip", | ||
88 | + "state":"active", | ||
89 | + "created_at":"2013-09-30T13:46:01Z" | ||
90 | + }, | ||
91 | + "created_at":"2013-10-02T09:22:45Z" | ||
92 | + }, | ||
93 | + { | ||
94 | + "id":305, | ||
95 | + "body":"Text of the comment\r\n", | ||
96 | + "attachment":null, | ||
97 | + "author":{ | ||
98 | + "id":1, | ||
99 | + "username":"pipin", | ||
100 | + "email":"admin@example.com", | ||
101 | + "name":"Pip", | ||
102 | + "state":"active", | ||
103 | + "created_at":"2013-09-30T13:46:01Z" | ||
104 | + }, | ||
105 | + "created_at":"2013-10-02T09:56:03Z" | ||
106 | + } | ||
107 | +] | ||
108 | +``` | ||
77 | 109 | ||
78 | ### Get single issue note | 110 | ### Get single issue note |
79 | 111 | ||
@@ -135,6 +167,24 @@ Parameters: | @@ -135,6 +167,24 @@ Parameters: | ||
135 | + `snippet_id` (required) - The ID of a project snippet | 167 | + `snippet_id` (required) - The ID of a project snippet |
136 | + `note_id` (required) - The ID of an snippet note | 168 | + `note_id` (required) - The ID of an snippet note |
137 | 169 | ||
170 | +```json | ||
171 | +{ | ||
172 | + "id":52, | ||
173 | + "title":"Snippet", | ||
174 | + "file_name":"snippet.rb", | ||
175 | + "author":{ | ||
176 | + "id":1, | ||
177 | + "username":"pipin", | ||
178 | + "email":"admin@example.com", | ||
179 | + "name":"Pip", | ||
180 | + "state":"active", | ||
181 | + "created_at":"2013-09-30T13:46:01Z" | ||
182 | + }, | ||
183 | + "expires_at":null, | ||
184 | + "updated_at":"2013-10-02T07:34:20Z", | ||
185 | + "created_at":"2013-10-02T07:34:20Z" | ||
186 | +} | ||
187 | +``` | ||
138 | 188 | ||
139 | ### Create new snippet note | 189 | ### Create new snippet note |
140 | 190 | ||
@@ -181,6 +231,22 @@ Parameters: | @@ -181,6 +231,22 @@ Parameters: | ||
181 | + `merge_request_id` (required) - The ID of a project merge request | 231 | + `merge_request_id` (required) - The ID of a project merge request |
182 | + `note_id` (required) - The ID of a merge request note | 232 | + `note_id` (required) - The ID of a merge request note |
183 | 233 | ||
234 | +```json | ||
235 | +{ | ||
236 | + "id":301, | ||
237 | + "body":"Comment for MR", | ||
238 | + "attachment":null, | ||
239 | + "author":{ | ||
240 | + "id":1, | ||
241 | + "username":"pipin", | ||
242 | + "email":"admin@example.com", | ||
243 | + "name":"Pip", | ||
244 | + "state":"active", | ||
245 | + "created_at":"2013-09-30T13:46:01Z" | ||
246 | + }, | ||
247 | + "created_at":"2013-10-02T08:57:14Z" | ||
248 | +} | ||
249 | +``` | ||
184 | 250 | ||
185 | ### Create new merge request note | 251 | ### Create new merge request note |
186 | 252 |
doc/api/project_snippets.md
@@ -34,7 +34,7 @@ Parameters: | @@ -34,7 +34,7 @@ Parameters: | ||
34 | "username": "john_smith", | 34 | "username": "john_smith", |
35 | "email": "john@example.com", | 35 | "email": "john@example.com", |
36 | "name": "John Smith", | 36 | "name": "John Smith", |
37 | - "blocked": false, | 37 | + "state": "active", |
38 | "created_at": "2012-05-23T08:00:58Z" | 38 | "created_at": "2012-05-23T08:00:58Z" |
39 | }, | 39 | }, |
40 | "expires_at": null, | 40 | "expires_at": null, |
doc/api/projects.md
@@ -11,51 +11,72 @@ GET /projects | @@ -11,51 +11,72 @@ GET /projects | ||
11 | ```json | 11 | ```json |
12 | [ | 12 | [ |
13 | { | 13 | { |
14 | - "id": 3, | ||
15 | - "name": "rails", | 14 | + "id": 4, |
16 | "description": null, | 15 | "description": null, |
17 | "default_branch": "master", | 16 | "default_branch": "master", |
17 | + "public": false, | ||
18 | + "ssh_url_to_repo": "git@example.com:diaspora/diaspora-client.git", | ||
19 | + "http_url_to_repo": "http://example.com/diaspora/diaspora-client.git", | ||
20 | + "web_url": "http://example.com/diaspora/diaspora-client", | ||
18 | "owner": { | 21 | "owner": { |
19 | - "id": 1, | ||
20 | - "username": "john_smith", | ||
21 | - "email": "john@example.com", | ||
22 | - "name": "John Smith", | ||
23 | - "blocked": false, | ||
24 | - "created_at": "2012-05-23T08:00:58Z" | 22 | + "id": 3, |
23 | + "name": "Diaspora", | ||
24 | + "created_at": "2013-09-30T13: 46: 02Z" | ||
25 | }, | 25 | }, |
26 | - "public": true, | ||
27 | - "path": "rails", | ||
28 | - "path_with_namespace": "rails/rails", | ||
29 | - "issues_enabled": false, | ||
30 | - "merge_requests_enabled": false, | ||
31 | - "wall_enabled": true, | 26 | + "name": "Diaspora Client", |
27 | + "name_with_namespace": "Diaspora / Diaspora Client", | ||
28 | + "path": "diaspora-client", | ||
29 | + "path_with_namespace": "diaspora/diaspora-client", | ||
30 | + "issues_enabled": true, | ||
31 | + "merge_requests_enabled": true, | ||
32 | + "wall_enabled": false, | ||
32 | "wiki_enabled": true, | 33 | "wiki_enabled": true, |
33 | - "created_at": "2012-05-23T08:05:02Z", | ||
34 | - "last_activity_at": "2012-05-23T08:05:02Z" | 34 | + "snippets_enabled": false, |
35 | + "created_at": "2013-09-30T13: 46: 02Z", | ||
36 | + "last_activity_at": "2013-09-30T13: 46: 02Z", | ||
37 | + "namespace": { | ||
38 | + "created_at": "2013-09-30T13: 46: 02Z", | ||
39 | + "description": "", | ||
40 | + "id": 3, | ||
41 | + "name": "Diaspora", | ||
42 | + "owner_id": 1, | ||
43 | + "path": "diaspora", | ||
44 | + "updated_at": "2013-09-30T13: 46: 02Z" | ||
45 | + } | ||
35 | }, | 46 | }, |
36 | { | 47 | { |
37 | - "id": 5, | ||
38 | - "name": "gitlab", | 48 | + "id": 6, |
39 | "description": null, | 49 | "description": null, |
40 | - "default_branch": "api", | ||
41 | - "owner": { | ||
42 | - "id": 1, | ||
43 | - "username": "john_smith", | ||
44 | - "email": "john@example.com", | ||
45 | - "name": "John Smith", | ||
46 | - "blocked": false, | ||
47 | - "created_at": "2012-05-23T08:00:58Z" | 50 | + "default_branch": "master", |
51 | + "public": false, | ||
52 | + "ssh_url_to_repo": "git@example.com:brightbox/puppet.git", | ||
53 | + "http_url_to_repo": "http://example.com/brightbox/puppet.git", | ||
54 | + "web_url": "http://example.com/brightbox/puppet", | ||
55 | + "owner": { | ||
56 | + "id": 4, | ||
57 | + "name": "Brightbox", | ||
58 | + "created_at": "2013-09-30T13:46:02Z" | ||
48 | }, | 59 | }, |
49 | - "public": true, | ||
50 | - "path": "gitlab", | ||
51 | - "path_with_namespace": "randx/gitlab", | 60 | + "name": "Puppet", |
61 | + "name_with_namespace": "Brightbox / Puppet", | ||
62 | + "path": "puppet", | ||
63 | + "path_with_namespace": "brightbox/puppet", | ||
52 | "issues_enabled": true, | 64 | "issues_enabled": true, |
53 | "merge_requests_enabled": true, | 65 | "merge_requests_enabled": true, |
54 | - "wall_enabled": true, | 66 | + "wall_enabled": false, |
55 | "wiki_enabled": true, | 67 | "wiki_enabled": true, |
56 | - "snippets_enabled": true, | ||
57 | - "created_at": "2012-05-30T12:49:20Z", | ||
58 | - "last_activity_at": "2012-05-23T08:05:02Z" | 68 | + "snippets_enabled": false, |
69 | + "created_at": "2013-09-30T13:46:02Z", | ||
70 | + "last_activity_at": "2013-09-30T13:46:02Z", | ||
71 | + "namespace": { | ||
72 | + "created_at": "2013-09-30T13:46:02Z", | ||
73 | + "description": "", | ||
74 | + "id": 4, | ||
75 | + "name": "Brightbox", | ||
76 | + "owner_id": 1, | ||
77 | + "path": "brightbox", | ||
78 | + "updated_at": "2013-09-30T13:46:02Z" | ||
79 | + } | ||
59 | } | 80 | } |
60 | ] | 81 | ] |
61 | ``` | 82 | ``` |
@@ -76,29 +97,38 @@ Parameters: | @@ -76,29 +97,38 @@ Parameters: | ||
76 | 97 | ||
77 | ```json | 98 | ```json |
78 | { | 99 | { |
79 | - "id": 5, | ||
80 | - "name": "gitlab", | ||
81 | - "name_with_namespace": "GitLab / gitlabhq", | 100 | + "id": 3, |
82 | "description": null, | 101 | "description": null, |
83 | - "default_branch": "api", | 102 | + "default_branch": "master", |
103 | + "public": false, | ||
104 | + "ssh_url_to_repo": "git@example.com:diaspora/diaspora-project-site.git", | ||
105 | + "http_url_to_repo": "http://example.com/diaspora/diaspora-project-site.git", | ||
106 | + "web_url": "http://example.com/diaspora/diaspora-project-site", | ||
84 | "owner": { | 107 | "owner": { |
85 | - "id": 1, | ||
86 | - "username": "john_smith", | ||
87 | - "email": "john@example.com", | ||
88 | - "name": "John Smith", | ||
89 | - "blocked": false, | ||
90 | - "created_at": "2012-05-23T08:00:58Z" | 108 | + "id": 3, |
109 | + "name": "Diaspora", | ||
110 | + "created_at": "2013-09-30T13: 46: 02Z" | ||
91 | }, | 111 | }, |
92 | - "public": true, | ||
93 | - "path": "gitlab", | ||
94 | - "path_with_namespace": "randx/gitlab", | 112 | + "name": "Diaspora Project Site", |
113 | + "name_with_namespace": "Diaspora / Diaspora Project Site", | ||
114 | + "path": "diaspora-project-site", | ||
115 | + "path_with_namespace": "diaspora/diaspora-project-site", | ||
95 | "issues_enabled": true, | 116 | "issues_enabled": true, |
96 | "merge_requests_enabled": true, | 117 | "merge_requests_enabled": true, |
97 | - "wall_enabled": true, | 118 | + "wall_enabled": false, |
98 | "wiki_enabled": true, | 119 | "wiki_enabled": true, |
99 | - "snippets_enabled": true, | ||
100 | - "created_at": "2012-05-30T12:49:20Z", | ||
101 | - "last_activity_at": "2012-05-23T08:05:02Z" | 120 | + "snippets_enabled": false, |
121 | + "created_at": "2013-09-30T13: 46: 02Z", | ||
122 | + "last_activity_at": "2013-09-30T13: 46: 02Z", | ||
123 | + "namespace": { | ||
124 | + "created_at": "2013-09-30T13: 46: 02Z", | ||
125 | + "description": "", | ||
126 | + "id": 3, | ||
127 | + "name": "Diaspora", | ||
128 | + "owner_id": 1, | ||
129 | + "path": "diaspora", | ||
130 | + "updated_at": "2013-09-30T13: 46: 02Z" | ||
131 | + } | ||
102 | } | 132 | } |
103 | ``` | 133 | ``` |
104 | 134 | ||
@@ -191,17 +221,6 @@ Parameters: | @@ -191,17 +221,6 @@ Parameters: | ||
191 | + `snippets_enabled` (optional) | 221 | + `snippets_enabled` (optional) |
192 | + `public` (optional) | 222 | + `public` (optional) |
193 | 223 | ||
194 | -**Project access levels** | ||
195 | - | ||
196 | -The project access levels are defined in the `user_project.rb` class. Currently, these levels are recognized: | ||
197 | - | ||
198 | -``` | ||
199 | - GUEST = 10 | ||
200 | - REPORTER = 20 | ||
201 | - DEVELOPER = 30 | ||
202 | - MASTER = 40 | ||
203 | -``` | ||
204 | - | ||
205 | 224 | ||
206 | ### Create project for user | 225 | ### Create project for user |
207 | 226 | ||
@@ -261,7 +280,7 @@ Parameters: | @@ -261,7 +280,7 @@ Parameters: | ||
261 | "username": "john_smith", | 280 | "username": "john_smith", |
262 | "email": "john@example.com", | 281 | "email": "john@example.com", |
263 | "name": "John Smith", | 282 | "name": "John Smith", |
264 | - "blocked": false, | 283 | + "state": "active", |
265 | "created_at": "2012-05-23T08:00:58Z", | 284 | "created_at": "2012-05-23T08:00:58Z", |
266 | "access_level": 40 | 285 | "access_level": 40 |
267 | } | 286 | } |
@@ -417,6 +436,55 @@ Parameters: | @@ -417,6 +436,55 @@ Parameters: | ||
417 | 436 | ||
418 | + `id` (required) - The ID of the project | 437 | + `id` (required) - The ID of the project |
419 | 438 | ||
439 | +```json | ||
440 | +[ | ||
441 | + { | ||
442 | + "name":"async", | ||
443 | + "commit": { | ||
444 | + "id":"a2b702edecdf41f07b42653eb1abe30ce98b9fca", | ||
445 | + "parents": [{ | ||
446 | + "id":"3f94fc7c85061973edc9906ae170cc269b07ca55" | ||
447 | + }], | ||
448 | + "tree": "c68537c6534a02cc2b176ca1549f4ffa190b58ee", | ||
449 | + "message":"give caolan his credit where it's due (up top)", | ||
450 | + "author": { | ||
451 | + "name":"Jeremy Ashkenas", | ||
452 | + "email":"jashkenas@example.com" | ||
453 | + }, | ||
454 | + "committer": { | ||
455 | + "name":"Jeremy Ashkenas", | ||
456 | + "email":"jashkenas@example.com" | ||
457 | + }, | ||
458 | + "authored_date":"2010-12-08T21:28:50+00:00", | ||
459 | + "committed_date":"2010-12-08T21:28:50+00:00" | ||
460 | + }, | ||
461 | + "protected":false | ||
462 | + }, | ||
463 | + { | ||
464 | + "name": "gh-pages", | ||
465 | + "commit": { | ||
466 | + "id": "101c10a60019fe870d21868835f65c25d64968fc", | ||
467 | + "parents": [{ | ||
468 | + "id": "9c15d2e26945a665131af5d7b6d30a06ba338aaa" | ||
469 | + }], | ||
470 | + "tree": "fb5cc9d45da3014b17a876ad539976a0fb9b352a", | ||
471 | + "message": "Underscore.js 1.5.2", | ||
472 | + "author": { | ||
473 | + "name": "Jeremy Ashkenas", | ||
474 | + "email": "jashkenas@example.com" | ||
475 | + }, | ||
476 | + "committer": { | ||
477 | + "name": "Jeremy Ashkenas", | ||
478 | + "email": "jashkenas@example.com" | ||
479 | + }, | ||
480 | + "authored_date": "2013-09-07T12: 58: 21+00: 00", | ||
481 | + "committed_date": "2013-09-07T12: 58: 21+00: 00" | ||
482 | + }, | ||
483 | + "protected": false | ||
484 | + } | ||
485 | +] | ||
486 | + | ||
487 | +``` | ||
420 | 488 | ||
421 | ### List single branch | 489 | ### List single branch |
422 | 490 |
doc/api/system_hooks.md
@@ -12,6 +12,15 @@ Parameters: | @@ -12,6 +12,15 @@ Parameters: | ||
12 | 12 | ||
13 | + **none** | 13 | + **none** |
14 | 14 | ||
15 | +```json | ||
16 | +[ | ||
17 | + { | ||
18 | + "id":3, | ||
19 | + "url":"http://example.com/hook", | ||
20 | + "created_at":"2013-10-02T10:15:31Z" | ||
21 | + } | ||
22 | +] | ||
23 | +``` | ||
15 | 24 | ||
16 | ## Add new system hook hook | 25 | ## Add new system hook hook |
17 | 26 | ||
@@ -34,6 +43,16 @@ Parameters: | @@ -34,6 +43,16 @@ Parameters: | ||
34 | 43 | ||
35 | + `id` (required) - The ID of hook | 44 | + `id` (required) - The ID of hook |
36 | 45 | ||
46 | +```json | ||
47 | +{ | ||
48 | + "event_name":"project_create", | ||
49 | + "name":"Ruby", | ||
50 | + "path":"ruby", | ||
51 | + "project_id":1, | ||
52 | + "owner_name":"Someone", | ||
53 | + "owner_email":"example@gitlabhq.com" | ||
54 | +} | ||
55 | +``` | ||
37 | 56 | ||
38 | ## Delete system hook | 57 | ## Delete system hook |
39 | 58 |
doc/api/user_teams.md
@@ -1,209 +0,0 @@ | @@ -1,209 +0,0 @@ | ||
1 | -## User teams | ||
2 | - | ||
3 | -### List user teams | ||
4 | - | ||
5 | -Get a list of user teams viewable by the authenticated user. | ||
6 | - | ||
7 | -``` | ||
8 | -GET /user_teams | ||
9 | -``` | ||
10 | - | ||
11 | -```json | ||
12 | -[ | ||
13 | - { | ||
14 | - id: 1, | ||
15 | - name: "User team 1", | ||
16 | - path: "user_team1", | ||
17 | - owner_id: 1 | ||
18 | - }, | ||
19 | - { | ||
20 | - id: 2, | ||
21 | - name: "User team 2", | ||
22 | - path: "user_team2", | ||
23 | - owner_id: 1 | ||
24 | - } | ||
25 | -] | ||
26 | -``` | ||
27 | - | ||
28 | - | ||
29 | -### Get single user team | ||
30 | - | ||
31 | -Get a specific user team, identified by user team ID, which is viewable by the authenticated user. | ||
32 | - | ||
33 | -``` | ||
34 | -GET /user_teams/:id | ||
35 | -``` | ||
36 | - | ||
37 | -Parameters: | ||
38 | - | ||
39 | -+ `id` (required) - The ID of a user_team | ||
40 | - | ||
41 | -```json | ||
42 | -{ | ||
43 | - id: 1, | ||
44 | - name: "User team 1", | ||
45 | - path: "user_team1", | ||
46 | - owner_id: 1 | ||
47 | -} | ||
48 | -``` | ||
49 | - | ||
50 | - | ||
51 | -### Create user team | ||
52 | - | ||
53 | -Creates new user team owned by user. Available only for admins. | ||
54 | - | ||
55 | -``` | ||
56 | -POST /user_teams | ||
57 | -``` | ||
58 | - | ||
59 | -Parameters: | ||
60 | - | ||
61 | -+ `name` (required) - new user team name | ||
62 | -+ `path` (required) - new user team internal name | ||
63 | - | ||
64 | - | ||
65 | - | ||
66 | -## User team members | ||
67 | - | ||
68 | -### List user team members | ||
69 | - | ||
70 | -Get a list of project team members. | ||
71 | - | ||
72 | -``` | ||
73 | -GET /user_teams/:id/members | ||
74 | -``` | ||
75 | - | ||
76 | -Parameters: | ||
77 | - | ||
78 | -+ `id` (required) - The ID of a user_team | ||
79 | - | ||
80 | - | ||
81 | -### Get user team member | ||
82 | - | ||
83 | -Gets a user team member. | ||
84 | - | ||
85 | -``` | ||
86 | -GET /user_teams/:id/members/:user_id | ||
87 | -``` | ||
88 | - | ||
89 | -Parameters: | ||
90 | - | ||
91 | -+ `id` (required) - The ID of a user_team | ||
92 | -+ `user_id` (required) - The ID of a user | ||
93 | - | ||
94 | -```json | ||
95 | -{ | ||
96 | - id: 2, | ||
97 | - username: "john_doe", | ||
98 | - email: "joh@doe.org", | ||
99 | - name: "John Doe", | ||
100 | - state: "active", | ||
101 | - created_at: "2012-10-22T14:13:35Z", | ||
102 | - access_level: 30 | ||
103 | -} | ||
104 | -``` | ||
105 | - | ||
106 | - | ||
107 | -### Add user team member | ||
108 | - | ||
109 | -Adds a user to a user team. | ||
110 | - | ||
111 | -``` | ||
112 | -POST /user_teams/:id/members | ||
113 | -``` | ||
114 | - | ||
115 | -Parameters: | ||
116 | - | ||
117 | -+ `id` (required) - The ID of a user team | ||
118 | -+ `user_id` (required) - The ID of a user to add | ||
119 | -+ `access_level` (required) - Project access level | ||
120 | - | ||
121 | - | ||
122 | -### Remove user team member | ||
123 | - | ||
124 | -Removes user from user team. | ||
125 | - | ||
126 | -``` | ||
127 | -DELETE /user_teams/:id/members/:user_id | ||
128 | -``` | ||
129 | - | ||
130 | -Parameters: | ||
131 | - | ||
132 | -+ `id` (required) - The ID of a user team | ||
133 | -+ `user_id` (required) - The ID of a team member | ||
134 | - | ||
135 | -## User team projects | ||
136 | - | ||
137 | -### List user team projects | ||
138 | - | ||
139 | -Get a list of project team projects. | ||
140 | - | ||
141 | -``` | ||
142 | -GET /user_teams/:id/projects | ||
143 | -``` | ||
144 | - | ||
145 | -Parameters: | ||
146 | - | ||
147 | -+ `id` (required) - The ID of a user_team | ||
148 | - | ||
149 | - | ||
150 | -### Get user team project | ||
151 | - | ||
152 | -Gets a user team project. | ||
153 | - | ||
154 | -``` | ||
155 | -GET /user_teams/:id/projects/:project_id | ||
156 | -``` | ||
157 | - | ||
158 | -Parameters: | ||
159 | - | ||
160 | -+ `id` (required) - The ID of a user_team | ||
161 | -+ `project_id` (required) - The ID of a user | ||
162 | - | ||
163 | -```json | ||
164 | -{ | ||
165 | - id: 12, | ||
166 | - name: "project1", | ||
167 | - description: null, | ||
168 | - default_branch: "develop", | ||
169 | - public: false, | ||
170 | - path: "project1", | ||
171 | - path_with_namespace: "group1/project1", | ||
172 | - issues_enabled: false, | ||
173 | - merge_requests_enabled: true, | ||
174 | - wall_enabled: true, | ||
175 | - wiki_enabled: false, | ||
176 | - created_at: "2013-03-11T12:59:08Z", | ||
177 | - greatest_access_level: 30 | ||
178 | -} | ||
179 | -``` | ||
180 | - | ||
181 | - | ||
182 | -### Add user team project | ||
183 | - | ||
184 | -Adds a project to a user team. | ||
185 | - | ||
186 | -``` | ||
187 | -POST /user_teams/:id/projects | ||
188 | -``` | ||
189 | - | ||
190 | -Parameters: | ||
191 | - | ||
192 | -+ `id` (required) - The ID of a user team | ||
193 | -+ `project_id` (required) - The ID of a project to add | ||
194 | -+ `greatest_access_level` (required) - Maximum project access level | ||
195 | - | ||
196 | - | ||
197 | -### Remove user team project | ||
198 | - | ||
199 | -Removes project from user team. | ||
200 | - | ||
201 | -``` | ||
202 | -DELETE /user_teams/:id/projects/:project_id | ||
203 | -``` | ||
204 | - | ||
205 | -Parameters: | ||
206 | - | ||
207 | -+ `id` (required) - The ID of a user team | ||
208 | -+ `project_id` (required) - The ID of a team project | ||
209 | - |
doc/api/users.md
@@ -43,7 +43,8 @@ GET /users | @@ -43,7 +43,8 @@ GET /users | ||
43 | "theme_id": 1, | 43 | "theme_id": 1, |
44 | "color_scheme_id": 3, | 44 | "color_scheme_id": 3, |
45 | "is_admin": false, | 45 | "is_admin": false, |
46 | - "can_create_group": true | 46 | + "can_create_group": true, |
47 | + "can_create_project": true | ||
47 | } | 48 | } |
48 | ] | 49 | ] |
49 | ``` | 50 | ``` |
@@ -78,7 +79,8 @@ Parameters: | @@ -78,7 +79,8 @@ Parameters: | ||
78 | "theme_id": 1, | 79 | "theme_id": 1, |
79 | "color_scheme_id": 2, | 80 | "color_scheme_id": 2, |
80 | "is_admin": false, | 81 | "is_admin": false, |
81 | - "can_create_group": true | 82 | + "can_create_group": true, |
83 | + "can_create_project": true | ||
82 | } | 84 | } |
83 | ``` | 85 | ``` |
84 | 86 |
doc/install/databases.md
@@ -58,7 +58,7 @@ GitLab supports the following databases: | @@ -58,7 +58,7 @@ GitLab supports the following databases: | ||
58 | sudo -u postgres psql -d template1 | 58 | sudo -u postgres psql -d template1 |
59 | 59 | ||
60 | # Create a user for GitLab. (change $password to a real password) | 60 | # Create a user for GitLab. (change $password to a real password) |
61 | - template1=# CREATE USER git WITH PASSWORD '$password'; | 61 | + template1=# CREATE USER git; |
62 | 62 | ||
63 | # Create the GitLab production database & grant all privileges on database | 63 | # Create the GitLab production database & grant all privileges on database |
64 | template1=# CREATE DATABASE gitlabhq_production OWNER git; | 64 | template1=# CREATE DATABASE gitlabhq_production OWNER git; |
doc/install/installation.md
@@ -216,18 +216,18 @@ Make sure to edit both `gitlab.yml` and `unicorn.rb` to match your setup. | @@ -216,18 +216,18 @@ Make sure to edit both `gitlab.yml` and `unicorn.rb` to match your setup. | ||
216 | # Mysql | 216 | # Mysql |
217 | sudo -u git cp config/database.yml.mysql config/database.yml | 217 | sudo -u git cp config/database.yml.mysql config/database.yml |
218 | 218 | ||
219 | - or | ||
220 | - | ||
221 | - # PostgreSQL | ||
222 | - sudo -u git cp config/database.yml.postgresql config/database.yml | ||
223 | - | ||
224 | # Make sure to update username/password in config/database.yml. | 219 | # Make sure to update username/password in config/database.yml. |
225 | # You only need to adapt the production settings (first part). | 220 | # You only need to adapt the production settings (first part). |
226 | # If you followed the database guide then please do as follows: | 221 | # If you followed the database guide then please do as follows: |
227 | - # Change 'root' to 'gitlab' | ||
228 | # Change 'secure password' with the value you have given to $password | 222 | # Change 'secure password' with the value you have given to $password |
229 | # You can keep the double quotes around the password | 223 | # You can keep the double quotes around the password |
230 | sudo -u git -H editor config/database.yml | 224 | sudo -u git -H editor config/database.yml |
225 | + | ||
226 | + or | ||
227 | + | ||
228 | + # PostgreSQL | ||
229 | + sudo -u git cp config/database.yml.postgresql config/database.yml | ||
230 | + | ||
231 | 231 | ||
232 | # Make config/database.yml readable to git only | 232 | # Make config/database.yml readable to git only |
233 | sudo -u git -H chmod o-rwx config/database.yml | 233 | sudo -u git -H chmod o-rwx config/database.yml |