Skip to main content

GitHub アプリの統合

概要

Bitrise GitHub アプリを使用すると、ユーザーは Bitrise ワークスペースを GitHub アカウントまたは組織に接続でき、セキュリティが強化され、ステータスが自動更新されるきめ細かいアクセスが提供されます。

Supported for GitHub Cloud users

Bitrise GitHub アプリは、すべての GitHub Cloud ユーザーにサポートされています。 GitHub エンタープライズ サーバー ユーザーは、関連ガイドの説明に従って、別の GitHub アプリを作成してインストールする必要があります。

BitriseアカウントをGitHubリポジトリに接続する最良の方法は、 GitHubアプリBitrise GitHub アプリには、統合を容易にするさまざまな機能があります。

  • このアプリでは、SSH キー、個人アクセス トークン、サービス認証ユーザーは必要ありません。アクセスのために、ビルドの前に一時的なアクセス トークンが生成され、セキュリティが大幅に向上します。

  • リポジトリへのきめ細かなアクセスを提供します。GitHub 組織全体へのアクセスを許可する必要はなく、アプリがアクセスできる特定のリポジトリを選択するだけです。

  • アプリをインストールすると、GitHub Checks アプリを使用して、Bitrise ステータスの更新を GitHub で直接自動的に受信できます。ステータス レポートを個別に設定する必要はありません。Bitrise Workspace に接続できるのは 1 つの GitHub アカウントのみですが、GitHub Checks は他の GitHub アカウントが所有するリポジトリに対しても設定できます。

GitHub App統合を介して接続する

このガイドは、Bitrise GitHub App をインストールし、アプリを使用して Bitrise Workspace を GitHub アカウントまたは組織に接続したい GitHub Cloud ユーザー (GitHub Enterprise Cloud ユーザーを含む) を対象としています。GitHub Enterprise Server ユーザー向けには、別のガイドがあります。 Integrating self-hosted GitHub Enterprise Server with Bitrise

GitHub App 統合を介して接続するには、次の 2 つの方法があります。

  • から ワークスペース設定 ページ。

  • 新しい Bitrise プロジェクトを追加するとき。

ワークスペースごとに 1 つの GitHub アプリをインストール

ワークスペースに接続できるのは 1 つの GitHub アカウントのみであるため、ワークスペースは常に Bitrise GitHub アプリの 1 つのインストールに関連付けられます。ワークスペースを複数の Bitrise GitHub アプリのインストールに接続することはできません。

ただし、アプリの GitHub Checks 機能は、他の GitHub アカウントが所有するリポジトリでも利用できます。

ワークスペース設定ページからGitHubアプリを接続する

Bitrise GitHub Appのインストールはワークスペースに紐付けられています。いつでもインストールして接続を確認することができます。 ワークスペース設定 ページ。

  1. Bitrise のメインページで、ドロップダウン メニューからワークスペースを選択します。

  2. 左側のナビゲーションメニューから、 設定

  3. 上の ワークスペース設定 ページ、選択 統合

  4. 選択してください Git プロバイダー タブ。

  5. GitHubGitHub Appカードが表示されます。 Bitrise GitHubアプリ経由で接続。 クリック 接続する

    github-app-card.png
  6. これまでに Bitrise GitHub アプリを承認したことがない場合は、この時点で承認を求められます。

    authorize-checks.png
  7. 接続する GitHub アカウントまたは組織を選択するように求められます。リストに必要なものが見つからない場合は、まずそのアカウントまたは組織にアプリをインストールする必要があります。アカウント リストの下のリンクをクリックしてください。

    install-the-app.png
  8. リンクをクリックすると、アカウントまたは組織を選択するよう求められます。選択すると、 インストールと認証 ページ。

  9. 上の インストールと認証 ページで、アクセスタイプを選択します。

    • すべてのリポジトリ: Bitrise GitHub アプリは、将来のものも含め、アカウントまたは組織に属するすべてのリポジトリにアクセスできるようになります。

    • 選択したリポジトリのみ: Bitrise がアクセスできるリポジトリを 1 つ以上選択します。後でさらに追加することもできますが、そのためには GitHub アプリのページでリポジトリ アクセスを再設定する必要があります。

    authorizing-app.png
  10. 完了したらクリック インストールと認証にリダイレクトされます ワークスペース設定 ページ。

    承認

    GitHub でアプリをインストールする権限がない場合でも、インストールをリクエストできます。GitHub 管理者がインストールを承認したら、戻ってリストからアプリのインストールを選択できます。

  11. OAuth接続を備えた既存のアプリがある場合は、 GitHub App接続に切り替える

