75 Commits
Author SHA1 Message Date
Grzegorz Bizon 9e211091a8 Enable Style/EmptyLines cop, remove redundant ones 2016-07-01 21:56:17 +02:00
Grzegorz Bizon 28bafd5354 Enable Style/SpaceAfterComma Rubocop cop 2016-06-29 15:23:44 +02:00
Kamil Trzcinski 2f545a15c0 Merge remote-tracking branch 'origin/master' into ci-lfs-fetch 2016-06-21 10:11:14 +02:00
Jacob Vosmaer c32e61251e Get rid of Gitlab::ShellEnv 2016-06-15 14:59:37 +02:00
Kamil Trzcinski 95a10f4533 Merge remote-tracking branch 'origin/master' into ci-lfs-fetch 2016-06-10 22:27:06 +02:00
Jacob Vosmaer 0e896ffe4e Improve Gitlab::Auth method names
Auth.find was a very generic name for a very specific method.
Auth.find_in_gitlab_or_ldap was inaccurate in GitLab EE where it also
looks in Kerberos.
2016-06-10 14:51:16 +02:00
Jacob Vosmaer 1fab583266 Remove instances of Auth.new 2016-06-03 17:08:44 +02:00
Kamil Trzcinski 17c6bec79d WIP 2016-06-03 13:57:40 +02:00
Jacob Vosmaer fea591e5c5 Rename finder to find_in_gitlab_or_ldap 2016-06-02 13:42:18 +02:00
Jacob Vosmaer d1f5019511 Use correct auth finder 2016-05-02 13:19:39 +02:00
Jacob Vosmaer b1ffc9f0fe Make CI/Oauth/rate limiting reusable 2016-04-29 18:58:55 +02:00
Jacob Vosmaer 6cc6d9730a Delete dead code 2016-04-06 17:27: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
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
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
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
Stan Hu 3b22cfe600 Remove Rack Attack monkey patches and bump to version 4.3.0 2015-05-22 16:25:03 -04: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 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 ce056d8074 Improve grack auth hooks comment. 2014-10-21 12:36:09 +02:00
Dmitriy Zaporozhets 5c038d949f Fix gitlab-ci integration
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-03-21 23:04:57 +02:00
Dmitriy Zaporozhets 7dd18a3ec8 Fix http clone for public project
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-03-21 14:52:30 +02:00
Dmitriy Zaporozhets 83e83b6617 Improve grack auth
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-03-20 10:53:03 +02:00
Dmitriy Zaporozhets 729b358ff2 push via http now served via /allowed API
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-03-20 10:16:17 +02:00
Thomas Guyot-Sionnest 843548cc76 Fix HTTP push to public repos
When doing an HTTP push, git (as of v1.7.9) first do an info/refs
request, and only if this request requires authentication it asks the
user for its password and authenticates further requests.

The initial request normally clears without auth on public repos as it
doesn't update any ref. This patch forces every git-receive-pack
requests to provide authentication.
2013-12-16 12:39:54 -05: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 51ae88c4e4 Improve refs parsing for git over http
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2013-11-22 12:55:20 +02:00
Dmitriy Zaporozhets 06feb3c442 Cleanup parsed refs for git over HTTP
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2013-11-22 12:41:55 +02:00
Dmitriy Zaporozhets 182aa19e26 Parse all refs when do push via HTTP and check permissions for all of them
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2013-11-20 11:06:19 +02:00
Dmitriy Zaporozhets 0542261437 Allow git clone with http for GitLab CI service:
If you enable GitLab CI for project you will be able to clone project
source code with next command:
git clone http://gitlab-ci-token:XXXXXXXXXXXX@host:project.git
Requires for GitLab CI 4.0
2013-10-24 17:17:22 +03:00