Membuat dan mengelola Folder

Folder adalah node dalam Hierarki Resource Cloud Platform. Folder dapat berisi beberapa project, folder lain, atau kombinasi keduanya. Resource organisasi dapat menggunakan folder untuk mengelompokkan project di bawah node resource organisasi dalam hierarki. Misalnya, resource organisasi Anda mungkin berisi beberapa departemen, yang masing-masing memiliki kumpulan resource Google Cloud-nya sendiri. Folder memungkinkan Anda mengelompokkan resource ini berdasarkan per departemen. Folder digunakan untuk mengelompokkan resource yang memiliki kebijakan IAM yang sama. Meskipun folder dapat berisi beberapa folder atau resource, folder atau resource tertentu dapat memiliki tepat satu induk.

Pada diagram di bawah, resource organisasi, "Perusahaan", memiliki folder yang mewakili dua departemen, "Dept X" dan "Dept Y", serta folder, "Infrastruktur Bersama", untuk item yang mungkin sama untuk kedua departemen. Di bagian "Dept Y", mereka telah mengaturnya menjadi dua tim, dan dalam folder tim, mereka mengaturnya lebih lanjut berdasarkan produk. Folder untuk "Produk 1" selanjutnya berisi tiga project, masing-masing dengan resource yang diperlukan untuk project tersebut. Hal ini memberi mereka tingkat fleksibilitas yang tinggi dalam menetapkan kebijakan IAM dan kebijakan Organisasi pada tingkat perincian yang tepat.

Contoh hierarki folder

Anda dapat menggunakan kebijakan IAM tingkat folder untuk mengontrol akses ke resource yang berisi folder. Misalnya, jika pengguna diberi peran Compute Instance Admin di folder, pengguna tersebut memiliki peran Compute Instance Admin untuk semua project dalam folder.

Sebelum memulai

Fungsi folder hanya tersedia untuk pelanggan Google Workspace dan Cloud Identity yang memiliki resource organisasi. Untuk informasi selengkapnya tentang cara memperoleh resource organisasi, lihat Membuat dan mengelola organisasi.

Jika Anda ingin mempelajari cara terbaik menggunakan folder, sebaiknya:

  1. Tinjau Kontrol Akses untuk Folder yang Menggunakan IAM. Topik ini menjelaskan cara mengontrol siapa yang memiliki akses ke folder dan resource yang dikandungnya.
  2. Pahami cara menetapkan izin folder. Folder mendukung sejumlah peran IAM yang berbeda. Jika Anda ingin menyiapkan izin secara luas agar pengguna dapat melihat struktur project mereka, berikan peran Organization Viewer dan Folder Viewer ke seluruh domain di tingkat resource organisasi. Untuk membatasi visibilitas ke cabang hierarki folder, berikan peran Folder Viewer pada folder atau folder yang ingin Anda tampilkan kepada pengguna.
  3. Buat folder. Saat merencanakan cara mengatur resource Cloud, sebaiknya mulai dengan satu folder sebagai sandbox tempat Anda dapat bereksperimen dengan hierarki yang paling sesuai untuk resource organisasi. Pikirkan folder dalam hal batas isolasi antara resource dan titik lampiran untuk kebijakan akses dan konfigurasi. Anda dapat memilih untuk membuat folder yang berisi resource milik berbagai departemen dan menetapkan peran Admin di folder untuk mendelegasikan hak istimewa administrator. Folder juga dapat digunakan untuk mengelompokkan resource yang termasuk dalam aplikasi atau lingkungan yang berbeda, seperti pengembangan, produksi, pengujian. Gunakan folder bertingkat untuk membuat model berbagai skenario ini.

Situasi yang umum adalah membuat folder yang pada akhirnya berisi folder atau project tambahan, seperti yang ditunjukkan pada gambar di atas. Struktur ini disebut sebagai hierarki folder. Saat membuat hierarki folder, perhatikan hal-hal berikut:

  • Anda dapat membuat folder bertingkat hingga 10 (sepuluh) tingkat.
  • Folder induk tidak boleh berisi lebih dari 300 folder. Hal ini hanya mengacu pada folder turunan langsung. Folder turunan tersebut, pada gilirannya, dapat berisi folder atau project tambahan.
  • Nama tampilan folder harus unik dalam tingkat hierarki yang sama.

