More Bitbucket integration refactoring
This commit is contained in:
parent
2fb28dddfc
commit
8fe7817e4d
|
@ -1,14 +1,15 @@
|
|||
# Integrate your GitLab server with Bitbucket
|
||||
|
||||
Import projects from Bitbucket and login to your GitLab instance with your
|
||||
Bitbucket account.
|
||||
Import projects from Bitbucket.org and login to your GitLab instance with your
|
||||
Bitbucket.org account.
|
||||
|
||||
## Overview
|
||||
|
||||
You can set up Bitbucket as an OAuth provider so that you can use your
|
||||
credentials to authenticate into GitLab or import your projects from Bitbucket.
|
||||
You can set up Bitbucket.org as an OAuth provider so that you can use your
|
||||
credentials to authenticate into GitLab or import your projects from
|
||||
Bitbucket.org.
|
||||
|
||||
- To use Bitbucket as an OmniAuth provider, follow the [Bitbucket OmniAuth
|
||||
- To use Bitbucket.org as an OmniAuth provider, follow the [Bitbucket OmniAuth
|
||||
provider](#bitbucket-omniauth-provider) section.
|
||||
- To import projects from Bitbucket, follow both the
|
||||
[Bitbucket OmniAuth provider](#bitbucket-omniauth-provider) and
|
||||
|
@ -21,16 +22,16 @@ Make sure to first follow the [Initial OmniAuth configuration][init-oauth]
|
|||
before proceeding with setting up the Bitbucket integration.
|
||||
|
||||
To enable the Bitbucket OmniAuth provider you must register your application
|
||||
with Bitbucket. Bitbucket will generate an application ID and secret key for
|
||||
with Bitbucket.org. Bitbucket will generate an application ID and secret key for
|
||||
you to use.
|
||||
|
||||
1. Sign in to Bitbucket.
|
||||
1. Navigate to your individual user settings (Manage account) or a team's
|
||||
settings (Manage team), depending on how you want the application registered.
|
||||
1. Sign in to [Bitbucket.org](https://bitbucket.org).
|
||||
1. Navigate to your individual user settings (**Bitbucket settings**) or a team's
|
||||
settings (**Manage team**), depending on how you want the application registered.
|
||||
It does not matter if the application is registered as an individual or a
|
||||
team - that is entirely up to you.
|
||||
1. Select "OAuth" in the left menu.
|
||||
1. Select "Add consumer".
|
||||
team, that is entirely up to you.
|
||||
1. Select **OAuth** in the left menu under "Access Management".
|
||||
1. Select **Add consumer**.
|
||||
1. Provide the required details:
|
||||
|
||||
| Item | Description |
|
||||
|
@ -40,66 +41,74 @@ you to use.
|
|||
| **Callback URL** | Leave blank. |
|
||||
| **URL** | The URL to your GitLab installation, e.g., `https://gitlab.example.com`. |
|
||||
|
||||
1. Grant at least the following permissions:
|
||||
And grant at least the following permissions:
|
||||
|
||||
```
|
||||
Account: Email
|
||||
Repositories: Read
|
||||
Repositories: Read, Admin
|
||||
```
|
||||
|
||||
1. Select "Save".
|
||||
1. Select your newly created OAuth consumer.
|
||||
1. You should now see a Key and Secret in the list of OAuth customers.
|
||||
Keep this page open as you continue configuration.
|
||||
1. On your GitLab server, open the configuration file.
|
||||
>**Note:**
|
||||
It may seem a little odd to giving GitLab admin permissions to repositories,
|
||||
but this is needed in order for GitLab to be able to clone the repositories.
|
||||
|
||||
For omnibus package:
|
||||
![Bitbucket OAuth settings page](img/bitbucket_oauth_settings_page.png)
|
||||
|
||||
```sh
|
||||
1. Select **Save**.
|
||||
1. Select your newly created OAuth consumer and you should now see a Key and
|
||||
Secret in the list of OAuth customers. Keep this page open as you continue
|
||||
the configuration.
|
||||
|
||||
![Bitbucket OAuth key](img/bitbucket_oauth_keys.png)
|
||||
|
||||
1. On your GitLab server, open the configuration file:
|
||||
|
||||
```
|
||||
# For Omnibus packages
|
||||
sudo editor /etc/gitlab/gitlab.rb
|
||||
|
||||
# For installations from source
|
||||
sudo -u git -H editor /home/git/gitlab/config/gitlab.yml
|
||||
```
|
||||
|
||||
For installations from source:
|
||||
1. Follow the [Initial OmniAuth Configuration](omniauth.md#initial-omniauth-configuration)
|
||||
for initial settings.
|
||||
1. Add the Bitbucket provider configuration:
|
||||
|
||||
```sh
|
||||
cd /home/git/gitlab
|
||||
|
||||
sudo -u git -H editor config/gitlab.yml
|
||||
```
|
||||
|
||||
1. See [Initial OmniAuth Configuration](omniauth.md#initial-omniauth-configuration) for initial settings.
|
||||
1. Add the provider configuration:
|
||||
|
||||
For omnibus package:
|
||||
For Omnibus packages:
|
||||
|
||||
```ruby
|
||||
gitlab_rails['omniauth_providers'] = [
|
||||
{
|
||||
"name" => "bitbucket",
|
||||
"app_id" => "YOUR_KEY",
|
||||
"app_secret" => "YOUR_APP_SECRET",
|
||||
"app_id" => "BITBUCKET_APP_KEY",
|
||||
"app_secret" => "BITBUCKET_APP_SECRET",
|
||||
"url" => "https://bitbucket.org/"
|
||||
}
|
||||
]
|
||||
```
|
||||
|
||||
For installation from source:
|
||||
For installations from source:
|
||||
|
||||
```yaml
|
||||
- { name: 'bitbucket',
|
||||
app_id: 'YOUR_KEY',
|
||||
app_secret: 'YOUR_APP_SECRET' }
|
||||
app_id: 'BITBUCKET_APP_KEY',
|
||||
app_secret: 'BITBUCKET_APP_SECRET' }
|
||||
```
|
||||
|
||||
1. Change 'YOUR_KEY' to the key from the Bitbucket application page from step 7.
|
||||
1. Change 'YOUR_APP_SECRET' to the secret from the Bitbucket application page from step 7.
|
||||
---
|
||||
|
||||
Where `BITBUCKET_APP_KEY` is the Key and `BITBUCKET_APP_SECRET` the Secret
|
||||
from the Bitbucket application page.
|
||||
|
||||
1. Save the configuration file.
|
||||
1. Restart GitLab for the changes to take effect.
|
||||
1. [Reconfigure][] or [restart GitLab][] for the changes to take effect if you
|
||||
installed GitLab via Omnibus or from source respectively.
|
||||
|
||||
On the sign in page there should now be a Bitbucket icon below the regular sign
|
||||
in form. Click the icon to begin the authentication process. Bitbucket will ask
|
||||
the user to sign in and authorize the GitLab application. If everything goes
|
||||
well the user will be returned to GitLab and will be signed in.
|
||||
well, the user will be returned to GitLab and will be signed in.
|
||||
|
||||
## Bitbucket project import
|
||||
|
||||
|
@ -198,3 +207,5 @@ Special thanks to the writer behind the following article:
|
|||
|
||||
[init-oauth]: omniauth.md#initial-omniauth-configuration
|
||||
[bitbucket-docs]: https://confluence.atlassian.com/bitbucket/use-the-ssh-protocol-with-bitbucket-cloud-221449711.html#UsetheSSHprotocolwithBitbucketCloud-KnownhostorBitbucket%27spublickeyfingerprints
|
||||
[reconfigure]: ../administration/restart_gitlab.md#omnibus-gitlab-reconfigure
|
||||
[restart GitLab]: ../administration/restart_gitlab.md#installations-from-source
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 12 KiB |
Binary file not shown.
After Width: | Height: | Size: 81 KiB |
Loading…
Reference in New Issue