新しいプロジェクトを追加するときに GitHub アプリを接続する

の過程で 新しいプロジェクトを追加する Bitrise では、Bitrise がリポジトリにアクセスする方法を選択する必要があります。このプロセスにより、GitHub アプリ経由でプロジェクトに接続できるようになります。

  1. プロセスを開始する 新しいプロジェクトを追加する新しいアプリを追加する

  2. リポジトリを選択 セクション、選択 GitHub アプリ (推奨) から プロバイダー ドロップダウンメニュー。

    select-repository.png
  3. クリック アカウントを接続

    connect-github-app.png
  4. 接続する GitHub アカウントまたは組織を選択するように求められます。リストに必要なものが見つからない場合は、まずそのアカウントまたは組織にアプリをインストールする必要があります。アカウント リストの下のリンクをクリックしてください。

    install-the-app.png
  5. リンクをクリックすると、アカウントまたは組織を選択するよう求められます。選択すると、 インストールと認証 ページ。

  6. 上の インストールと認証 ページで、アクセスタイプを選択します。

    • すべてのリポジトリ: Bitrise GitHub アプリは、将来のものも含め、アカウントまたは組織に属するすべてのリポジトリにアクセスできるようになります。

    • 選択したリポジトリのみ: Bitrise がアクセスできるリポジトリを 1 つ以上選択します。後でさらに追加することもできますが、そのためには GitHub アプリのページでリポジトリ アクセスを再設定する必要があります。

    authorizing-app.png
  7. 完了したらクリック インストールと認証新しい Bitrise プロジェクトの追加を続行するためにリダイレクトされます。

GitHub アプリ経由でリンクされた追加のリポジトリ

各 Bitrise アプリにはプライマリ Git リポジトリがあります。これはアプリのコードが保存される場所であり、ビルドを開始するとこのリポジトリがクローンされます。デフォルトでは、Bitrise アプリは他のリポジトリにアクセスできません。

ただし、プロジェクトには他のリポジトリが必要になる場合があります。たとえば、ビルド中にアクセスする必要があるプライベート サブモジュールがある場合があります。GitHub アプリを使用する場合は、追加のリポジトリをリンクすることでこれを実現できます。

その他の接続方法

Bitrise GitHub アプリを使用していない場合でも、追加のリポジトリへのアクセスを設定できます。 サブモジュールまたはプライベートリポジトリの依存関係を持つプロジェクト

リンクされたリポジトリは、Bitrise アプリが GitHub App インストールを使用してアクセスできるリポジトリですが、アプリのプライマリ リポジトリではありません。

GitHub App インストールを介して接続されたアプリのビルドを実行すると、Bitrise は、デフォルトではプライマリリポジトリにのみアクセスできる一時トークンを生成します。追加のリポジトリがリンクされると、ビルド用に生成されたトークンは追加のリポジトリにアクセスできるようになります。

リポジトリをリンクするには、次の条件をすべて満たす必要があります。

  • GitHub アプリは、GitHub 上のリポジトリを所有するアカウントまたは組織にインストールされます。

  • リポジトリに対してアプリのインストールが有効になっています。

  • リポジトリをリンクしようとしているユーザーは、GitHub 上のリポジトリにアクセスできます。GitHub ユーザー アカウントにリポジトリへのアクセス権がない場合は、Bitrise にリンクできません。

    GitHub Enterprise Server

    If you use a GitHub App to connect to a GitHub Enterprise Server instance, the app doesn't check user access. You can link any repository that your GitHub App has access to.

追加のリポジトリへのリンク

GitHub App 接続が確立されたアプリに追加のリポジトリをリンクするには:

  1. Bitriseでアプリを開くには、 管理者 アプリチームでの役割

  2. に移動します 設定 タブ。

    project-settings-button.png
  3. 左側で、 統合 そして、 統合 ページで、 Git プロバイダー タブ。

  4. を見つける Git 統合ステータス カードをクリックして 追加のリポジトリ

  5. の中に 追加のリポジトリを有効にする ダイアログで、リンクするリポジトリを選択します。

    最大 50 個の追加リポジトリをリンクできます。

    Linked_repositories.png

    リポジトリのリストが表示されます。リストにリポジトリを表示するには、次の 2 つが必要です。

    • GitHub ユーザーはこれにアクセスできる必要があります。

    • GitHub App インストールではこれにアクセスできます。

    リポジトリの無効化

    すでにリポジトリがリンクされている場合、それらのリポジトリへのアクセス権を持たないユーザーはリポジトリを無効にすることはできますが、再度追加することはできないことに注意してください。

  6. 完了したらクリック 変更内容を保存