Menyiapkan izin untuk mengelola folder

Untuk mengakses dan mengelola folder, Anda menetapkan peran IAM khusus folder kepada grup pengguna tertentu. Untuk mempelajari peran ini lebih lanjut, lihat Kontrol Akses untuk Folder yang menggunakan IAM. Sebaiknya Anda juga meninjau praktik terbaik kami untuk membantu mengidentifikasi konfigurasi yang optimal untuk izin folder Anda.

Untuk mengelola folder untuk seluruh resource organisasi, Anda memerlukan peran Folder Admin. Peran ini memberi pengguna izin untuk membuat, mengedit, menghapus, memindahkan, dan mengubah izin IAM di folder, serta izin untuk memindahkan project antar-folder.

Awalnya, hanya Admin Organisasi yang dapat menetapkan peran Admin Folder untuk resource organisasi. Akun berikutnya yang diberi peran ini dapat memberikannya ke akun lain.

Untuk menyiapkan izin folder, ikuti langkah-langkah berikut:

console

  1. Di konsol Google Cloud, buka halaman Manage resources.

    Buka Kelola resource

  2. Jika panel info tidak terbuka, klik Tampilkan panel info.
  3. Di tabel Resources, luaskan Organisasi yang berisi folder.
  4. Dari daftar resource di bagian Organisasi, pilih folder yang ingin Anda kelola.
  5. Di panel info, klik Tambah akun utama.
  6. Di kolom Add principals, masukkan alamat email yang ingin Anda beri izin.
  7. Di menu Pilih peran, pilih kategori Resource Manager, lalu pilih peran yang ingin Anda berikan, seperti Folder Admin.
  8. Klik Simpan untuk memberikan peran baru.

gcloud

Untuk memberikan peran Admin Folder kepada akun utama menggunakan Google Cloud CLI, jalankan perintah berikut:

    gcloud organizations add-iam-policy-binding ORGANIZATION_ID \
    --member=user:USER_ID \
    --role=roles/resourcemanager.folderAdmin

API

JSON permintaan:

request_json= '{ policy: { version: "1", bindings: [ { role: "roles/folderAdmin",
members: [ "user:admin@myorganization.com", ] }, { role: "roles/folderCreator",
members: [   "user:admin@myorganization.com", ] } , { role: "roles/folderMover",
members: [ "user:admin@myorganization.com", ] } , ] } }'

Permintaan curl:

curl -X POST -H "Content-Type: application/json" \
-H "Authorization: Bearer ${bearer_token}" \
-d "$request_json" \
https://cloudresourcemanager.googleapis.com/v3/ORGANIZATION_NAME:setIamPolicy

Ganti ORGANIZATION_NAME dengan nama organisasi yang kebijakan IAM-nya sedang ditetapkan, misalnya organizations/123.

Membuat folder

Untuk membuat folder, Anda harus memiliki peran Folder Admin atau Folder Creator di tingkat induk. Misalnya, untuk membuat folder di tingkat organisasi, Anda harus memiliki salah satu peran ini di tingkat organisasi.

Sebagai bagian dari pembuatan folder, Anda harus menetapkan nama untuk folder tersebut. Nama folder harus memenuhi persyaratan berikut:

  • Nama dapat berisi huruf, angka, spasi, tanda hubung, dan garis bawah.
  • Nama tampilan folder harus diawali dan diakhiri dengan huruf atau angka.
  • Panjang nama harus antara 3 hingga 30 karakter.
  • Nama harus berbeda dari semua folder lain yang memiliki induk yang sama.

Untuk membuat folder:

Konsol

