Commit Graph
2436 Commits
Author SHA1 Message Date
Dmitriy Zaporozhets 87f9c475db Merge branch 'refactor-web-editor' into 'master'
Refactor web editor

* fix problem with editing non-master branch
* before commit make sure branch exists
* dont allow user change file in one branch and commit to another existing branch
* remove a lot of code duplication
* remove outdated statellite errors

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

Fixes #1761

See merge request !773
2015-06-05 16:14:34 +00:00
Dmitriy Zaporozhets 7bde6ae540 Fix editing files via API
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-05 17:16:51 +02:00
Douwe Maan 3f59a8f0be Merge branch 'cernvcs/gitlab-ce-feature/auto_link_ldap_omniauth' 2015-06-05 13:34:25 +02:00
Douwe Maan 45e9150a51 Tweak code. 2015-06-05 12:32:01 +02:00
Dmitriy Zaporozhets b7d20f14c6 Merge branch 'maser/gitlab-ce-order-commit-comments-in-api' into 'master'
Order commit comments in API chronologically

When fetching commit comments via API, the comments were not ordered,
but just returned in the order Postgresql finds them. Now the API always
returns comments in chronological order.

Same as !628 but with CI

See merge request !768
2015-06-05 08:38:19 +00:00
Dmitriy Zaporozhets 9287865599 Merge branch 'fix-upgrader-script' into 'master'
Fix upgrader script

This is a fix for upgrader script not guessing the latest version correctly.

Upgrader now handles versions where a version part (major/minor/patch) can have multi-digit number, also ensures that the latest version is chosen from git tags by converting tag to Gitlab::VersionInfo and than selecting the latest/greatest version.

Fixes: #1476

See merge request !695
2015-06-04 16:01:13 +00:00
Dmitriy Zaporozhets b9219469f7 Merge branch 'make-namespaces-api-available-to-all-users' into 'master'
Make namespace API available to all users

### What does this MR do?

This MR makes it possible for a user to query namespaces to which he/she has access. Also, it adds documentation for the existing API.

### Why was this MR needed?

Even though the `groups` API exists, it might still be useful to have an endpoint that tells the namespace type (e.g. `user` vs. `group`), especially if a user has access to a number of different projects.

### What are the relevant issue numbers?

Closes https://github.com/gitlabhq/gitlabhq/issues/9328

See merge request !708
2015-06-04 15:59:17 +00:00
Dmitriy Zaporozhets e063c8f3e2 Merge branch 'trigger_hooks_create_on_backup_restore' into 'master'
Trigger hooks create on backup restore

Number of users migrating from installation from source to omnibus get this issue. This can be fixed with a bash one liner but we already have a script that creates hooks in gitlab-shell. Added to gitlab:shell:install task call to `bin/create-hooks`. This script is idempotent which means it will only rewrite hooks if something changed.

Fixes https://dev.gitlab.org/gitlab/gitlabhq/issues/2208, https://github.com/gitlabhq/gitlabhq/issues/9101 and for the most part https://github.com/gitlabhq/gitlabhq/issues/8161

See merge request !762
2015-06-04 14:46:24 +00:00
Dmitriy Zaporozhets fb59f04fdf Merge branch 'fix-group-remove' into 'master'
Group improvements

* remove projects before removing group
* execute all hooks/events from project destroy when group removed
* log group create/remove
* delay remove of namespace directory (to prevent NFS issues)

Inspired by !759

See merge request !761
2015-06-03 15:02:33 +00:00
Dmitriy Zaporozhets 8046b69761 Merge branch 'remove_unecessary_rake_task' into 'master'
Remove gitlab:env:check task.

Rake task that checks for git user git settings is a leftover from early days.

It is not being used by the web editor(and web editor is also being redone atm) so this rake task just causes confusion.

Adresses internal issue https://dev.gitlab.org/gitlab/gitlabhq/issues/2362

See merge request !758
2015-06-03 14:59:38 +00:00
Marin Jankovski a1be236c87 Trigger hooks-create on gitlab backup restore. 2015-06-03 16:24:37 +02:00
Dmitriy Zaporozhets e414463d9e Merge branch 'repo-remove'
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

