Commit Graph

220 Commits

Author SHA1 Message Date
tiagonbotelho 2179c4052e adds basic functionality to the new endpoint of the api 2016-07-12 16:39:25 +01:00
tiagonbotelho be3409ab7a changes string to symbol in param 2016-07-12 16:36:42 +01:00
tiagonbotelho c4dc0f52c3 adds test to check json fields on simple request and changes the url request format 2016-07-12 16:36:42 +01:00
tiagonbotelho f5d92d120e changes the usage of simpleprojectdetails to already implemented basicprojectsdetails and changes the url to a more reader friendly format 2016-07-12 16:36:42 +01:00
tiagonbotelho a8cf4e13b3 adds basic functionality to the new endpoint of the api 2016-07-12 16:36:42 +01:00
tiagonbotelho e1c5eb480e implements filter_params 2016-07-12 16:36:42 +01:00
Grzegorz Bizon 9e211091a8 Enable Style/EmptyLines cop, remove redundant ones 2016-07-01 21:56:17 +02:00
Kamil Trzcinski 0958f331d1 Merge remote-tracking branch 'origin/master' into docker-registry
# Conflicts:
#	config/initializers/1_settings.rb
2016-05-13 17:14:46 -05:00
Sean McGivern 97424ea544 Restrict starred projects to viewable ones
`User#starred_projects` doesn't perform any visibility checks. This has
a couple of problems:

1. It assumes a user can always view all of their starred projects in
   perpetuity (project not changed to private, access revoked, etc.).
2. It assumes that we'll only ever allow a user to star a project they
   can view. This is currently the case, but bugs happen.

Add `User#viewable_starred_projects` to filter the starred projects by
those the user either has explicit access to, or are public or
internal. Then use that in all places where we list the user's starred
projects.
2016-05-10 18:13:52 +01:00
Kamil Trzcinski 0094d8f196 Rename `images` to `container_registry` 2016-05-09 20:29:57 +03:00
Kamil Trzcinski 03b3fe13f6 Make images_enabled configurable 2016-04-29 16:45:00 +02:00
Robert Schilling 54231aa4e0 Styling changes to code and docs 2016-04-13 16:25:24 +02:00
Robert Schilling 3ab9ea8dae Make staring API more restful 2016-04-13 14:26:41 +02:00
Robert Schilling ea2193aaeb API: Star and unstar a project 2016-04-13 14:26:40 +02:00
Zeger-Jan van de Weg 3549d7c1d4 PUT becomes POST on archiving endpoints
Also the specs have a minor improvement. Mainly the access right spec.
Changes are reflected in the docs
2016-03-24 18:58:42 +01:00
Zeger-Jan van de Weg 2c5bcf2e1b Add endpoints for archiving and unarchiving 2016-03-23 22:36:35 +01:00
Dmitriy Zaporozhets e8b3b92dde
Bring share project with group API from EE
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-03-13 11:52:43 +01:00
Kamil Trzcinski b4c36130cc Rename allow_guest_to_access_builds to public_builds 2016-02-04 12:57:46 +01:00
Kamil Trzcinski 6a5a175d9f Expose allow_guest_to_access_builds in GitLab API 2016-02-04 11:14:12 +01:00
Josh Frye 91b9cbff8d First pass at deleting projects in the background. 2016-01-29 09:14:16 -05:00
Douwe Maan 9664424cab Merge branch 'ci/api-projects' into 'master'
Extend projects API with CI data

Reference #4264 

See merge request !2303
2016-01-13 13:32:35 +00:00
Tomasz Maczukin fc4108b38b Modify CI features in projects API 2016-01-11 15:27:20 +01:00
Douwe Maan 1886d727f7 Add API project upload endpoint 2016-01-07 13:37:14 +01:00
Tomasz Maczukin ba9799b42f Update ./doc/api 2016-01-07 10:39:02 +01:00
Tomasz Maczukin 0a21731e3b Add ci fields in project create/update feature API 2016-01-05 15:00:25 +01:00
Stan Hu 086cfc8685 Fix API project lookups when querying with a namespace with dots
Attempting to use the /projects/:id API by specifying :id in
"namespace/project" format would always result in a 404 if the namespace
contained a dot.

The reason? From http://guides.rubyonrails.org/routing.html#specifying-constraints:

"By default the :id parameter doesn't accept dots - this is because the dot is
used as a separator for formatted routes. If you need to use a dot within an
:id add a constraint which overrides this - for example id: /[^\/]+/ allows
anything except a slash."

Closes https://github.com/gitlabhq/gitlabhq/issues/9573
2016-01-03 15:08:44 -08:00
Stan Hu 301a30e0ea Add project permissions to all project API endpoints
This standardizes all the project API formats. Also needed to support Huboard.
2015-12-22 10:58:23 -08:00
Zeger-Jan van de Weg c36821df9f Api support for requesting starred projects for user
Fixes #4112
2015-12-16 21:46:00 +01:00
Kamil Trzcinski e80e3f5372 Migrate CI::Project to Project 2015-12-11 18:02:09 +01:00
Stan Hu 631a30276e Fix API setting of 'public' attribute to false will make a project private
Closes #3864
2015-12-05 17:39:36 -08:00
Kamil Trzcinski 6384c757b7 Expose CI enable option in project features
- Enable CI by default for all new projects
2015-11-13 10:52:50 +01:00
Han Loong Liauw 0bea5ced8b Made suggested content changes based on MR Review
Changed the authentication method for removing fork through API
Reflected changes to new auth method in API specs
2015-10-14 20:19:41 +11:00
Han Loong Liauw df99ddbba1 Adds ability to remove the forked relationship
This was previously possible through the API but can now be done
through the project#edit settings screen if the current user is
the owner of the project.
Update changelog
2015-10-13 21:42:17 +11:00
Valery Sizov 22bf844869 fix specs. Stage 3 2015-09-15 13:50:24 +03:00
Valery Sizov 7c3ca86370 Add order option for projects API 2015-05-14 15:49:09 +03:00
Stephan van Leeuwen 3b3662da0a Updated api method GET /projects/:id/events to use paginate instead of a self-implementation
Also updated example request url

Added changelog item
2015-03-24 19:11:48 +01:00
Vinnie Okada 285c534185 Allow admins to override restricted visibility
Allow admins to use restricted visibility levels when creating or
updating projects.
2015-03-08 16:10:05 -06:00
Dmitriy Zaporozhets bdfb349ff7 Refactor and improve sorting objects in API for projects, issues and merge requests 2015-02-05 22:00:54 -08:00
Mika Mäenpää 7dd5656a5b Implement edit via API for projects 2015-01-22 16:58:01 +01:00
Jeroen van Baarsen ec29ce4b02 Merge pull request #8307 from cirosantilli/project-api-comment-typo
Typo in project API events comment
2015-01-18 19:05:02 +01:00
Marin Jankovski 8689ce1efe Add search filter option on project api for authorized projects. 2015-01-12 11:08:53 +01:00
Marin Jankovski 7240150c89 Forward the messages in api response. 2014-12-30 15:17:46 +01:00
Stephan van Leeuwen 180fda3d0a Updated indentation on case when statements. 2014-12-29 16:36:56 +01:00
Stephan van Leeuwen 6af34b0f71 Changed setting the sort variable
Changed from using cases to set the sort variable, to use a one line if/else statement
2014-12-29 16:36:56 +01:00
Stephan van Leeuwen 6b50721946 Updated projects api to allow ordering
Added support for order_by and sort parameters, to sort the projects by the specified values.
Updated projects api documentation including the order_by and sort parameters
2014-12-29 16:36:56 +01:00
Ciro Santilli e375d0de65 Typo in project API events comment 2014-11-14 09:33:33 +01:00
Vinnie Okada 41518a467d Remove :keep_repo option
Always delete repositories from the filesystem when deleting a project.
2014-10-22 21:08:19 -05:00
Vinnie Okada 68b5ac7f18 Add option to keep repo on project delete
Update the project API controller to use `Projects::DestroyService`
instead of calling `Project#destroy` directly.

Also add an optional parameter, `:keep_repo`, that allows a project to
be deleted without deleting the repository, wiki, and satellite from
disk.
2014-10-07 15:21:00 -05:00
Bernhard Kaindl f030ee846e API: Initial support for forking a project via the API
This change adds POST /projects/fork/:id to the API for forking
a project into the namespace of the authenticated user, like the
"create fork" link in the GUI does. It also calls the same code.