Folder dapat dibuat di UI menggunakan bagian "Kelola Project dan Folder".

  1. Buka halaman Mengelola resource di konsol Google Cloud:

    Buka halaman Kelola resource

  2. Pastikan nama resource organisasi Anda dipilih di menu drop-down organisasi di bagian atas halaman.

  3. Klik Buat folder, lalu pilih salah satu opsi berikut:

    • Folder standar: Resource folder standar.
    • Folder yang mematuhi kebijakan: Folder Assured Workloads, yang menyediakan kontrol peraturan, regional, atau kedaulatan tambahan untuk resource Google Cloud. Memilih opsi ini akan mengarahkan Anda ke Assured Workloads untuk membuat folder.
  4. Di kotak Nama folder, masukkan nama folder baru Anda.

  5. Di bagian Destination, klik Browse, lalu pilih resource organisasi atau folder tempat Anda ingin membuat folder baru.

    1. Klik Create.

gcloud

Folder dapat dibuat secara terprogram menggunakan Google Cloud CLI.

Untuk membuat folder di resource organisasi menggunakan alat command line gcloud, jalankan perintah berikut.

gcloud resource-manager folders create \
   --display-name=[DISPLAY_NAME] \
   --organization=[ORGANIZATION_ID]

Untuk membuat folder yang induknya adalah folder lain:

gcloud resource-manager folders create \
   --display-name=[DISPLAY_NAME] \
   --folder=[FOLDER_ID]

Dengan keterangan:

  • [DISPLAY_NAME] adalah nama tampilan folder. Tidak ada dua folder dengan induk yang sama yang dapat memiliki nama tampilan yang sama. Nama tampilan harus diawali dan diakhiri dengan huruf atau angka, dapat berisi huruf, angka, spasi, tanda hubung, dan garis bawah, dan tidak boleh lebih dari 30 karakter.
  • [ORGANIZATION_ID] adalah ID resource organisasi induk jika induk adalah resource organisasi.
  • [FOLDER_ID] adalah ID folder induk, jika induk adalah folder.

API

Folder dapat dibuat dengan permintaan API.

JSON permintaan:

request_json= '{
  display_name: DISPLAY_NAME,
  parent: ORGANIZATION_NAME
}'

Permintaan curl Buat Folder:

curl -X POST -H "Content-Type: application/json" \
-H "Authorization: Bearer ${bearer_token}" \
-d "$request_json" \
https://cloudresourcemanager.googleapis.com/v3/folders

Dengan keterangan:

  • [DISPLAY_NAME] adalah nama tampilan folder baru, misalnya "My Awesome Folder".
  • [ORGANIZATION_NAME] adalah nama resource organisasi tempat Anda membuat folder, misalnya organizations/123.

Respons Buat Folder:

{
  "name": "operations/fc.123456789",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v3.FolderOperation",
    "displayName": "[DISPLAY_NAME]",
    "operationType": "CREATE"
  }
}

Permintaan curl Get Operation:

curl -H "Authorization: Bearer ${bearer_token}" \
https://cloudresourcemanager.googleapis.com/v3/operations/fc.123456789

Respons Operasi Get:

{
  "name": "operations/fc.123456789",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v3.FolderOperation",
    "displayName": "[DISPLAY_NAME]",
    "operationType": "CREATE"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v3.Folder",
    "name": "folders/12345",
    "parent": "organizations/123",
    "displayName": "[DISPLAY_NAME]",
    "lifecycleState": "ACTIVE",
    "createTime": "2017-07-19T23:29:26.018Z",
    "updateTime": "2017-07-19T23:29:26.046Z"
  }
}

Menambahkan tag selama pembuatan folder

Tag menyediakan cara untuk membuat anotasi untuk resource. Anda dapat menambahkan tag saat membuat folder. Untuk melakukannya, Anda harus memberikan peran Tag User. Untuk mengetahui informasi selengkapnya tentang izin yang terdapat dalam peran ini, lihat Mengelola tag di resource. Anda hanya dapat menambahkan namespace untuk pasangan nilai kunci tag dengan salah satu cara berikut:

gcloud

Untuk menambahkan tag selama pembuatan folder, jalankan perintah berikut:

  gcloud resource-manager folders create \
  --display-name=DISPLAY_NAME \
  --organization=ORGANIZATION_ID
  --tags=KEY_VALUE_PAIRS

