構成ソース・プロバイダの管理

このトピックでは、リモートTerraform構成の構成ソース・プロバイダを作成、編集および削除する方法について説明します。

GitHubおよびGitLabへの接続の前提条件

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

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

    注意:

    リソース・マネージャは顧客のリポジトリ・コンテンツを読み取りますが、リポジトリに変更をプッシュしません。
  • タスクに必要なリソース・マネージャ権限が必要です:
    • 構成ソース・プロバイダを作成するには、manage orm-config-source-providersが必要です。
    • 既存の構成ソース・プロバイダを使用してスタックを作成するには、manage orm-stacksおよびread orm-config-source-providersが必要です。

      詳細は、IAMポリシーを参照してください。

トラブルシューティング情報は、GitHubおよびGitLabの接続の問題を参照してください。

必要なIAMポリシー

構成ソース・プロバイダを管理するには、管理者が作成するポリシーで、コンソール、またはSDK、CLIまたはその他のツールを使用したREST APIのどちらを使用しているかにかかわらず、必要なアクセスのタイプを付与する必要があります。 アクションを実行しようとしたときに、権限がない、または認可されていないというメッセージが表示された場合は、管理者に付与されているアクセスのタイプと作業するコンパートメントを確認してください。

重要

Oracle Cloud Infrastructureリソースを管理するためのポリシーは、リソースにアクセスするリソース・マネージャ操作にも必要です。たとえば、コンピュート・インスタンスおよびサブネットを含むスタック上で適用ジョブを実行するには、リソースをプロビジョニングするコンパートメント内で、これらのリソース・タイプに対する権限を付与するポリシーを必要とします。Oracle Cloud Infrastructureリソースを管理するためのポリシーの例は、共通ポリシーを参照してください。

ポリシーを初めて使用する場合は、ポリシーの開始共通ポリシーを参照してください。

管理者:グループにリソース・マネージャ・リソースへのアクセス権を付与する共通ポリシーについては、構成ソース・プロバイダの管理(リソース・マネージャの保護)を参照してください。

コンソールの使用

構成ソース・プロバイダを作成するには
重要GitHubまたはGitLabにアクセス

するには、個人アクセス・トークンを使用する必要があります。GitHubおよびGitLabへの接続の前提条件を参照してください。
  1. ナビゲーション・メニューを開き、「開発者サービス」をクリックします。「リソース・マネージャ」で、「構成ソース・プロバイダ」をクリックします。

  2. 作業権限を持つコンパートメントを(ページの左側で)選択します。ページが更新されて、そのコンパートメントのリソースのみが表示されます。使用するコンパートメントが不明な場合は、管理者に問い合せてください。

  3. 「構成ソース・プロバイダの作成」をクリックします。
  4. 「構成ソース・プロバイダの作成」パネルで、次のようにします:
    • 構成ソース・プロバイダの名前を入力します。機密情報の入力は避けてください。
    • 説明」に入力します。
    • 構成ソース・プロバイダを作成するコンパートメントを選択します。
    • 必要な構成ソース・プロバイダの「タイプ」を選択します。次のオプションから選択します。

    • サーバーURLをペーストします。

      URLの例:

      製品 URLの例
      GitHub Enterprise Cloud https://github.com/org-name
      GitHub Enterprise Server https://hostname/api/v3
      組織のGitHub無料 https://github.com/org-name
      ユーザー・アカウント用のGitHub無料 https://github.com
      GitHubチーム https://github.com/team-name
      GitLab.com製品 https://gitlab.com/
      GitLabのインストール(相対URL) https://example.com/gitlab
      GitLabのインストール(サブドメイン) https://gitlab.example.com/
    • 個人アクセス・トークンを貼り付けます。
    • 新しい構成ソース・プロバイダにタグを付けるには、「拡張オプションの表示」をクリックし、タグを追加します。
  5. 作成」をクリックします。

    ノート指定された個人アクセス・トークン(PAT)を使用してリソース・マネージャがサーバーURLにアクセスできる

    ことを確認するには、構成ソース・プロバイダの詳細ページで「接続の検証」をクリックします。ステップは、「構成ソース・プロバイダのアクセシビリティを確認するには」を参照してください
構成ソース・プロバイダのアクセシビリティを確認するには
  1. ナビゲーション・メニューを開き、「開発者サービス」をクリックします。「リソース・マネージャ」で、「構成ソース・プロバイダ」をクリックします。

  2. 作業権限を持つコンパートメントを(ページの左側で)選択します。ページが更新されて、そのコンパートメントのリソースのみが表示されます。使用するコンパートメントが不明な場合は、管理者に問い合せてください。

  3. 目的の構成ソース・プロバイダの名前をクリックします。

  4. 「構成ソース・プロバイダ情報」ページで、「接続の検証」をクリックします。

    このオプションは、「構成ソース・プロバイダ情報」タブの「サーバーURL」の右側にあります。

    指定された個人アクセス・トークン(PAT)を使用してリソース・マネージャがサーバーURLにアクセスできるかどうかを示すメッセージが表示されます。

    トラブルシューティング情報は、GitHubおよびGitLabの接続の問題を参照してください。

構成ソース・プロバイダを編集するには
ノート指定された個人アクセス・トークン(PAT)を使用してリソース・マネージャがサーバーURLにアクセスできる

