2015-02-19 01:06:49 -05:00
# Integrate your server with GitLab.com
2015-01-27 18:37:19 -05:00
2015-02-19 01:06:49 -05:00
Import projects from GitLab.com and login to your GitLab instance with your GitLab.com account.
2015-01-27 18:37:19 -05:00
2017-02-09 02:38:25 -05:00
To enable the GitLab.com OmniAuth provider you must register your application with GitLab.com.
2015-02-18 16:42:52 -05:00
GitLab.com will generate an application ID and secret key for you to use.
2015-01-27 18:37:19 -05:00
2019-07-11 11:21:26 -04:00
1. Sign in to GitLab.com
2015-02-19 01:06:49 -05:00
2018-06-06 12:43:36 -04:00
1. On the upper right corner, click on your avatar and go to your **Settings** .
2015-01-27 18:37:19 -05:00
2019-07-11 11:21:26 -04:00
1. Select **Applications** in the left menu.
2015-01-27 18:37:19 -05:00
2019-07-11 11:21:26 -04:00
1. Provide the required details for **Add new application** .
- Name: This can be anything. Consider something like `<Organization>'s GitLab` or `<Your Name>'s GitLab` or something else descriptive.
- Redirect URI:
2015-02-13 17:49:19 -05:00
2020-03-25 02:07:58 -04:00
```plaintext
2019-07-11 11:21:26 -04:00
http://your-gitlab.example.com/import/gitlab/callback
http://your-gitlab.example.com/users/auth/gitlab/callback
```
2015-01-27 18:37:19 -05:00
2019-07-11 11:21:26 -04:00
The first link is required for the importer and second for the authorization.
2015-01-27 18:37:19 -05:00
2019-07-11 11:21:26 -04:00
1. Select **Save application** .
2015-01-27 18:37:19 -05:00
2020-05-07 02:09:38 -04:00
1. You should now see an **Application ID** and **Secret** . Keep this page open as you continue
configuration.
2015-02-13 17:49:19 -05:00
2019-07-11 11:21:26 -04:00
1. On your GitLab server, open the configuration file.
2015-01-27 18:37:19 -05:00
2019-08-27 04:41:50 -04:00
For Omnibus package:
2015-02-13 17:49:19 -05:00
2020-01-30 10:09:15 -05:00
```shell
2019-07-11 11:21:26 -04:00
sudo editor /etc/gitlab/gitlab.rb
```
2015-02-13 17:49:19 -05:00
2019-07-11 11:21:26 -04:00
For installations from source:
2015-01-27 18:37:19 -05:00
2020-01-30 10:09:15 -05:00
```shell
2019-07-11 11:21:26 -04:00
cd /home/git/gitlab
2015-02-13 17:49:19 -05:00
2019-07-11 11:21:26 -04:00
sudo -u git -H editor config/gitlab.yml
```
2015-01-27 18:37:19 -05:00
2019-07-11 11:21:26 -04:00
1. See [Initial OmniAuth Configuration ](omniauth.md#initial-omniauth-configuration ) for initial settings.
2015-02-13 17:49:19 -05:00
2019-07-11 11:21:26 -04:00
1. Add the provider configuration:
2015-02-13 17:49:19 -05:00
2019-08-27 04:41:50 -04:00
For Omnibus package:
2015-02-13 17:49:19 -05:00
2019-07-11 11:21:26 -04:00
```ruby
gitlab_rails['omniauth_providers'] = [
{
"name" => "gitlab",
"app_id" => "YOUR_APP_ID",
"app_secret" => "YOUR_APP_SECRET",
"args" => { "scope" => "api" }
}
]
```
2015-01-27 18:37:19 -05:00
2019-07-11 11:21:26 -04:00
For installations from source:
2015-01-27 18:37:19 -05:00
2020-03-25 02:07:58 -04:00
```yaml
2019-07-11 11:21:26 -04:00
- { name: 'gitlab', app_id: 'YOUR_APP_ID',
app_secret: 'YOUR_APP_SECRET',
args: { scope: 'api' } }
```
2015-01-27 18:37:19 -05:00
2019-07-11 11:21:26 -04:00
1. Change 'YOUR_APP_ID' to the Application ID from the GitLab.com application page.
2015-01-27 18:37:19 -05:00
2019-07-11 11:21:26 -04:00
1. Change 'YOUR_APP_SECRET' to the secret from the GitLab.com application page.
2015-01-27 18:37:19 -05:00
2019-07-11 11:21:26 -04:00
1. Save the configuration file.
2015-01-27 18:37:19 -05:00
2020-04-06 08:10:44 -04:00
1. [Reconfigure ](../administration/restart_gitlab.md#omnibus-gitlab-reconfigure ) or [restart GitLab ](../administration/restart_gitlab.md#installations-from-source ) for the changes to take effect if you
2019-07-11 11:21:26 -04:00
installed GitLab via Omnibus or from source respectively.
2015-01-27 18:37:19 -05:00
2017-02-09 02:38:25 -05:00
On the sign in page there should now be a GitLab.com icon below the regular sign in form.
Click the icon to begin the authentication process. GitLab.com will ask the user to sign in and authorize the GitLab application.
2015-03-09 11:20:44 -04:00
If everything goes well the user will be returned to your GitLab instance and will be signed in.