Commit Graph

156 Commits

Author SHA1 Message Date
Robert Speicher 34b0561560 Merge branch 'pmq20/gitlab-ce-psvr/change-head' into 'master'
Use rugged to change HEAD

_Originally opened at !2850 by @pmq20._

Needless to invoke gitlab_shell here, which is slow.

See merge request !3705
2016-04-15 16:44:21 +00:00
Rémy Coutable 8b7bf2a0e0 Merge branch 'rugged-delete-tag' into 'master'
Delete tags via rugged

Improve the performance by directly using rugged instead of shelling out to a git operation.

See merge request !3748
2016-04-15 14:42:05 +00:00
Robert Schilling 3c704c33e0 Delete tags via rugged 2016-04-15 16:05:04 +02:00
Robert Schilling 106c443e76 Remove unused backend methods 2016-04-15 13:30:33 +02:00
Rémy Coutable f8e8a61c9c
Remove Gitlab::Shell#update_repository_head since it's not used anymore
Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-04-15 11:38:59 +02:00
Drew Blessing 5f38dbc026 Increase project import timeout from 4 minutes to 15 minutes
Many users were experiencing timeouts when we only allowed
4 minutes before a timeout. A 15 minute timeout is more
than reasonable and prevents us from having to add a
configuration for this.

Fixes gitlab-org/gitlab-ee#246
2016-02-04 13:41:42 -06:00
James Lopez ecb174bfea fixed move project method in migration 2016-02-02 17:28:14 +01:00
Jeroen Nijhof 9b28220f88 Merge gitlab.com:gitlab-org/gitlab-ce 2016-01-06 14:55:44 +01:00
Gabriel Mazetto b5291f9599 Fixed Rubocop offenses 2015-12-15 00:53:52 -02:00
Kamil Trzcinski dd8102f2d1 Fix specs 2015-12-11 18:02:10 +01:00
Kamil Trzcinski 8cdd54cc06 Add runners token 2015-12-11 18:02:09 +01:00
Kamil Trzcinski e80e3f5372 Migrate CI::Project to Project 2015-12-11 18:02:09 +01:00
Douwe Maan 841a7c6897 Store and show reason why import failed. 2015-11-18 12:00:56 +01:00
Marin Jankovski 14032d8eb1 Add support for git lfs. 2015-11-16 12:39:13 +01:00
Jacob Vosmaer c5132e94e1 Switch to gitlab-workhorse 2015-10-29 14:21:24 +01:00
Stan Hu 64a270a645 Fix cloning Wiki repositories via HTTP
Cloning a project Wiki over HTTP would end up cloning the main repository
since the .wiki extension was being stripped.

Closes #3106
2015-10-22 13:53:12 -07:00
Jeroen Nijhof 4f0a38f1a8 Added housekeeping for git repositories 2015-10-21 15:15:54 +02:00
Douwe Maan c993481d99 Merge branch 'master' into git-archive-golang 2015-10-15 11:47:36 +02:00
Robert Speicher 69b41ba043 Normalize space-like characters in keys before output to gitlab-shell
gitlab-shell expects only one tab separator per key, and an SSH key with
a tab character in the comment, for example, would break things.

Closes #2970
2015-10-08 20:34:50 -04:00
Jacob Vosmaer cb13980db8 Let gitlab-git-http-server handle archive downloads
This change relies on changes in gitlab_git and gitlab-git-http-server.
2015-10-08 17:12:00 +02:00
Dmitriy Zaporozhets d9f794a850 Merge branch 'grack-auth-new-instance' into 'master'
Avoid instance variable re-use trouble

This is the quickest/dumbest/safest way I could think of to prevent
the instance variable reuse problems we have on dev.gitlab.org now.

