GitHub構成ソース・プロバイダの作成

GitHubからリソース・マネージャに構成ソース・プロバイダを作成します。

開始前

Oracle Cloud Infrastructure Resource ManagerをGitHubに接続するための前提条件を次に示します。

  • プライベートGitサーバー: SSL証明書など、構成ソース・プロバイダで使用するプライベート・エンドポイントを設定するには、ネットワーク情報が必要です。詳細は、プライベートGitサーバーを参照してください。
  • パブリックGitサーバー: このサーバーは、パブリックIPアドレスを使用してインターネット経由でアクセスできる必要があります。
  • 解決可能なURL: リソース・マネージャがサーバーURLを解決できることを確認します。OCIがエンドポイントを信頼できるように、サーバーがDigiCertなどの既知のルート証明書とともにデプロイされていることを確認します。
  • API: GitHubサーバーは、GitHub APIを使用する必要があります。この前提条件を満たさないGitHubサーバーの例は、AzureネイティブのGitHubソリューションです()。
  • IPアドレスのネットワーク構成: OCIIPアドレス範囲からのアクセスを許可するようにネットワークを構成します。Oracle Services Network (タグ: OSN)をはじめとして、関連するすべてのサービスの範囲を含めてください。
  • イングレス・ルール: サーバーがデプロイされているVCNでネットワーク・イングレス・ルールを有効にし、OCI IPアドレスからのアクセスを許可します。
  • リポジトリ権限: リポジトリの管理権限または所有者権限が必要です。
  • 個人アクセス・トークン(PAT): サーバーへのPATが必要です。PATを作成するには、関連するガイダンスとドキュメントを参照してください。
    ノート

    リソース・マネージャは、顧客のリポジトリ・コンテンツを読み取りますが、リポジトリに変更をプッシュしません。

既存の証明書のインポート

プライベートGitHubサーバーにアクセスするには、関連するSSL証明書をOCI証明書サービスで使用可能にします。

証明書サービスの詳細は、「証明書」を参照してください。

証明書が証明書サービスに存在したら、構成ソース・プロバイダを作成するときに、プライベート・エンドポイントとともに証明書を選択できます。

  1. プライベートGitサーバーの証明書情報を取得します。
    1. OpenSSLコマンドライン・アプリケーションをインストールします。

      Linuxの場合は、sudo yum install opensslを実行します。

      MacOSの場合は、brew install opensslを実行します。

      Windowsの場合は、Win32/Win64 OpenSSLからopensslバイナリをダウンロードし、環境を構成します。

    2. 証明書チェーンを取得します。

      次のコマンドを実行し、$SERVERNAMEをサーバーURLに置き換え、$PORTをサーバーのTCPポートに置き換えます。

      openssl s_client -connect $SERVERNAME:$PORT -servername $SERVERNAME -showcerts 2>&1 < /dev/null | sed -n '/-----BEGIN/,/-----END/p' > certChain.pem
    3. サーバー証明書を取得します。

      次のコマンドを実行し、$SERVERNAMEをサーバーURLに置き換え、$PORTをサーバーのTCPポートに置き換えます。

      echo -n | openssl s_client -connect $SERVERNAME:$PORT -servername $SERVERNAME | openssl x509 > $SERVERNAME.pem
    4. 秘密キーを取得します。

      NGINX Gitlabサーバー(/etc/gitlab/gitlab.rb)からの秘密キーのソースの例:

      nginx['ssl_certificate_key'] = <Path_to_PRIVATE_KEY>
  2. 証明書のインポート

    証明書のインポートを参照してください。

    証明書が証明書サービスに存在したら、構成ソース・プロバイダを作成するときに、プライベート・エンドポイントとともに証明書を選択できます。

  • すべての前提条件を完了したら、コンソールの次のステップに従って、GitHubから構成ソース・プロバイダを作成します。
    1. 「構成ソース・プロバイダ」リスト・ページで、「構成ソース・プロバイダの作成」を選択します。リスト・ページまたは構成ソース・プロバイダの検索に関するヘルプが必要な場合は、構成ソース・プロバイダのリストを参照してください。
    2. 「構成ソース・プロバイダの作成」パネルで、構成ソース・プロバイダの名前と説明(オプション)を入力します。機密情報を入力しないでください。
    3. 構成ソース・プロバイダを格納するコンパートメントを選択します。
    4. (オプション)プライベート・エンドポイントを使用するには、次のステップに従います:
      1. 「プライベート・エンドポイント」を選択します。
      2. プライベート・エンドポイントを選択または作成します。別のコンパートメントにあるプライベート・エンドポイントまたは証明書を選択するには、「コンパートメントの変更」を選択します。
      3. SSL証明書の選択
      プライベート・サーバーのプライベート・エンドポイントの詳細は、プライベートGitサーバーを参照してください。
    5. 「タイプ」で、GitHubを選択します。
    6. 次の値を入力します。
      • サーバーURL: サービス・エンドポイント。

        例:

        • GitHubエンタープライズ・クラウド: https://github.com/org-name
        • GitHubエンタープライズ・サーバー: https://hostname/api/v3
        • GitHub組織は無料: https://github.com/org-name
        • GitHubユーザー・アカウントは無料: https://github.com
        • GitHubチーム: https://github.com/team-name
      • 個人アクセス・トークン: 個人アクセス・トークン(PAT)を入力します。
    7. (オプション)タグを追加します:
      1. タグ付けオプションを表示するには、「拡張オプションの表示」を選択します。
      2. 定義済タグを追加するには、ネームスペースとキーを選択し、値を入力します。
      3. フリーフォーム・タグを追加するには、キーと値を入力します。
    8. 「作成」を選択します。
    9. 指定された認証情報を使用してリソース・マネージャがサーバーURLにアクセスできることを確認するには、構成ソース・プロバイダを選択してその詳細ページを開き、「接続の検証」を選択します。
  • oci resource-manager configuration-source-provider create-github-access-token-providerコマンドおよび必須パラメータを使用して、GitHubから構成ソース・プロバイダを作成します。

    oci resource-manager configuration-source-provider create-github-access-token-provider --access-token <personal_access_token> --api-endpoint <GitHub_service_endpoint>

    CLIコマンドのパラメータおよび値の完全なリストは、リソース・マネージャ・コマンドライン・リファレンスを参照してください。

  • CreateConfigurationSourceProvider操作を実行して、GitHubから構成ソース・プロバイダを作成します。

    リクエストのconfigSourceProviderType部分の例については、CreateGithubAccessTokenConfigurationSourceProviderDetailsを参照してください。