Commit 8cdfa86b578a27feefe2c30f28eb3f46afbb8201

Authored by Dmitriy Zaporozhets
2 parents 7740005b 31b06ebd

Merge pull request #3993 from bke-drewb/3599

Issue 3599: Add snippets_enabled flag to projects for API
doc/api/projects.md
@@ -53,6 +53,7 @@ GET /projects @@ -53,6 +53,7 @@ GET /projects
53 "merge_requests_enabled": true, 53 "merge_requests_enabled": true,
54 "wall_enabled": true, 54 "wall_enabled": true,
55 "wiki_enabled": true, 55 "wiki_enabled": true,
  56 + "snippets_enabled": true,
56 "created_at": "2012-05-30T12:49:20Z", 57 "created_at": "2012-05-30T12:49:20Z",
57 "last_activity_at": "2012-05-23T08:05:02Z" 58 "last_activity_at": "2012-05-23T08:05:02Z"
58 } 59 }
@@ -95,6 +96,7 @@ Parameters: @@ -95,6 +96,7 @@ Parameters:
95 "merge_requests_enabled": true, 96 "merge_requests_enabled": true,
96 "wall_enabled": true, 97 "wall_enabled": true,
97 "wiki_enabled": true, 98 "wiki_enabled": true,
  99 + "snippets_enabled": true,
98 "created_at": "2012-05-30T12:49:20Z", 100 "created_at": "2012-05-30T12:49:20Z",
99 "last_activity_at": "2012-05-23T08:05:02Z" 101 "last_activity_at": "2012-05-23T08:05:02Z"
100 } 102 }
@@ -182,10 +184,11 @@ Parameters: @@ -182,10 +184,11 @@ Parameters:
182 + `name` (required) - new project name 184 + `name` (required) - new project name
183 + `description` (optional) - short project description 185 + `description` (optional) - short project description
184 + `default_branch` (optional) - 'master' by default 186 + `default_branch` (optional) - 'master' by default
185 -+ `issues_enabled` (optional) - enabled by default  
186 -+ `wall_enabled` (optional) - enabled by default  
187 -+ `merge_requests_enabled` (optional) - enabled by default  
188 -+ `wiki_enabled` (optional) - enabled by default 187 ++ `issues_enabled` (optional)
  188 ++ `wall_enabled` (optional)
  189 ++ `merge_requests_enabled` (optional)
  190 ++ `wiki_enabled` (optional)
  191 ++ `snippets_enabled` (optional)
189 192
190 **Project access levels** 193 **Project access levels**
191 194
@@ -213,10 +216,11 @@ Parameters: @@ -213,10 +216,11 @@ Parameters:
213 + `name` (required) - new project name 216 + `name` (required) - new project name
214 + `description` (optional) - short project description 217 + `description` (optional) - short project description
215 + `default_branch` (optional) - 'master' by default 218 + `default_branch` (optional) - 'master' by default
216 -+ `issues_enabled` (optional) - enabled by default  
217 -+ `wall_enabled` (optional) - enabled by default  
218 -+ `merge_requests_enabled` (optional) - enabled by default  
219 -+ `wiki_enabled` (optional) - enabled by default 219 ++ `issues_enabled` (optional)
  220 ++ `wall_enabled` (optional)
  221 ++ `merge_requests_enabled` (optional)
  222 ++ `wiki_enabled` (optional)
  223 ++ `snippets_enabled` (optional)
220 224
221 225
222 226
@@ -477,4 +481,4 @@ DELETE /projects/:id/fork @@ -477,4 +481,4 @@ DELETE /projects/:id/fork
477 481
478 Parameter: 482 Parameter:
479 483
480 -+ `id` (required) - The ID of the project  
481 \ No newline at end of file 484 \ No newline at end of file
  485 ++ `id` (required) - The ID of the project