Conflicts:
	spec/features/projects_spec.rb
2015-06-03 16:17:36 +02:00
Marin Jankovski 7044d649a3 Add autocrlf back to installation docs, add a check for it. 2015-06-03 15:42:22 +02:00
Dmitriy Zaporozhets 7bab4817f7 Merge branch 'repo-remove' into fix-group-remove
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

Conflicts:
	spec/features/projects_spec.rb
2015-06-03 15:15:46 +02:00
Dmitriy Zaporozhets 61cfd1d273 Wrap group removal into service
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-03 14:07:20 +02:00
Dmitriy Zaporozhets 97ff86e07c Move repository when project is removed
Ths commit does next:

* When we remove project we move repository to path+deleted.git
* Then we schedule removal of path+deleted with sidekiq
* If repository move failed we abort project removal

This should help us with NFS issue when project get removed but
repository stayed. The full explanation of problem is below:

* rm -rf project.git
* rm -rf removes project.git/objects/foo
* NFS server renames foo to foo.nfsXXXX because some NFS client (think
* Unicorn) still has the file open
* rm -rf exits, but project.git/objects/foo.nfsXXX still exists
* Unicorn closes the file, the NFS client closes the file (foo), and the
* NFS server removes foo.nfsXXX
* the directory project.git/objects/ still exists => problem

So now we move repository and even if repository removal failed

Repository directory is moved so no bugs with project removed but
repository directory taken. User still able to create new project with
same name. From administrator perspective you can easily find stalled
repositories by searching `*+deleted.git`

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-03 13:05:43 +02:00
Alex Lossent dfcea8ed51 Add option to automatically link omniauth and LDAP identities
Until now, a user needed to first sign in with his LDAP identity and then manually
link his/her account with an omniauth identity from their profile.
Only when this is done can the user authenticate with the omniauth provider and at
the same time benefit from the LDAP integration (HTTPS authentication with LDAP
username/password and in EE: LDAP groups, SSH keys etc.).
This feature automates the process by looking up a corresponding LDAP person when a
user connects with omniauth for the first time and then automatically linking the LDAP
and omniauth identities (of course, like the existing allow_single_sign_on setting,
this is meant to be used with trusted omniauth providers).
The result is identical to a manual account link.

Add config initializers for other omniauth settings.
2015-06-03 11:46:20 +02:00
Marin Jankovski 5f7d6c7d74 Remove gitlab:env:check task. 2015-06-03 11:26:57 +02:00
Dmitriy Zaporozhets 79aac2c128 Merge branch 'ignore-references' into 'master'
Don't notify users mentioned in code blocks or blockquotes.

cc @rspeicher

See merge request !753
2015-06-02 18:39:18 +00:00
Robert Speicher 9e7a9c63a5 Further limit the limited whitelist for project/group descriptions 2015-06-02 13:41:12 -04:00
Robert Speicher 023dd2907b Add a pipeline context option for SanitizationFilter
When this option is `:description`, we use a more restrictive whitelist.
This is used for Project and Group description fields.
2015-06-02 13:04:10 -04:00
Marin Jankovski c4cb563e98 Merge pull request #8730 from drunkard/master
Specify shell while run me as git user
2015-06-02 16:19:31 +02:00
Douwe Maan 1f908dc481 Fix typo. 2015-06-02 13:21:34 +02:00
Douwe Maan 94919c7ef6 Ignore references in blockquotes. 2015-06-02 13:17:21 +02:00
Douwe Maan fe78984f20 Actually ignore references in code blocks etc. 2015-06-02 13:17:11 +02:00
Dmitriy Zaporozhets d684b11054 Remove unnecessary satellite files and add CHANGELOG item
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-02 12:07:00 +02:00
Dmitriy Zaporozhets 8ad5f08483 Remove now unnecessary satelittes logic for creating and editing file with web editor
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-06-02 10:56:22 +02:00
Stan Hu 85145d1d77 Disable changing of the source branch in merge request update API 2015-05-29 09:40:35 -07:00
Robert Speicher 330c25385b Update jasmine:ci task to use teaspoon 2015-05-28 18:22:33 -04:00
Stan Hu 67992b9be6 Make namespace API available to all users
Closes https://github.com/gitlabhq/gitlabhq/issues/9328
2015-05-28 11:39:12 -07:00
Dmitriy Zaporozhets 05a44dcb8b Merge branch 'user-destroy-wo-groups' into 'master'
You can not remove user if he/she is an only owner of group

To prevent loose of group data you need to transfer or remove group
first before you can remove user

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>

See merge request !730
2015-05-28 13:14:58 +00:00
Dmitriy Zaporozhets 499154518a You can not remove user if he/she is an only owner of group
To prevent loose of group data you need to transfer or remove group
first before you can remove user

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-05-28 12:00:02 +02:00
Robert Speicher 7424d2fa5b Add ExternalLinkFilter to Markdown pipeline
Forces a `rel="nofollow"` attribute on all external links.
2015-05-27 15:39:08 -04:00
Robert Speicher 5a9c5520d9 Make use of to_reference in more specs 2015-05-26 15:49:22 -04:00
Robert Speicher 81a09bc74c Support only double quotes for multi-word label references 2015-05-26 15:49:20 -04:00
Robert Speicher b88da58cb6 Add reference_pattern to Referable models 2015-05-26 15:48:32 -04:00
Robert Speicher 9d032cddf5 Correct the ReferenceFilter html/pipeline/filter require 2015-05-26 15:48:31 -04:00
Dmitriy Zaporozhets 08102ad748 Merge branch 'rs-issue-1690' into 'master'
Better handle label references that aren't actually references

Fixes #1690

See merge request !705
2015-05-26 14:35:54 +00:00
Douwe Maan 9bb00cd77f Merge branch 'get-monkey-off-my-rack-attack' into 'master'
Remove Rack Attack monkey patches and bump to version 4.3.0

I finally got these monkey patches into Rack Attack v4.3.0, so GitLab no longer needs them. Hooray!

See: https://github.com/kickstarter/rack-attack/pull/128

See merge request !693
2015-05-26 07:43:57 +00:00
Robert Speicher b263a33c80 Better handle label references that aren't actually references
Fixes #1690
2015-05-25 16:06:34 -04:00
Martins Polakovs cfc9bff45e Fix upgrader script 2015-05-23 13:11:23 +03:00
Stan Hu 3b22cfe600 Remove Rack Attack monkey patches and bump to version 4.3.0 2015-05-22 16:25:03 -04:00
Stan Hu deeff56967 Add support for Webhook note events
Closes https://github.com/gitlabhq/gitlabhq/issues/6745
2015-05-21 23:48:16 -04:00
Robert Speicher 212fe14c65 Customize the sanitization whitelist only once
Fixes #1651
2015-05-20 21:16:11 -04:00
Robert Speicher 8ee382087d Subclass TaskList::Filter to fix a bug
Instead of using a fork, we subclass the filter and only apply the
`task-list` class to list items that actually are task lists.

Closes #1645

See https://github.com/github/task_list/pull/60
2015-05-20 12:08:33 -04:00
Marin Jankovski 509a32f466 Merge branch 'shell-secret-path' of https://github.com/jirutka/gitlabhq into jirutka-shell-secret-path 2015-05-19 14:37:35 +02:00
Jakub Jirutka b0659c1b07 Simplify and unify helpers for rendering markup 2015-05-18 22:52:13 +02:00
Jakub Jirutka daa0925016 Rename MarkdownHelper to MarkupHelper 2015-05-18 22:51:56 +02:00
Jakub Jirutka 8dbc4746fe Handle AsciiDoc better, reuse HTML pipeline filters (fixes #9263) 2015-05-18 20:48:03 +02:00
Nikita Verkhovin 241f5971ba Add search issues/MR by number 2015-05-18 13:09:13 +06:00