インスタンスを作成してアクセスする
Secure Source Manager インスタンスを作成し、そのウェブ インターフェースにアクセスして、リポジトリの作成とユーザーへのアクセス権の付与の準備をします。
始める前に
-
Google Cloud CLI をインストールします。
-
フェデレーション ID(連携 ID)を使用するように gcloud CLI を構成します。
詳細については、 フェデレーション ID を使用して gcloud CLI にログインするをご覧ください。
-
gcloud CLI を初期化するには、次のコマンドを実行します。
gcloud init -
Google Cloud プロジェクトを作成または選択します。
プロジェクトの選択または作成に必要なロール
- プロジェクトを選択する: プロジェクトを選択する際に、特定の IAM ロールは必要ありません。ロールが付与されているプロジェクトを選択できます。
-
プロジェクトを作成する: プロジェクトを作成するには、
resourcemanager.projects.create権限を含むプロジェクト作成者ロール(roles/resourcemanager.projectCreator)が必要です。詳しくは、ロールを付与する方法をご覧ください。
-
Google Cloud プロジェクトを作成します。
gcloud projects create PROJECT_ID
PROJECT_IDは、作成する Google Cloud プロジェクトの名前に置き換えます。 -
作成した Google Cloud プロジェクトを選択します。
gcloud config set project PROJECT_ID
PROJECT_IDは、 Google Cloud プロジェクト名に置き換えます。
Secure Source Manager API が有効になっていない場合は、有効にします。
API を有効にするために必要なロール
API を有効にするには、
serviceusage.services.enable権限が必要です。プロジェクトを作成した場合は、オーナーロール(roles/owner)を通じてこの権限がすでに付与されている可能性があります。それ以外の場合は、Service Usage 管理者ロール(roles/serviceusage.serviceUsageAdmin)を通じてこの権限を取得できます。ロールを付与する方法を確認する。gcloud services enable securesourcemanager.googleapis.com
必要なロール
Secure Source Manager インスタンスの作成に必要な権限を取得するには、 Google Cloud プロジェクトに対するインスタンス オーナー (roles/securesourcemanager.instanceOwner)IAM ロールの付与を管理者に依頼してください。
Secure Source Manager のロールは、プリンシパルに付与されるまで Google Cloud コンソールに表示されません。Secure Source Manager のロールを初めて付与するには、IAM ロールの付与と取り消しをご覧ください。
インスタンスの作成
次のコマンドを実行して、
us-central1ロケーションにmy-instanceという名前のインスタンスを作成します。gcloud CLI への認証を求められることがあります。gcloud source-manager instances create my-instance \ --region=us-central1ここで
my-instanceはインスタンス名です。us-central1は、インスタンスを作成するリージョンです。
長時間実行のインスタンス作成オペレーションが開始されます。出力は次のようになります。
Create request issued for [my-instance]. done: false metadata: '@type': type.googleapis.com/google.cloud.securesourcemanager.v1.OperationMetadata apiVersion: v1 createTime: '2023-02-27T20:57:52.315609549Z' requestedCancellation: false target: projects/PROJECT_ID/locations/us-central1/instances/my-instance verb: create name: projects/PROJECT_ID/locations/us-central1/operations/operation-1234567894561-5ec69948c0f2b-60dd727f-a9b97a2eインスタンスの作成には最大 60 分かかります。
リクエストに対するレスポンスで受信したオペレーションの完全なリソース名である
OPERATION_NAMEをメモします。次の形式で、次のステップでオペレーションのステータスを確認するときに必要になります。projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
例:
projects/PROJECT_ID/locations/us-central1/operations/operation-1234567894561-5ec69948c0f2b-60dd727f-a9b97a2eここで、PROJECT_IDは Google Cloud プロジェクトです。次のコマンドを実行して、
createオペレーションのステータスを確認します。gcloud source-manager operations describe OPERATION_NAME \ --region=us-central1OPERATION_NAMEは、create コマンドのレスポンスで返されたオペレーション名に置き換えます。インスタンスの準備が完了すると、次のようなレスポンスが返されます。
{ "name": "projects/PROJECT_ID/locations/us-central1/operations/operation-123456789012-5ec69948c0f2b-60dd727f-a9b97a2e", "metadata": { "@type": "type.googleapis.com/google.cloud.securesourcemanager.v1.OperationMetadata", "createTime": "2022-11-01T14:31:32.420469714Z", "endTime": "2022-11-01T14:48:34.140378114Z", "target": "projects/PROJECT_ID/locations/us-central1/instances/my-instance", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.securesourcemanager.v1.Instance", "name": "projects/PROJECT_ID/locations/us-central1/instances/my-instance", "createTime": "2022-11-01T14:31:32.416413630Z", "updateTime": "2022-11-01T14:31:32.416413630Z" }, "state": "ACTIVE", "hostConfig": { "html": "my-instance-098765432109.us-central1.sourcemanager.dev", "api": "my-instance-098765432109-api.us-central1.sourcemanager.dev", "gitHttp": "my-instance-098765432109-git.us-central1.sourcemanager.dev" } } }ここで
my-instance-098765432109.us-central1.sourcemanager.devはインスタンスの HTML URL です。PROJECT_IDはプロジェクト ID です。
正常に作成されたステータス確認コマンドから HTML URL をコピーします。この URL は、ウェブブラウザを使用してインスタンスにアクセスするために必要です。
インスタンスにアクセスする
インスタンスを作成したら、ブラウザを使用してウェブ インターフェースからインスタンスにアクセスできます。
インスタンスの HTML URL を取得するには、次のコマンドをもう一度実行します。
gcloud source-manager operations describe OPERATION_NAME \ --region=us-central1gcloud source-manager operations describeコマンドの正常なレスポンスから HTML URL をコピーして、ブラウザのアドレスバーに貼り付けます。OAuth 2.0 画面が表示され、
sourcemanager.devに Google Cloud アカウントへのアクセスを許可するかどうかを尋ねられます。[許可] ボタンをクリックします。
Secure Source Manager のウェブ インターフェースが開きます。ウェブ インターフェースから、リポジトリと、関連するすべての問題と pull リクエストを作成して表示できます。
クリーンアップ
このページで使用したリソースについて、 Google Cloud アカウントに課金されないようにするには、リソースを含む Google Cloud プロジェクトを削除します。
- Google Cloud コンソールで [リソースの管理] ページに移動します。
- プロジェクト リストで、削除するプロジェクトを選択し、[削除] をクリックします。
- ダイアログでプロジェクト ID を入力し、[シャットダウン] をクリックしてプロジェクトを削除します。