lib/api/entities.rb
@@ -36,7 +36,7 @@ module API @@ -36,7 +36,7 @@ module API
36 expose :owner, using: Entities::UserBasic 36 expose :owner, using: Entities::UserBasic
37 expose :name, :name_with_namespace 37 expose :name, :name_with_namespace
38 expose :path, :path_with_namespace 38 expose :path, :path_with_namespace
39 - expose :issues_enabled, :merge_requests_enabled, :wall_enabled, :wiki_enabled, :created_at, :last_activity_at 39 + expose :issues_enabled, :merge_requests_enabled, :wall_enabled, :wiki_enabled, :snippets_enabled, :created_at, :last_activity_at
40 expose :namespace 40 expose :namespace
41 expose :forked_from_project, using: Entities::ForkedFromProject, :if => lambda{ | project, options | project.forked? } 41 expose :forked_from_project, using: Entities::ForkedFromProject, :if => lambda{ | project, options | project.forked? }
42 end 42 end
lib/api/projects.rb
@@ -61,10 +61,11 @@ module API @@ -61,10 +61,11 @@ module API
61 # name (required) - name for new project 61 # name (required) - name for new project
62 # description (optional) - short project description 62 # description (optional) - short project description
63 # default_branch (optional) - 'master' by default 63 # default_branch (optional) - 'master' by default
64 - # issues_enabled (optional) - enabled by default  
65 - # wall_enabled (optional) - enabled by default  
66 - # merge_requests_enabled (optional) - enabled by default  
67 - # wiki_enabled (optional) - enabled by default 64 + # issues_enabled (optional)
  65 + # wall_enabled (optional)
  66 + # merge_requests_enabled (optional)
  67 + # wiki_enabled (optional)
  68 + # snippets_enabled (optional)
68 # namespace_id (optional) - defaults to user namespace 69 # namespace_id (optional) - defaults to user namespace
69 # Example Request 70 # Example Request
70 # POST /projects 71 # POST /projects
@@ -77,6 +78,7 @@ module API @@ -77,6 +78,7 @@ module API
77 :wall_enabled, 78 :wall_enabled,
78 :merge_requests_enabled, 79 :merge_requests_enabled,
79 :wiki_enabled, 80 :wiki_enabled,
  81 + :snippets_enabled,
80 :namespace_id] 82 :namespace_id]
81 @project = ::Projects::CreateContext.new(current_user, attrs).execute 83 @project = ::Projects::CreateContext.new(current_user, attrs).execute
82 if @project.saved? 84 if @project.saved?
@@ -96,10 +98,11 @@ module API @@ -96,10 +98,11 @@ module API
96 # name (required) - name for new project 98 # name (required) - name for new project
97 # description (optional) - short project description 99 # description (optional) - short project description
98 # default_branch (optional) - 'master' by default 100 # default_branch (optional) - 'master' by default
99 - # issues_enabled (optional) - enabled by default  
100 - # wall_enabled (optional) - enabled by default  
101 - # merge_requests_enabled (optional) - enabled by default  
102 - # wiki_enabled (optional) - enabled by default 101 + # issues_enabled (optional)
  102 + # wall_enabled (optional)
  103 + # merge_requests_enabled (optional)
  104 + # wiki_enabled (optional)
  105 + # snippets_enabled (optional)
103 # Example Request 106 # Example Request
104 # POST /projects/user/:user_id 107 # POST /projects/user/:user_id
105 post "user/:user_id" do 108 post "user/:user_id" do
@@ -111,7 +114,8 @@ module API @@ -111,7 +114,8 @@ module API
111 :issues_enabled, 114 :issues_enabled,
112 :wall_enabled, 115 :wall_enabled,
113 :merge_requests_enabled, 116 :merge_requests_enabled,
114 - :wiki_enabled] 117 + :wiki_enabled,
  118 + :snippets_enabled]
115 @project = ::Projects::CreateContext.new(user, attrs).execute 119 @project = ::Projects::CreateContext.new(user, attrs).execute
116 if @project.saved? 120 if @project.saved?
117 present @project, with: Entities::Project 121 present @project, with: Entities::Project