GitHub アプリ経由でプライベート Step ライブラリを使用する

各 Bitrise プロジェクトには、デフォルトのステップ ライブラリ (ステップのリポジトリ) があります。設定でステップの正確なソースが指定されていない場合、Bitrise CLI はデフォルトのライブラリからステップ データを取得します。

このライブラリはプライベートなステップライブラリにすることができます。GitHubアプリ経由でこのようなライブラリにアクセスするには、 netrcでホストを認証する ワークフローで実行される最初のステップとして次のステップを指定します。

format_version: "13"
default_step_lib_source: https://github.com/my-private-org/my-bitrise-steplib.git
project_type: ios
workflows:
  example:
    steps:
    - https://github.com/bitrise-io/bitrise-steplib.git::authenticate-host-with-netrc@0:

注意: netrcでホストを認証するステップは 完全なソース識別子 プライベートライブラリではなく、公式の Bitrise Step ライブラリから取得されるようにするためです。

ステップを使用するには、ホスト、Gitユーザー名、Gitパスワードの3つの入力を指定する必要があります。Bitrise GitHub App統合ではトークンベースの認証を使用します。各ビルドは、 GIT_HTTP_PASSWORD 環境変数。この Env Var はパスワードとして使用できます。ユーザー名は空にできません。ステップは失敗しますが、使用されないため、何を入力しても問題ありません。

format_version: '13'
default_step_lib_source: https://github.com/tothszabi/steplib.git
project_type: ios
workflows:
  example:
    steps:
    - https://github.com/bitrise-io/bitrise-steplib.git::authenticate-host-with-netrc@0:
        inputs:
        - host: github.com
        - username: username
        - password: "$GIT_HTTP_PASSWORD"
    - private-script@1: {}

リンクされたリポジトリでgit cloneを実行する

実行しようとすると git clone または他のgitコマンド リンクされたリポジトリ認証エラーが発生してビルドが失敗する可能性があります。これは認証情報がローカルに保存されているためです。 netrc ファイルです。このファイルは公式の Git クローン ステップ。

ただし、独自のスクリプトを使用して git clone、または認証を必要とするその他のGitコマンドを使用する場合 Git クローン ステップでは、 netrc ファイル。2 つの方法があります。

  • 手動で行うこともできます。

  • あなたは netrcでホストを認証する ステップ。これはワークフローの最初のステップである必要があります。

HTTP URL

プライベート リポジトリの依存関係をクローンするときは、必ず HTTP URL を使用してください。

ステップを使用するには、ホスト、Gitユーザー名、Gitパスワードの3つの入力を指定する必要があります。Bitrise GitHub App統合ではトークンベースの認証を使用します。各ビルドは、 GIT_HTTP_PASSWORD 環境変数。この Env Var はパスワードとして使用できます。ユーザー名は空にできません。ステップは失敗しますが、使用されないため、何を入力しても問題ありません。

workflows:
  example:
    steps:
    - authenticate-host-with-netrc@0:
        inputs:
        - host: github.com
        - username: "username"
        - password: "$GIT_HTTP_PASSWORD"

OAuth 接続から GitHub アプリへの切り替え

Bitrise プロジェクトに GitHub アカウントへの OAuth 接続が設定されている場合は、機能を失うことなくいつでも Bitrise GitHub アプリに変更できます。切り替えを強くお勧めします。Bitrise GitHub アプリがインストールされると、Bitrise ビルドを実行するためにサービス認証ユーザー、SSH キー、または Webhook は不要になります。

元に戻すことはできません

Bitrise プロジェクトを OAuth 接続から GitHub アプリに切り替えると、元に戻すことはできません。

切り替えるには:

  1. 関連ガイドの説明に従って、Bitrise GitHub アプリをインストールします。 ワークスペース設定ページからGitHubアプリを接続する

  2. Bitriseでアプリを開くには、 管理者 アプリチームでの役割

  3. に移動します 設定 タブ。

    project-settings-button.png
  4. 左側のナビゲーションメニューで、 統合 そして、 Git プロバイダー タブ。

  5. の中に Git 統合ステータス セクションでは、GitHub Appのサポートに関する情報が記載された青いカードが表示されます。切り替えるには、 GitHub アプリに切り替える

    https-credentials.png