ことを確認するには、構成ソース・プロバイダの詳細ページで「接続の検証」をクリックします。ステップは、「構成ソース・プロバイダのアクセシビリティを確認するには」を参照してください
  1. ナビゲーション・メニューを開き、「開発者サービス」をクリックします。「リソース・マネージャ」で、「構成ソース・プロバイダ」をクリックします。

  2. 作業権限を持つコンパートメントを(ページの左側で)選択します。ページが更新されて、そのコンパートメントのリソースのみが表示されます。使用するコンパートメントが不明な場合は、管理者に問い合せてください。

  3. 編集する構成ソース・プロバイダの名前をクリックします。
  4. 「編集」をクリックします。
  5. 「構成ソース・プロバイダの編集」ダイアログ・ボックスで、必要に応じてプロパティ値を更新します。

  6. 「変更の保存」をクリックします。
構成ソース・プロバイダを削除するには
ノート

構成ソース・プロバイダは、スタックに関連付けられていると削除できません。スタックの関連付けを解除するには、スタックを編集します。
  1. ナビゲーション・メニューを開き、「開発者サービス」をクリックします。「リソース・マネージャ」で、「構成ソース・プロバイダ」をクリックします。

  2. 作業権限を持つコンパートメントを(ページの左側で)選択します。ページが更新されて、そのコンパートメントのリソースのみが表示されます。使用するコンパートメントが不明な場合は、管理者に問い合せてください。

  3. 削除する構成ソース・プロバイダの名前をクリックします。
  4. 「削除」をクリックし、アクションを確認します。

CLIの使用

この項では、スタックおよびジョブを管理するための基本的なCLIコマンドのサンプルを提供します。CLIの使用の詳細は、コマンド・ライン・インタフェース(CLI)を参照してください。CLIコマンドで使用できるフラグおよびオプションの完全なリストについては、CLIのヘルプを参照してください。

CI/CDパイプラインでのクラウド・プロビジョニングにCLIを使用する手順は、「クラウドでのIaCの使用: CI/CDパイプラインへのTerraformおよびリソース・マネージャの統合- OCI CLIを使用した構築」を参照してください。

構成ソース・プロバイダを作成するには
重要GitHubまたはGitLabにアクセス

するには、個人アクセス・トークンを使用する必要があります。GitHubおよびGitLabへの接続の前提条件を参照してください。
必要なプロバイダ・タイプのオプションを選択します。
  • GitHub:

    コマンド・プロンプトを開き、resource-manager configuration-source-provider create-github-access-token-providerを実行してGitHub構成ソース・プロバイダを作成します: 

    oci resource-manager stack create-github-access-token-provider --api-endpoint <github_url> --access-token <personal_access_token> --compartment-id <compartment_OCID> --display-name "<friendly_name>" --description "<description>"

    例: 

    oci resource-manager stack create-github-access-token-provider --api-endpoint https://api.github.com/ --access-token token --compartment-id ocid1.tenancy.oc1..uniqueid --display-name "My Configuration Source Provider" --description "Department 80"
  • GitLab:

    コマンド・プロンプトを開き、resource-manager configuration-source-provider create-gitlab-access-token-providerを実行して、GitLab構成ソース・プロバイダを作成します: 

    oci resource-manager stack create-gitlab-access-token-provider --api-endpoint <gitlab_url> --access-token <personal_access_token> --compartment-id <compartment_OCID> --display-name "<friendly_name>" --description "<description>"

    例: 

    oci resource-manager stack create-gitlab-access-token-provider --api-endpoint https://gitlab.com/api/v3/ --access-token token --compartment-id ocid1.tenancy.oc1..uniqueid --display-name "My Configuration Source Provider" --description "Department 80"

CLIコマンドで使用できるフラグおよびオプションの完全なリストについては、CLIのヘルプを参照してください。

構成ソース・プロバイダを更新するには
必要なプロバイダ・タイプのオプションを選択します。
  • GitHub:

    コマンド・プロンプトを開き、resource-manager configuration-source-provider update-github-access-token-providerを実行して、指定した構成ソース・プロバイダを編集します: 

    oci resource-manager stack update-github-access-token-provider --configuration-source-provider-id <configuration_source_provider_OCID> --api-endpoint <github_url> --access-token <personal_access_token> --display-name "<friendly_name>" --description "<description>"

    例: 

    oci resource-manager stack update-github-access-token-provider --configuration-source-provider-id ocid.ormconfigsourceprovider.oc1..uniqueid --description "Department 99"
  • GitLab:

    コマンド・プロンプトを開き、resource-manager configuration-source-provider update-gitlab-access-token-providerを実行して、指定した構成ソース・プロバイダを編集します: 

    oci resource-manager stack update-gitlab-access-token-provider --configuration-source-provider-id <configuration_source_provider_OCID> --api-endpoint <gitlab_url> --access-token <personal_access_token> --display-name "<friendly_name>" --description "<description>"

    例: 

    oci resource-manager stack update-gitlab-access-token-provider --configuration-source-provider-id ocid.ormconfigsourceprovider.oc1..uniqueid --description "Department 99"

CLIコマンドで使用できるフラグおよびオプションの完全なリストについては、CLIのヘルプを参照してください。

構成ソース・プロバイダを削除するには
ノート

構成ソース・プロバイダは、スタックに関連付けられていると削除できません。スタックの関連付けを解除するには、スタックを編集します。

コマンド・プロンプトを開き、resource-manager configuration-source-provider deleteを実行して、指定した構成ソース・プロバイダを削除します: 

oci resource-manager configuration-source-provider delete --config-source-configuration-source-provider-id <configuration_source_provider_OCID>

CLIコマンドで使用できるフラグおよびオプションの完全なリストについては、CLIのヘルプを参照してください。

APIの使用

APIの使用およびリクエストの署名の詳細は、REST APIおよびセキュリティ資格証明を参照してください。SDKの詳細は、ソフトウェア開発キットとコマンドライン・インタフェースを参照してください。

次のAPI操作を使用して、構成ソース・プロバイダを管理します: