お使いのGitLabサーバーをBitbucket Cloudと統合する
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab Self-Managed
Bitbucket.orgをOAuth 2.0プロバイダーとして設定し、Bitbucket.orgの認証情報を使用してGitLabにサインインできます。Bitbucket.orgからプロジェクトをインポートすることもできます。
- Bitbucket.orgをOmniAuthプロバイダーとして使用するには、Bitbucket OmniAuthプロバイダーセクションに従ってください。
- Bitbucketからプロジェクトをインポートするには、Bitbucket OmniAuthプロバイダーとBitbucket project importの両方のセクションに従ってください。
BitbucketをOAuth 2.0認証プロバイダーとして使用する
Bitbucket OmniAuthプロバイダーを有効にするには、アプリケーションをBitbucket.orgに登録する必要があります。Bitbucketが、使用するアプリケーションIDとシークレットキーを生成します。
Bitbucket.orgにサインインします。
アプリケーションを登録する方法に応じて、個人のユーザー設定(Bitbucket settings)またはチームの設定(Manage team)に移動します。アプリケーションを個人として登録するかチームとして登録するかは、完全にあなた次第です。
左メニューのAccess Managementで、OAuthを選択します。
Add consumerを選択します。
必要な詳細を入力します:
Name: これは任意のものです。
<Organization>'s GitLabや<Your Name>'s GitLabのような、説明的なものを検討してください。Application description: (オプション)必要に応じて入力してください。
コールバックURL: (GitLabバージョン8.15以降で必須)
https://gitlab.example.com/users/authのような、GitLabインストールのURL。このフィールドを空のままにすると、Invalid redirect_uriメッセージが表示されます。OAuth 2 covert redirect攻撃を防ぐため、Bitbucket認可コールバックURLの末尾に
/users/authを追加してください。Bitbucketで認証する、およびBitbucketリポジトリからデータをインポートするには、この認可エンドポイントを含める必要があります。URL:
https://gitlab.example.comのような、GitLabインストールのURL。
以下の権限を付与します:
- アカウント:
Email,Read - プロジェクト:
Read - リポジトリ:
Read - Pull Requests:
Read - イシュー:
Read - Wikis:
Read and write
- アカウント:
Saveを選択します。
新しく作成したOAuthコンシューマーを選択すると、キーとシークレットがOAuthコンシューマーのリストに表示されます。設定を続行する間、このページを開いたままにしてください。
GitLabサーバーで、設定ファイルを開きます:
# For Omnibus packages sudo editor /etc/gitlab/gitlab.rb # For installations from source sudo -u git -H editor /home/git/gitlab/config/gitlab.ymlBitbucketプロバイダーの設定を追加します:
Linuxパッケージインストールの場合:
gitlab_rails['omniauth_providers'] = [ { name: "bitbucket", # label: "Provider name", # optional label for login button, defaults to "Bitbucket" app_id: "<bitbucket_app_key>", app_secret: "<bitbucket_app_secret>", url: "https://bitbucket.org/" } ]セルフコンパイルインストールの場合:
omniauth: enabled: true providers: - { name: 'bitbucket', # label: 'Provider name', # optional label for login button, defaults to "Bitbucket" app_id: '<bitbucket_app_key>', app_secret: '<bitbucket_app_secret>', url: 'https://bitbucket.org/' }<bitbucket_app_key>はキー、<bitbucket_app_secret>はシークレットです(Bitbucketアプリケーションページから)。設定ファイルを保存します。
変更を有効にするには、Linuxパッケージを使用してインストールした場合はGitLabを再設定 、自己コンパイルでインストールした場合は再起動します。
サインインページに、通常のサインインフォームの下にBitbucketアイコンが表示されます。そのアイコンを選択すると、認証プロセスが開始されます。Bitbucketは、ユーザーにサインインしてGitLabアプリケーションを認可するよう求めます。成功すると、ユーザーはGitLabに戻り、サインインします。
マルチノードアーキテクチャの場合、プロジェクトをインポートできるように、Bitbucketプロバイダーの設定をSidekiqノードにも含める必要があります。
Bitbucketプロジェクトインポート
以前の設定が完了したら、Bitbucketを使用してGitLabにサインインし、プロジェクトのインポートを開始できます。
Bitbucketからプロジェクトをインポートしたいが、サインインを有効にしたくない場合は、サインインを無効にするには、管理者エリアでできます。