サーバーとGitLab.comのインテグレーション

GitLab.comからプロジェクトをインポートし、GitLab.comアカウントでGitLabインスタンスにログインします。

GitLab.comのOmniAuthプロバイダを有効にするには、GitLab.comにアプリケーションを登録する必要があります。GitLab.comがアプリケーションIDとシークレットキーを生成します。

  1. GitLab.comにサインインします。

  2. 右上のアバターをクリックし、「設定」に進んでください。

  3. 左のメニューから「アプリケーション」を選択します。

  4. 新規申請の追加に必要な詳細を入力してください。
    • <Organization>'s GitLab<Your Name>'s GitLab など、わかりやすい名前を考えてください。
    • リダイレクト URI:
    http://your-gitlab.example.com/import/gitlab/callback
    http://your-gitlab.example.com/users/auth/gitlab/callback
    

    最初のリンクはインポートに、2番目のリンクは作成者に必要です。

  5. Saveapplicationを選択します。

  6. アプリケーションIDとシークレットが表示されます。 このページを開いたまま設定を続けてください。

  7. GitLab サーバーで設定ファイルを開きます。

    オムニバス・パッケージ用:

    sudo editor /etc/gitlab/gitlab.rb
    

    ソースからのインストールの場合:

    cd /home/git/gitlab
    
    sudo -u git -H editor config/gitlab.yml
    
  8. 初期設定についてはOmniAuth の初期設定を参照してください。

  9. プロバイダの設定を追加します:

    オムニバス・パッケージ用:

    gitlab_rails['omniauth_providers'] = [
      {
        "name" => "gitlab",
        "app_id" => "YOUR_APP_ID",
        "app_secret" => "YOUR_APP_SECRET",
        "args" => { "scope" => "api" }
      }
    ]
    

    ソースからのインストールの場合:

    - { name: 'gitlab', app_id: 'YOUR_APP_ID',
      app_secret: 'YOUR_APP_SECRET',
      args: { scope: 'api' } }
    
  10. YOUR_APP_ID’ を GitLab.com アプリケーションページのアプリケーション ID に変更します。

  11. YOUR_APP_SECRET’ を GitLab.com アプリケーションページのシークレットに変更します。

  12. 設定ファイルを保存します。

  13. Omnibus経由またはソースからそれぞれGitLabをインストールした場合は、変更を有効にするためにGitLabを再設定または再起動します。

サインインページでは、通常のサインインフォームの下にGitLab.comのアイコンが表示されているはずです。 アイコンをクリックすると、認証プロセスが始まります。 GitLab.comはユーザーにサインインとGitLabアプリケーションの作成を求めます。 すべてがうまくいけば、ユーザーはGitLabインスタンスに戻り、サインインされます。