Commit graph

43 commits

Author SHA1 Message Date
Matt Bostock
307aed12bc Move open registration setting into remote plugins
...so that it's possible to enable or disable open registration on a
per-remote basis.

For example, the `DRONE_REGISTRATION_OPEN` environment variable now
becomes `DRONE_GITHUB_OPEN` when using GitHub as a remote.

The default for open registration in this commit is `false` (disabled),
which matches the existing behaviour.

This is useful if you need to support both public and private remotes,
e.g. GitHub.com and GitHub Enterprise, where you trust all of the
private users and want to allow open registration for those but would
not want all GitHub.com users to run builds on your server.

Tested with GitHub and GitLab.
2015-01-16 22:04:24 +00:00
Dan Carley
8fa473b07a Support org whitelists for GitHub+GHE remotes
Allow the GitHub and GitHub Enterprise remotes to restrict who can login
based on a user's organisation membership. This can be used as a safe
addition to open registration and also ensures that access is revoked when a
user is subsequently removed from the org. The default is not to restrict at
all.
2015-01-15 17:05:53 +00:00
Dan Carley
789adf90e4 Add test for GitHub remote Authorize()
To test that it correctly authorises a valid user, prior to me extending it.
This only tests the happy path because simulating oAuth failures is going
to be quite hard at this stage.
2015-01-15 14:54:27 +00:00
Dan Carley
a608f5ef82 Add test for GitHub remote GetOrgs() helper
I'm about to re-use this in another helper, so test that it works as
expected. Also fix the inline documentation which was copied from
`GetOrgRepos`.
2015-01-15 14:54:27 +00:00
Dan Carley
86b0329d57 Change org name in GitHub testdata
The example JSON taken from GitHub's API documentation doesn't indicate that
`login` is the name of an organisation rather than a user. Change it to
something that looks more like an org, because it will make a test that I'm
about to add more readable. The endpoint name changes accordingly.
2015-01-15 14:54:26 +00:00
Cédric Krier
cb6ade6919 Missing URL for bitbucket Repo 2015-01-11 02:13:12 +01:00
Michael Steinert
d1099bcf53 Add Gitlab certificate verification configuration
Requires Bugagazavr/go-gitlab-client@4e00e40109
2014-12-09 10:16:59 -06:00
Christopher Brickley
270ce52b76 add gogs support 2014-11-18 21:50:05 -05:00
Brad Rydzewski
0dce99f5f4 instructs Drone to ignore cert verification if self-signed 2014-11-17 11:18:58 -08:00
Kirill Zaitsev
c7649e15b1 Add gitlab repo url 2014-10-28 03:21:19 +03:00
Brad Rydzewski
1fd1c5e292 fixe #620 2014-10-24 08:52:42 -07:00
Andrew Vos
286d5fe94c Fix incorrect drone branch for pull requests
Fixes #607
2014-10-22 11:56:06 +01:00
Brad Rydzewski
4f30e1388c only generate repo token or key if not exists 2014-10-22 01:02:14 -07:00
Grzegorz Graczyk
79e0c7a84f move regexp to package level variable, add check for email array 2014-10-22 09:37:04 +02:00
Grzegorz Graczyk
25b887c059 get commit author email address from raw_author instead of author field for bitbucket 2014-10-22 08:52:45 +02:00
Brad Rydzewski
5f950d21c4 hooked up jwt token in angular 2014-09-30 00:43:50 -07:00
Brad Rydzewski
0987a9ad59 verified fix for github enterprise email issues 2014-09-09 01:37:02 -07:00
Brad Rydzewski
522310ecb8 improvements to github enterprise flow when no primary email 2014-09-09 01:09:19 -07:00
Brad Rydzewski
1ff56ef51c handle github enterprise not supporting verified / primary emails 2014-09-09 00:32:47 -07:00
Brad Rydzewski
2cca926a06 vendored goauth2, see https://code.google.com/p/goauth2/issues/detail?id=31 2014-09-08 23:57:48 -07:00
Brad Rydzewski
9455dbab9f improved error messaging in Github's GetLogin 2014-09-08 23:09:00 -07:00
Brad Rydzewski
31b1ed1f48 added a private mode flag for github enterprise, defaulted to true 2014-09-07 11:26:16 -07:00
Brad Rydzewski
b9c103cef8 includes fix for #335 in exp branch 2014-09-06 13:08:56 -07:00
Brad Rydzewski
617476784d getting gitlab project permissions only if user is not repo owner
also move Timeout value to repo activation
2014-09-06 12:07:47 -07:00
Brad Rydzewski
73d2f5c1ca Merge pull request #444 from Bugagazavr/exp-gitlabfix
Fix gitlab permissions sync #415
2014-09-06 10:54:33 -07:00
Brad Rydzewski
b92ae8b3c7 forcing github hook as form content_type 2014-09-06 10:29:06 -07:00
Brad Rydzewski
8ad36255de get githook hook payload from either form or json 2014-09-06 10:23:36 -07:00
Brad Rydzewski
5f3b882c0c fixed typo 2014-09-05 20:40:18 -07:00
Brad Rydzewski
962a4487d7 optional name param for GH plugin 2014-09-05 18:35:05 -07:00
Kirill Zaitsev
068a7583be Fix timeout 2014-09-05 22:49:59 +04:00
Kirill Zaitsev
49f03cd7e7 Updated mocks 2014-09-05 22:14:18 +04:00
Kirill Zaitsev
afa928af0c Fix gitlab permissions sync #415 2014-09-05 21:37:29 +04:00
Brad Rydzewski
c858c3b2b8 fixed issue when no gitlab permissions exist, but user is repo owner 2014-09-03 01:23:45 -07:00
Brad Rydzewski
ca3d15bca2 refactored how remotes work and how (some) config is loaded 2014-09-03 00:23:36 -07:00
Brad Rydzewski
38379992bf refactored plugin/remote and adapted @bugBugagazavr Gitlab code 2014-09-02 00:18:17 -07:00
Brad Rydzewski
f51b4d5ef3 setting and checking random state in OAuth flow 2014-08-09 16:50:45 -07:00
Brad Rydzewski
aec5d06ff1 setting the github client API url for github enterprise 2014-08-03 09:55:45 -07:00
Vsevolod Strukchinsky
d554b44760 0.3, Forming right redirect url for enterprise
This fixes redirect loop for github enterprise users.

But I still got `Error retrieving currently authenticated GitHub user. Unauthorized` error.
2014-08-03 14:25:16 +06:00
Brad Rydzewski
aa9a8f4878 integrated plugin model for remotes 2014-07-12 19:01:58 -07:00
Brad Rydzewski
ecff154c56 fixed code to use ssh clone url for private repos 2014-07-12 00:22:54 -07:00
Brad Rydzewski
9424b55046 bitbucket now checking for email on login 2014-07-09 22:23:49 -07:00
Brad Rydzewski
8eaf9957a6 Moved httputil and sshutil Packages 2014-06-12 15:28:05 -07:00
Brad Rydzewski
170135cb1d Move Plugins to a /plugin Directory 2014-06-12 14:46:55 -07:00