Ganti kode berikut:

  • DISPLAY_NAME adalah nama tampilan folder.
  • ORGANIZATION_ID adalah ID unik resource organisasi induk.
  • KEY_VALUE_PAIRS adalah daftar key-value pair yang dipisahkan koma yang dapat Anda tetapkan ke resource. Contoh pasangan nilai kunci yang dipisahkan koma adalah 123/environment=production, 456/create=testresource.

API

Cuplikan berikut adalah permintaan JSON yang membuat folder dan menambahkan tag ke dalamnya.

  POST https://cloudresourcemanager.googleapis.com/v3/projects/
  Authorization: *************
  Content-Type: application/json

  {
    "display_name": "our-folder-456",
    "parent": "organizations/123",
    "tags": {
      "key": "123/environment"
      "value": "production"
    },
"tags": {
      "key": "123/costCenter"
      "value": "marketing"
    }
  }

Mengonfigurasi akses ke folder

Untuk mengonfigurasi akses ke folder, Anda harus memiliki peran Administrator IAM Folder atau Admin Folder di tingkat induk.

Konsol

  1. Di konsol Google Cloud, buka halaman Manage Resources.

    Buka halaman Kelola Resource

  2. Klik menu drop-down Organization di kiri atas, lalu pilih resource organisasi Anda.

  3. Pilih kotak centang di samping project yang izinnya ingin Anda ubah.

    1. Di sebelah kanan Panel info, pada bagian Izin, masukkan alamat email anggota yang ingin Anda tambahkan.

    2. Di menu drop-down Select a role, pilih peran yang ingin Anda berikan kepada anggota tersebut.

    3. Klik Tambahkan. Notifikasi akan muncul untuk mengonfirmasi penambahan atau pembaruan peran baru anggota.

gcloud

Anda dapat mengonfigurasi akses ke Folder secara terprogram menggunakan Google Cloud CLI atau API.

gcloud resource-manager folders \
  add-iam-policy-binding [FOLDER_ID] \
  --member=user:email1@example.com \
  --role=roles/resourcemanager.folderEditor
gcloud resource-manager folders \
  add-iam-policy-binding [FOLDER_ID] \
  --member=user:email1@example.com \
  --role=roles/resourcemanager.folderViewer

Sebagai alternatif:

gcloud resource-manager folders \
  set-iam-policy [FOLDER_ID] [POLICY_FILE]

Dengan keterangan:

  • [FOLDER_ID] adalah ID folder baru.
  • [POLICY_FILE] adalah jalur ke file kebijakan untuk folder.

API

Metode setIamPolicy menetapkan kebijakan kontrol akses pada folder, menggantikan kebijakan yang ada. Kolom resource harus berupa nama resource folder, misalnya, folders/1234.

 request_json= '{
   policy: {
     version: "1",
     bindings: [
       {
         role: "roles/resourcemanager.folderEditor",
         members: [
           "user:email1@example.com",
           "user:email2@example.com",
         ]
       }
     ]
   }
 }'

Permintaan curl:

   curl -X POST -H "Content-Type: application/json" \
   -H "Authorization: Bearer ${bearer_token}" \
   -d "$request_json" \
   https://cloudresourcemanager.googleapis.com/v3/[FOLDER_NAME]:setIamPolicy

Dengan keterangan:

  • [FOLDER_NAME] adalah nama folder yang kebijakan IAM-nya sedang ditetapkan, misalnya folders/123.

Membuat project dalam folder

Untuk membuat project di folder, Anda harus memiliki peran Project Creator (roles/resourcemanager.projectCreator) di folder tersebut. Peran ini dapat diwarisi dari folder induk.

console

  1. Di konsol Google Cloud, buka halaman Manage resources.

    Buka konsol Google Cloud

  2. Buka halaman Kelola resource.
  3. Pilih resource organisasi Anda dari drop-down Organization di kiri atas halaman.
  4. Klik Buat Project.
  5. Masukkan Nama project.
  6. Di kotak Destination, klik Browse untuk memilih folder tempat Anda ingin membuat project.

  7. Klik Create.

gcloud

  gcloud projects create PROJECT_ID --folder FOLDER_ID

Ganti kode berikut:

  • PROJECT_ID adalah ID project ID yang akan dibuat.
  • FOLDER_ID adalah ID folder tempat project harus dibuat.