See merge request !1237
2015-09-02 18:05:16 +00:00
Jacob Vosmaer 30bf2b9cc3 Avoid instance variable re-use trouble
This is the quickest/dumbest/safest way I could think of to prevent
the instance variable reuse problems we have on dev.gitlab.org now.
2015-09-02 18:47:56 +02:00
Kirilll Zaitsev 263abda3fd Drone CI service 2015-09-02 05:52:16 +03:00
Jacob Vosmaer 4027a26e7b Replace grack with gitlab-git-http-server 2015-08-31 15:30:15 +02:00
Dmitriy Zaporozhets 3e259ea8bc Revert "Merge branch 'revert-satellites' into 'master' "
This reverts commit 5daf44b7c8, reversing
changes made to 2f706fbd23.
2015-08-11 14:33:31 +02:00
Dmitriy Zaporozhets 9f10943c1a
Revert "Merge branch 'drop-satellites'"
This reverts commit 957e849f41, reversing
changes made to 6b9dbe9f5a.

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-08-11 10:28:42 +02:00
Dmitriy Zaporozhets b48b07044b
Merge branch 'master' into drop-satellites
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-08-04 16:42:36 +02:00
GitLab 16dcf356b5 Fix style points
To make Rubocop and Douwe happy
2015-07-28 18:04:57 +02:00
GitLab 6912f21e5c Send GL_ID to gitlab-git-http-server as JSON 2015-07-28 15:55:53 +02:00
GitLab ae9e5eea3c Handle missing @user during Git HTTP requests 2015-07-28 15:17:06 +02:00
Jacob Vosmaer d3305df7aa Experimental support for gitlab-git-http-server
https://gitlab.com/gitlab-org/gitlab-git-http-server

This change introduces the GITLAB_GRACK_AUTH_ONLY environment
variable. When set, Grack requests to GitLab will only respond with
the user's GL_ID (if the request is OK) or an error. This allows
gitlab-git-http-server to use the main GitLab application as an
authentication and authorization backend.

If we like how this works we should drop the GITLAB_GRACK_AUTH_ONLY
variable at some point in the future.
2015-07-28 14:33:19 +02:00
Dmitriy Zaporozhets a87989fb7d Remove satellites 2015-07-15 15:45:57 +02:00
Stan Hu 555fd0cf4a Fix downloading of patches on public merge requests when user logged out
Closes #1225
Closes #1854
Closes #1858
2015-06-23 05:34:21 -07: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
Stan Hu 3b22cfe600 Remove Rack Attack monkey patches and bump to version 4.3.0 2015-05-22 16:25:03 -04:00
Douwe Maan f915a4b80f Warn when gitlab-shell version doesn't match requirement. 2015-04-06 14:02:49 +02:00
Dmitriy Zaporozhets 8f3f6e9efb Merge branch 'api-internal-errors' into 'master'
Respond with full GitAccess error if user has project read access.

Should help with debugging #1236.

cc @marin

See merge request !437
2015-03-25 04:16:45 +00:00
Douwe Maan 4830b2be5e Refactor GitAccess to use instance variables. 2015-03-24 14:11:48 +01:00
Stan Hu 56d87db32c Reduce Rack Attack false positives by clearing out auth failure count upon
successful Git over HTTP authentication.

Add logging when a ban goes into effect for debugging.

Issue #1171
2015-03-24 00:36:46 -07:00
Douwe Maan dd37a10df4 Don't leak information about private project existence via Git-over-SSH/HTTP. 2015-03-02 17:52:48 +01:00
Dmitriy Zaporozhets d723bf78b8 Fix git-over-http 2015-02-23 10:05:18 -08:00
Dmitriy Zaporozhets d04344373b Rubocop: no trailing newlines 2015-02-02 21:53:27 -08:00
Dmitriy Zaporozhets e890582681 Rubocop enabled for: Use spaces inside hash literal braces 2015-02-02 20:36:54 -08:00
Valery Sizov 54f6d8c7b5 an ability to clone project with oauth2 token 2015-01-28 15:57:31 -08:00
Jacob Vosmaer af56c1dd32 White-list requests from 127.0.0.1
On some misconfigured GitLab servers, if you look in production.log it looks
like all requests come from 127.0.0.1. To avoid unwanted banning we
white-list 127.0.0.1 with this commit.
2015-01-06 16:56:56 +01:00
Jacob Vosmaer c8b2def2be Add more comments explaining how we block IPs 2014-12-18 11:08:11 +01:00
Jacob Vosmaer 62ea02740d Block Git HTTP Basic Auth after 10 failed attempts 2014-12-15 18:57:42 +01:00
Valery Sizov 53bf52f191 Better message for failed pushes because of git hooks
Conflicts:
	lib/gitlab/git_access.rb
	spec/lib/gitlab/git_access_spec.rb
2014-11-18 13:10:07 +02:00
Ciro Santilli f36db59d97 Factor GITLAB_SHELL_VERSION get method 2014-11-05 17:16:04 +01:00
Ciro Santilli 0b1084a453 Don't output to stdout from lib non-interactive methods
It pollutes the test output too much.
2014-11-05 12:35:33 +01:00