Commit Graph

490 Commits

Author SHA1 Message Date
Douwe Maan 4d64a32c88 Merge branch 'feature/ldap-sync-edgecases' into 'master'
LDAP Sync blocked user edgecases

Allow GitLab admins to block otherwise valid GitLab LDAP users
(https://gitlab.com/gitlab-org/gitlab-ce/issues/3462)

Based on the discussion on the original issue, we are going to differentiate "normal" block operations to the ldap automatic ones in order to make some decisions when its one or the other.

Expected behavior:

- [x] "ldap_blocked" users respond to both `blocked?` and `ldap_blocked?`
- [x] "ldap_blocked" users can't be unblocked by the Admin UI
- [x] "ldap_blocked" users can't be unblocked by the API
- [x] Block operations that are originated from LDAP synchronization will flag user as "ldap_blocked"
- [x] Only "ldap_blocked" users will be automatically unblocked by LDAP synchronization
- [x] When LDAP identity is removed, we should convert `ldap_blocked` into `blocked`
 
Mockup for the Admin UI with both "ldap_blocked" and normal "blocked" users:
![image](/uploads/4f56fc17b73cb2c9e2a154a22e7ad291/image.png)

There will be another MR for the EE version.

See merge request !2242
2016-01-14 11:00:08 +00:00
Rémy Coutable e918493f55 Fix specs and rubocop warnings 2016-01-14 10:04:48 +01:00
Rémy Coutable 0c10aee596 Ensure the API doesn't return notes that the current user shouldn't see 2016-01-13 19:42:36 +01:00
Robert Speicher af68897acd Merge branch 'api-project-upload' into 'master'
Add API project upload endpoint

Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/4317

See merge request !2329
2016-01-08 20:29:43 +00:00
Gabriel Mazetto 6e7db8e23e Prevent ldap_blocked users from being blocked/unblocked by the API 2016-01-08 16:26:04 -02:00
Robert Schilling 4c90ed52fe Delete tag via API 2016-01-08 10:10:04 +01:00
Douwe Maan 1886d727f7 Add API project upload endpoint 2016-01-07 13:37:14 +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 5a8c65b508 Add API support for looking up a user by username
Needed to support Huboard
2015-12-24 07:57:13 -08:00
Douwe Maan 6b968a8fcd Merge branch 'branch-invalid-name' into 'master'
Add JS validation for invalid characters  in branch name

Fixes #3293 

Demo:

![out-1080p](/uploads/ba21c359b6b8b440c40cacf772ec0df7/out-1080p.gif)


See merge request !2122
2015-12-24 11:42:25 +00: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
Douglas Barbosa Alexandre daa28d9fbd Fix spec 2015-12-18 12:43:53 -02: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
Dmitriy Zaporozhets b8570576e8
Merge branch 'add-open-issues-count-to-api' of https://gitlab.com/stanhu/gitlab-ce
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-12-16 16:08:35 +01:00
Gabriel Mazetto b5291f9599 Fixed Rubocop offenses 2015-12-15 00:53:52 -02:00
Stan Hu 3efae53bd7 Add open_issues_count to project API
This is needed to support Huboard and a generally useful value.
2015-12-11 23:17:36 -08:00
Kamil Trzcinski 3578153d3e Fix triggers tests 2015-12-11 18:02:09 +01:00
Kamil Trzcinski 3d9ce37a48 Reimplement Trigger API 2015-12-11 18:02:09 +01:00
Kamil Trzcinski e80e3f5372 Migrate CI::Project to Project 2015-12-11 18:02:09 +01:00
Kamil Trzcinski 2988e1fbf5 Migrate CI::Services and CI::WebHooks to Services and WebHooks 2015-12-10 16:04:08 +01:00
Douwe Maan 8fb49a4b70 Merge branch 'master' into merge-if-green
# Conflicts:
#	app/views/projects/merge_requests/widget/_heading.html.haml
#	app/views/projects/merge_requests/widget/open/_accept.html.haml
2015-12-08 22:34:03 +01:00
Douwe Maan 15925290ee Merge branch 'master' into ui/dashboard-new-issue 2015-12-08 15:22:04 +01:00
Douwe Maan 75486f09c4 Merge branch 'master' into zj/gitlab-ce-merge-if-green 2015-12-08 13:43:45 +01:00
Douwe Maan 0c3f70acf4 Add API group projects specs 2015-12-08 13:34:09 +01:00
Robert Speicher 9321d382bd Add custom NamespaceValidator 2015-12-07 16:57:26 -05:00
Robert Speicher e48391b813 Add custom ColorValidator 2015-12-07 16:57:26 -05:00
Zeger-Jan van de Weg 0e96d6eb10 Merge branch 'master' into merge-if-green 2015-12-07 10:06:07 +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
Zeger-Jan van de Weg 2462a96e45 Incorporate feedback 2015-12-05 15:42:38 +01:00
Dmitriy Zaporozhets 4de7f32c60 Merge branch 'extend-events-api' 2015-12-04 13:51:30 +01:00
Dmitriy Zaporozhets 3227a5ead2
Extent Event and Note API
* add note to Events API
* add author section to Events API
* add noteable_id and noteable_type to Notes API

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-12-04 12:22:50 +01:00
Dmitriy Zaporozhets 0b68a0e79e
Add API endpoint to fetch merge request commits list
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-12-04 11:08:10 +01:00
Zeger-Jan van de Weg a7682f8775 Specs for 'Merge When Build Succeeds' 2015-12-02 13:27:16 +01:00
Robert Schilling 04a3d27eab Allow editing a release in API via PUT method 2015-11-21 22:34:53 +01:00
Robert Schilling 3ea05c5b5b Only allow to create a release if it does not exist yet 2015-11-21 22:24:34 +01:00
Robert Schilling 6f7e90f6db Use POST to create a new release instead of PUT 2015-11-21 18:51:41 +01:00
Robert Schilling faef95af1a API: Return 404 if the tag for a release does not exist 2015-11-21 18:08:45 +01:00
Robert Schilling 2cba93a0d2 Make tag API consistent for release feature 2015-11-21 17:29:26 +01:00
Dmitriy Zaporozhets a43a218c98 Merge branch 'releases-feature' 2015-11-16 10:18:32 +01: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
Dmitriy Zaporozhets d6db451732
Add api test for creating tag with release info
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-12 23:54:22 +01:00
Dmitriy Zaporozhets ba34045f31
Expose release notes to tags api
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-12 17:04:18 +01:00
Dmitriy Zaporozhets c119a73793
Add releases api
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-12 16:26:39 +01:00
Dmitriy Zaporozhets a5ab56fd91
Move git tags API to separate file
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-12 15:41:13 +01:00
Kamil Trzciński fb5c3c7021 Merge branch 'artifacts' into 'master'
Implement Build Artifacts

This implements #3028 

1. It stores artifacts in shared/artifacts,
1. It adds `artifacts` to `.gitlab-ci.yml`,
1. We use GitLab Workhorse to offload artifacts uploading,
1. To download artifacts it uses GitLab Workhorse X-Sendfile extension,
1. There's one "artifact" per-build. The new upload removes previous one and creates a new one,
1. Default max artifact size is set to 100MB - this can be changed in settings.

Missing things:
1. Support for `.gitlab-ci.yml`: `artifacts: true or git-ls-files` which will upload all non tracked files,
1. Artifacts passing between builds.

GitLab Workhorse changes: https://gitlab.com/gitlab-org/gitlab-workhorse/merge_requests/5
GitLab Runner changes: https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/merge_requests/46

Syntax:
```
artifacts:
  untracked: true # default: false
  paths: # default: empty
  - bin/files
```


See merge request !1584
2015-11-11 12:44:37 +00:00
Stan Hu 83ec84946c Merge branch 'add-allow-failure-status' into 'master'
Add allow_failure field to commit status API

Closes #3196

See merge request !1685
2015-11-10 21:28:12 +00:00
Kamil Trzcinski d0e3e823a2 Implement Build Artifacts
- Offloads uploading to GitLab Workhorse
- Use /authorize request for fast uploading
- Added backup recipes for artifacts
- Support download acceleration using X-Sendfile
2015-11-10 12:51:50 +01:00
Stan Hu 91cbf9db0c Add allow_failure field to commit status API
Closes #3196
2015-11-03 20:41:19 -08:00
Robert Speicher d09d62b6b8 Replace all usages of `git` command with configurable binary path
Closes #3311
2015-11-03 17:11:09 -05:00
Valery Sizov 1b8d324762 Add ability to fetch the commit ID of the last commit that actually touched a file 2015-11-02 17:07:06 +02:00