API

JSON permintaan:

   request_json= '{
      name: DISPLAY_NAME, projectId: PROJECT_ID, parent: {id: PARENT_ID, type: PARENT_TYPE}
   }'

Permintaan curl:

   curl -X POST -H "Content-Type: application/json" \
   -H "Authorization: Bearer ${bearer_token}" \
   -d "$request_json" \
   https://cloudresourcemanager.googleapis.com/v3/projects

Ganti kode berikut:

  • PROJECT_ID adalah ID unik project yang sedang dibuat. Contoh, my-awesome-proj-123.
  • DISPLAY_NAME adalah nama tampilan project yang sedang dibuat.
  • PARENT_ID adalah ID unik induk yang dibuat. Contoh, 123.
  • PARENT_TYPE adalah jenis induk, seperti folder atau organization.

Jangan sertakan informasi sensitif dalam nama folder atau nama resource lainnya. Setiap referensi ke folder atau resource terkait akan menampilkan nama folder dan nama resource.

Memindahkan project ke folder

Anda harus mempertimbangkan dengan cermat implikasi kebijakan apa pun sebelum memindahkan project ke dalam atau ke luar folder. Kebijakan Identity and Access Management yang Anda tentukan di level project akan dipindahkan bersama project, tetapi kebijakan yang diwariskan dari resource induk tidak akan dipindahkan.

Saat Anda memindahkan project, kebijakan Identity and Access Management atau kebijakan organisasi yang disertakan secara langsung akan dipindahkan bersama project tersebut. Namun, project dalam hierarki resource Anda juga terpengaruh oleh kebijakan yang diwarisi dari resource induk. Jika project mewarisi peran IAM yang memberi pengguna izin untuk menggunakan layanan tertentu, pengguna tidak akan memiliki akses ke layanan tersebut di tujuan, kecuali jika peran tersebut juga mewarisi izin di tujuan.

Misalnya, pertimbangkan akun layanan yang memiliki peran Storage Object Creator yang terikat dengan pengguna di Folder A. Akun layanan memiliki izin untuk mengupload data ke Cloud Storage di project apa pun di Folder A. Jika Anda memindahkan salah satu project ini ke Folder B, yang tidak memiliki izin turunan yang sama, akun layanan untuk project tersebut akan kehilangan kemampuan untuk mengupload data, sehingga menyebabkan pemadaman layanan.

Pertimbangan yang sama ini berlaku jika kebijakan organisasi ditentukan di folder sumber dan tujuan. Seperti kebijakan IAM, kebijakan organisasi diwariskan. Oleh karena itu, Anda harus memastikan bahwa kebijakan organisasi Anda konsisten antara folder sumber dan tujuan.

Untuk mempelajari kebijakan organisasi lebih lanjut, lihat Pengantar Layanan Kebijakan Organisasi.

Untuk memindahkan project, Anda memerlukan peran IAM Project Mover (roles/resourcemanager.projectMover) di folder sumber dan folder tujuan. Jika resource tidak berada dalam folder, Anda memerlukan peran ini di resource organisasi.

Peran ini memberi Anda izin yang diperlukan berikut:

  • resourcemanager.projects.update pada project
  • Jika resource berada dalam folder: resourcemanager.projects.move di folder sumber dan tujuan
  • Jika resource tidak berada dalam folder: resourcemanager.projects.move di resource organisasi

Anda juga bisa mendapatkan izin ini dengan peran khusus, atau peran standar lainnya.

Konsol

Untuk memindahkan project:

  1. Di Konsol Google Cloud, buka halaman Manage resources.

    Buka Kelola resource

  2. Pilih Organisasi Anda dari drop-down Organization di kiri atas halaman.

  3. Klik baris project untuk memilih project dari daftar resource. Perhatikan bahwa Anda tidak boleh mengklik nama project, yang akan mengarahkan Anda ke halaman IAM project.

  4. Klik menu opsi (elips vertikal) di baris, lalu klik Pindahkan.

  5. Klik Browse untuk memilih folder tempat Anda ingin memindahkan project.

  6. Klik Pindahkan.

gcloud