Failure and permission checks (except for conflict) are already
implemented and handled in ForkService and the API, so the added
code is simple and does not alter anything.
2014-10-01 10:27:48 +02:00
jubianchi 998cd3cb63 Improve error reporting on users API
* users (#6878, #3526, #4209): Validation error messages are now exposed through 400 responses, 409 response are sent in case of duplicate email or username
* MRs (#5335): 409 responses are sent in case of duplicate merge request (source/target branches), 422 responses are sent when submiting MR fo/from unrelated forks
* issues
* labels
* projects
2014-09-16 01:25:24 +02:00
Robert Schilling 9284038dbe Add, delete labels via API 2014-08-13 12:28:19 +02:00
Dmitriy Zaporozhets f8eedb4cda
Cleaner variable name
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-08-11 15:25:25 +03:00
Dmitriy Zaporozhets d10ecacc47 Merge branch 'master' into 'master'
Let users limit by archived/not archived projects in GitLab API GET /projects

Adds a boolean parameter, archived, to the /projects endpoint.

See merge request !158
2014-08-11 09:27:24 +00:00
Dmitriy Zaporozhets 70f868b737
Fix tests
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-07-30 16:05:43 +03:00
Sasha Joseph 37c4ba6f8d Add an option to GET /projects in the GitLab API to exclude archived projects 2014-07-28 12:48:13 -04:00
Dmitriy Zaporozhets 66098dbb59 Merge pull request #7089 from NARKOZ/api-patch
API patch
2014-07-23 20:26:36 +03:00
Dmitriy Zaporozhets ae564c97d4
Dont expose user email via API
To prevent leaking of users info we reduce amount of user information
retrieved via API for normal users.

What user can get via API:

* if not admin: only id, state, name, username and avatar_url
* if admin: all user information
* about himself: all informaion

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-06-13 17:46:48 +03:00
Dmitriy Zaporozhets 1355ede49d
Wipe wall notes feature
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-06-13 14:24:54 +03:00
Nihad Abbasov 7040a42cfc API: ability to set an import url when creating project for a specified user 2014-06-06 06:31:55 +05:00
Ábner Silva de Oliveira e153469f31 changed doc comment for get labels of a project 2014-03-23 19:07:18 -03:00
Ábner Silva de Oliveira 44aa6b90dd added api method to return labels of a given project 2014-03-21 06:25:25 -03:00
Dmitriy Zaporozhets eea317795e
Add current user permissions info to /api/projects/:id.json
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-03-17 14:33:41 +02:00
Dmitriy Zaporozhets 7c60713e82
Move project members api to separate file
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-03-17 13:44:54 +02:00
Dmitriy Zaporozhets f0f88390c1
project_user selectbox with ajax autocomplete
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-02-13 16:08:26 +02:00
skv a3f645ef51 Remove deprecated finders 2014-01-19 23:39:56 +04:00
Dmitriy Zaporozhets efa10c819d
Replace context with service in lib
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-01-16 20:35:21 +02:00
Maxime Brugidou 56d4788264 Add import_url param in API projects create 2013-12-09 11:07:32 +01:00
Jason Hollingsworth d9bb4230cc Adding authenticated public mode (internal).
Added visibility_level icons to project view (rather than just text).
Added public projects to search results.
Added ability to restrict visibility levels standard users can set.
2013-11-26 22:22:07 -06:00
Dmitriy Zaporozhets a09fc160d0
Add project.all for API if admin
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2013-11-18 14:15:59 +02:00
Dmitriy Zaporozhets cfa15d0846
Remove default_branch support from API project creation
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2013-11-06 19:14:11 +02:00
Dmitriy Zaporozhets c8e7d6df79 API: new feature - remove project[D 2013-10-09 14:41:41 +03:00
Izaak Alpert 04c7c262a7 Used pagnation function from api helpers
Change-Id: I1bdd3608d3b46924b5da3ae282c99f85ee4e0dab
2013-09-24 09:22:46 -04:00
Izaak Alpert 4cfbfbb845 Added search for projects by name to api
GITLAB-1283 (GITLAB-869)

Change-Id: I611e7e93f6292de08e1edc8d3ea77cf9087b6ded

Conflicts:
	config/initializers/1_settings.rb
2013-09-23 19:36:25 -04:00
Dmitriy Zaporozhets d6aec3fc1a Allow specify path when create project via api 2013-08-14 13:41:06 +03:00
Angus MacArthur ace5c54ab9 enhance project creation apis to allow setting of public attribute
Change-Id: Ib71ce8cf993627eada63d7d596fb302ec702f36e
2013-07-12 12:10:42 -04:00
Dmitriy Zaporozhets 8cdfa86b57 Merge pull request #3993 from bke-drewb/3599
Issue 3599: Add snippets_enabled flag to projects for API
2013-07-11 09:54:15 -07:00
Angus MacArthur ea5a006f27 Additon of apis for fork administration.
Added ability to add and remove the forked from/to relatioinship
between existing repos.
2013-07-08 17:34:00 -04:00
Drew Blessing 31b06ebd01 Issue 3599: Add snippets_enabled flag to projects for API
s 3599: Add snippets_enabled flag to projects for API

Replace missing comma
2013-06-11 21:38:02 -05:00
Dmitriy Zaporozhets 8df699a336 API: project events 2013-06-06 19:19:17 +03:00
Dmitriy Zaporozhets b05600f28b Split Project api on several parts: deploy_keys, hooks, snippets etc 2013-06-06 12:37:51 +03:00
babatakao 37a90d5f76 Selectable deploy keys contain master projects 2013-06-05 02:59:30 +09:00
Dmitriy Zaporozhets bcc4e4dc7e Merge branch 'gist' of https://github.com/Andrew8xx8/gitlabhq into Andrew8xx8-gist
Conflicts:
	Gemfile.lock
	app/models/ability.rb
	app/models/project.rb
	app/views/snippets/_form.html.haml
	db/schema.rb
	features/steps/shared/paths.rb
	spec/factories.rb
	spec/models/project_spec.rb
2013-06-04 18:36:22 +03:00
Dmitriy Zaporozhets 0611c5c612 Fix deploy key api 500 if key is empty 2013-06-03 21:01:07 +03:00
Dmitriy Zaporozhets 50e8d6c0c0 Add api to collect owned user projects. Api deploy_key.create: Enable deploy key if it exist in other owned project 2013-06-03 19:49:04 +03:00
Dmitriy Zaporozhets 068cf2f467 split repositories and projects api 2013-05-23 12:23:47 +03:00
Dmitriy Zaporozhets 634cbd7138 Refactor API classes. So api classes like Gitlab::Issues become API::Issues 2013-05-14 15:33:31 +03:00
Nihad Abbasov 77d0e41df0 fix API route to delete project hook 2013-05-07 00:09:23 +05:00
Dmitriy Zaporozhets 4528fa9817 modify api to work with new deploy keys 2013-05-06 16:24:58 +03:00
Dmitriy Zaporozhets dfeef6c228 Fixed API file raw functionality, Fixed tree controller tests. Added BlobController specs 2013-04-03 15:55:08 +03:00
Dmitriy Zaporozhets 541d899410 Project.repository should never be nil so you can call repository.exists? or repository.empty?
Also specify separate project factory for project with filled repo
2013-04-01 16:56:25 +03:00
Andrew8xx8 d4543eb5a7 Tests fixed 2013-03-25 11:20:14 +04:00
Alex Denisov 28e7d1a8bf Abilities added to /user and /sign_in requests 2013-03-18 20:11:28 +00:00
Sebastian Ziebell ecf53bb9e6 API: fixes project creation and removed redundant info 2013-03-07 15:11:33 +01:00
Sebastian Ziebell 3374027e3a Merge branch 'master' into fixes/api, code clean up and tests fixed
Conflicts:
	doc/api/projects.md
	spec/requests/api/projects_spec.rb
2013-03-07 14:51:56 +01:00
Dmitriy Zaporozhets 7c408960ce Merge pull request #3146 from amacarthur/AdminAPIs
Additional Admin APIs
2013-03-06 22:57:24 -08:00
Sebastian Ziebell b5ef6d2268 API: refactored and simplified error handling in merge requests API 2013-03-05 23:43:05 +01:00
Sebastian Ziebell cce35b6d05 Fixes api 2013-03-05 22:33:45 +01:00
Sebastian Ziebell 61cfa2a7a6 Merge branch 'master' into fixes/api
Conflicts:
	lib/api/projects.rb
2013-03-05 22:29:49 +01:00
Matt Humphrey f411772e33 Project deploy keys API 2013-03-05 21:23:29 +00:00
Angus MacArthur 61ffcab60f Additional Admin APIs 2013-03-05 10:38:43 -05:00