Untuk memindahkan project, jalankan perintah gcloud beta projects move:

gcloud beta projects move PROJECT_ID \
--DESTINATION_TYPE DESTINATION_ID

Dengan keterangan:

  • PROJECT_ID adalah ID atau nomor project yang ingin Anda pindah.

  • DESTINATION_TYPE adalah organization atau folder.

  • DESTINATION_ID adalah ID resource atau folder organisasi tempat Anda ingin memindahkan project. Anda hanya dapat menentukan satu target.

API

Anda dapat menggunakan metode projects.move v3 untuk memindahkan project.

Permintaan:

POST https://cloudresourcemanager.googleapis.com/v3/{name=PROJECT_NAME}:move
{
  "destinationParent": DESTINATION_PARENT
}

Dengan keterangan:

  • PROJECT_NAME adalah nama project yang ingin Anda update. Misalnya, projects/415104041262

  • DESTINATION_PARENT adalah resource atau folder organisasi induk baru tempat Anda ingin memindahkan project. Contoh: organizations/12345678901

Jika berhasil, permintaan akan menampilkan Operasi yang dapat digunakan untuk melacak pemindahan project.

Memindahkan folder ke folder lain

Untuk memindahkan folder ke folder lain, Anda harus memiliki izin resourcemanager.folders.move untuk folder sumber dan tujuan.

console

Proses memindahkan folder ke folder lain di konsol mirip dengan memindahkan project.

  1. Di konsol Google Cloud, buka halaman Manage resources.

    Buka konsol Google Cloud

  2. Pilih resource organisasi Anda dari drop-down Organization di kiri atas halaman.
  3. Klik baris folder untuk memilih folder dari daftar project dan folder.
  4. Klik menu opsi (elips vertikal) di baris, lalu klik Pindahkan.
  5. Klik Jelajahi untuk memilih folder tempat Anda ingin memindahkan folder.
  6. Klik Pindahkan.

gcloud

Untuk memindahkan folder di bagian resource Organisasi, jalankan perintah berikut di Google Cloud CLI:

gcloud resource-manager folders move [FOLDER_ID] \
  --organization=[PARENT_ID]

Untuk memindahkan folder ke dalam folder lain:

gcloud resource-manager folders move [FOLDER_ID] \
  --folder=[PARENT_ID]

Ganti kode berikut:

  • [FOLDER_ID] adalah ID folder yang akan dipindahkan.
  • [PARENT_ID] adalah ID resource Organisasi atau ID folder resource atau folder organisasi induk.

API

JSON permintaan:

request_json= '{
   destinationParent: "folders/[DESTINATION_FOLDER_ID]"
}'

Permintaan curl Pindahkan Folder:

curl -X POST -H "Content-Type: application/json" \
-H "Authorization: Bearer ${bearer_token} \
-d "$request_json" \
https://cloudresourcemanager.googleapis.com/v3/folders/[DISPLAY_NAME]:move

Ganti kode berikut:

  • [DESTINATION_FOLDER_ID] adalah ID folder tempat Anda memindahkan folder lain, misalnya 98765.
  • [DISPLAY_NAME] adalah nama tampilan folder yang dipindahkan, misalnya "My Awesome Folder".

Respons Pindahkan Folder:

{
  "name": "operations/fm.1234567890",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v3.FolderOperation",
    "displayName": "[DISPLAY_NAME]",
    "operationType": "MOVE"
  }
}

Permintaan curl Get Operation:

curl -H "Authorization: Bearer ${bearer_token}" \
https://cloudresourcemanager.googleapis.com/v3/operations/fm.1234567890

Respons Operasi Get:

{
  "name": "operations/fm.1234567890",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v3.FolderOperation",
    "displayName": "[DISPLAY_NAME]",
    "operationType": "MOVE"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v3.Folder",
    "name": "folders/12345",
    "parent": "folders/98765",
    "displayName": "[DISPLAY_NAME]",
    "lifecycleState": "ACTIVE",
    "createTime": "2017-07-19T23:29:26.018Z",
    "updateTime": "2017-07-20T00:54:44.295Z"
  }
}

Melihat atau mencantumkan folder dan project

Untuk melihat atau mencantumkan folder, Anda harus memiliki peran Organization Viewer dan Folder Viewer.

Untuk melihat atau mencantumkan folder dan project:

console

  1. Di konsol Google Cloud, buka halaman Manage resources.

    Buka halaman Kelola resource

  2. Dari pemilih project di bagian atas halaman, pilih resource organisasi Anda. Folder harus dibuat sebelum muncul dalam daftar ini.

  3. Pilih baris di hierarki untuk melakukan operasi khusus folder atau project.

  4. Masukkan nama/ID project atau folder dalam penelusuran untuk memfilter daftar.

gcloud

Untuk mendapatkan detail satu folder, gunakan perintah resource-manager folders describe.

gcloud resource-manager folders describe FOLDER_ID

Ganti FOLDER_ID dengan ID folder yang ingin Anda lihat.

Untuk mencantumkan folder turunan dari resource organisasi, gunakan perintah resource-manager folders list.

gcloud resource-manager folders list \
  --organization ORGANIZATION_ID

Ganti ORGANIZATION_ID dengan ID resource organisasi yang ingin Anda lihat daftar folder turunannya.

Untuk mencantumkan folder turunan dari resource folder, gunakan perintah resource-manager folders list.

gcloud resource-manager folders list \
  --folder FOLDER_ID

Ganti FOLDER_ID dengan ID resource folder yang ingin Anda lihat daftar folder turunannya.

Untuk mencantumkan project di folder atau resource folder atau organisasi, gunakan perintah projects list dengan argumen filter.

gcloud projects list \
  --filter=" parent.id: 'RESOURCE_ID' "

Ganti RESOURCE_ID dengan ID resource organisasi atau folder yang ingin Anda lihat daftar project turunannya.

API

Permintaan curl untuk mendapatkan folder:

curl -X GET -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${bearer_token}" \
  https://cloudresourcemanager.googleapis.com/v3/[FOLDER_NAME]

Ganti FOLDER_NAME dengan nama folder, seperti folders/123.

Permintaan curl untuk mencantumkan folder:

curl -X GET -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${bearer_token}" \
  https://cloudresourcemanager.googleapis.com/v3/folders?parent=[PARENT_NAME]

Ganti PARENT_NAME dengan nama resource induk tempat Anda membuat folder, seperti organizations/123 atau folders/123.

Menggunakan Google Cloud CLI

Perintah untuk berinteraksi dengan Folders API dengan alat command line gcloud tersedia di grup perintah gcloud resource-manager folders.

Buat

Untuk membuat folder baru, gunakan gcloud resource-manager folders create dengan flag yang menetapkan nama folder dan ID resource atau folder organisasi tempat Anda ingin membuatnya.

gcloud resource-manager folders create \
  --display-name="Super Fantastic Folder" \
  --organization=2518

Created Folder 245321.

Lihat

Untuk melihat folder, gunakan gcloud resource-manager folders describe dengan ID folder yang ingin Anda lihat.

gcloud resource-manager folders describe 245321
name: folders/245321
parent: organizations/2518
display_name: Super Fantastic Folder
lifecycle_state: ACTIVE
create_time: <timestamp info …>
update_time: <timestamp info …>

Daftar

Untuk mencantumkan folder di bawah folder, gunakan gcloud resource-manager folders list, yang meneruskan ID folder dalam flag --folder. Tindakan ini juga dapat mencantumkan folder tingkat atas di bawah resource organisasi, menggunakan flag --organization.

gcloud resource-manager folders list --folder 245321
<table output showing the folders underneath the folder with the specified ID>

gcloud resource-manager folders list --organization 2518
<table output showing folders in this Organization but not in any folder>

Untuk menyertakan folder yang permintaan penghapusannya ada dalam daftar, tambahkan flag --show-deleted

gcloud beta resource-manager folders list --folder 245321 --show-deleted
<table output showing all the folders including the delete requested ones underneath the folder with the specified ID>

Anda dapat mencantumkan project menggunakan perintah gcloud projects list, dengan meneruskan folder induk atau ID resource organisasi dalam flag --filter.

gcloud projects list --filter=" parent.id: '245321' "
<table output showing the projects underneath the resource with the specified ID>

Untuk mengetahui informasi selengkapnya tentang cara izin dan filter berinteraksi dengan perintah daftar, lihat Mencantumkan semua Resource dalam Hierarki Anda.

Untuk menelusuri folder yang cocok dengan kueri yang ditentukan, gunakan gcloud alpha resource-manager folders search, yang meneruskan kondisi dalam flag --query. Cakupan penelusuran adalah semua folder yang izin lihatnya dimiliki pengguna.

gcloud alpha resource-manager folders search --query="name:vij*"
<table output showing the folders with names starting from vij eg. vijeta, vijay-folder>

gcloud alpha resource-manager folders search --query="state:DELETE_REQUESTED"
<table output showing folders for which delete has been requested>

Semua folder yang izin lihatnya dimiliki pengguna dapat ditampilkan menggunakan perintah gcloud folders search.

gcloud folders search
<table output showing all viewable folders>

Perbarui

Folder dapat diperbarui dengan perintah gcloud resource-manager folders update. Saat ini, hanya kolom display_name folder yang dapat diperbarui.

gcloud resource-manager folders update \
  --display-name="Mega Incredible Folder" 245321
name: folders/245321
parent: organizations/2518
display_name: Mega Incredible Folder
lifecycle_state: ACTIVE
create_time: <timestamp info …>
update_time: <recent timestamp info …>

Hapus

Folder dapat dihapus dan dibatalkan penghapusannya dari command line. Pengguna harus memiliki peran Admin Folder atau Editor Folder agar memiliki izin untuk menghapus folder. Anda hanya dapat menghapus folder jika kosong.

gcloud resource-manager folders delete 245321
name: folders/245321
parent: organizations/2518
display_name: Mega Incredible Folder
lifecycle_state: DELETE_REQUESTED
create_time: <timestamp info …>
update_time: <recent timestamp info …>

gcloud resource-manager folders undelete 245321
name: folders/245321
parent: organizations/2518
display_name: Mega Incredible Folder
lifecycle_state: ACTIVE
create_time: <timestamp info …>
update_time: <recent timestamp info …>

Project Move

Project dapat dibuat di folder dan dipindahkan ke folder menggunakan perintah gcloud projects create dan gcloud projects move yang ada. Folder juga dapat dipindahkan, menggunakan gcloud resource-manager folders move.

gcloud projects create --folder=245321 fancy-folder-project
project_id: fancy-folder-project
project_number: 905283
parent:
  type: "folder"
  id: 245321
other fields …

gcloud projects move --folder=245321 soon-to-be-fancy-project
project_id: soon-to-be-fancy-project
project_number: 428714
parent:
  type: "folder"
  id: 245321
other fields …

Operasi yang Berjalan Lama

Beberapa operasi folder seperti membuat folder dapat memerlukan waktu lama. Untuk memudahkan multitasking, beberapa perintah folder memungkinkan Anda melakukannya secara asinkron. Perintah ini menerima flag --async untuk mengaktifkan perilaku asinkron, sehingga perintah tersebut langsung menampilkan Operasi yang Berjalan Lama, bukan menunggu operasi selesai. Anda dapat melakukan polling operasi ini sendiri dengan perintah gcloud beta resource-manager operations describe. Saat ini, hanya perintah folders create dan folders move yang mengizinkan penggunaan asinkron.

gcloud resource-manager folders create \
  --display-name="Awe-Inspiring Async Folder" \
  --organization=2518 \
  --async

name: operations/fc.8572
metadata:
  operation_type: CREATE
  display_name: Awe-Inspiring Async Folder
  destination_parent: organizations/2518
done: false

[wait for some time …]

gcloud beta resource-manager operations describe fc.8572
name: operations/fc.8572
metadata:
  operation_type: CREATE
  display_name: Awe-Inspiring Async Folder
  destination_parent: organizations/2518
done: true
response:
  name: folders/6428
  parent: organizations/2518
  display_name: Awe-Inspiring Async Folder
  lifecycle_state: ACTIVE
  create_time: <recent timestamp info …>
  update_time: <recent timestamp info …>