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 izinkan atau tolak yang sama. Meskipun folder dapat berisi beberapa folder atau resource, folder atau resource tertentu dapat memiliki tepat satu induk.

Dalam diagram berikut, resource organisasi, "Company", memiliki folder yang mewakili dua departemen, "Dept X" dan "Dept Y", serta folder, "Shared Infrastructure", untuk item yang mungkin umum untuk kedua departemen. Di bagian "Dept Y", mereka telah dikelompokkan menjadi dua tim, dan di dalam folder tim, mereka selanjutnya dikelompokkan berdasarkan produk. Folder untuk "Produk 1" selanjutnya berisi tiga project, yang masing-masing memiliki resource yang diperlukan untuk project. Hal ini memberi mereka fleksibilitas tingkat tinggi dalam menetapkan kebijakan izinkan, tolak, atau organisasi pada tingkat perincian yang tepat.

Contoh hierarki folder

Anda dapat menggunakan kebijakan izinkan dan tolak level folder untuk mengontrol akses ke resource yang ada di dalam folder. Misalnya, jika pengguna diberi peran Compute Instance Admin di folder, pengguna tersebut akan memiliki peran Compute Instance Admin untuk semua project di folder tersebut.

Sebelum memulai

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

Jika Anda sedang mempelajari cara terbaik menggunakan folder, sebaiknya Anda:

  1. Tinjau Kontrol Akses untuk Folder Menggunakan IAM. Topik ini menjelaskan cara mengontrol siapa yang memiliki akses ke folder dan resource yang ada di dalamnya.
  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 kepada seluruh domain di tingkat resource organisasi. Untuk membatasi visibilitas ke cabang hierarki folder Anda, berikan peran Pelihat Folder pada folder yang ingin Anda izinkan dilihat oleh pengguna.
  3. Buat folder. Saat Anda merencanakan cara mengatur resource Cloud, sebaiknya mulai dengan satu folder sebagai sandbox tempat Anda dapat bereksperimen dengan hierarki yang paling sesuai untuk resource organisasi Anda. 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 pada 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 memodelkan berbagai skenario ini.

Situasi umum adalah membuat folder yang 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 merujuk pada folder turunan langsung. Folder turunan tersebut 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 lebih lanjut peran ini, lihat Kontrol Akses untuk Folder menggunakan IAM. Sebaiknya Anda juga meninjau praktik terbaik kami untuk membantu Anda mengidentifikasi konfigurasi optimal untuk izin folder Anda.

Untuk mengelola folder bagi seluruh resource organisasi Anda, Anda memerlukan peran Folder Admin. Peran ini memberikan izin kepada pengguna untuk membuat, mengedit, menghapus, memindahkan, dan mengubah izin IAM pada 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 Google Cloud console, 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 Tambahkan akun utama, 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 Folder Admin kepada prinsipal 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:[email protected]", ] }, { role: "roles/folderCreator",
members: [   "user:[email protected]", ] } , { role: "roles/folderMover",
members: [ "user:[email protected]", ] } , ] } }'

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 izinya sedang ditetapkan, misalnya organizations/123.

Membuat folder

Untuk membuat folder, Anda harus memiliki peran Admin Folder atau Pembuat Folder 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 memberinya nama. 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 berbagi induknya.

Untuk membuat folder:

Konsol

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

  1. Buka halaman Manage resources 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 berdaulat tambahan untuk Google Cloud resource. Jika opsi ini dipilih, Anda akan diarahkan ke Assured Workloads untuk membuat folder.
  4. Di kotak Nama folder, masukkan nama folder baru Anda.

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

    1. Klik Buat.

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:

  • [DISPLAY_NAME] adalah nama tampilan folder. Tidak ada dua folder dengan induk yang sama yang dapat berbagi nama tampilan. Nama tampilan harus diawali dan diakhiri dengan huruf atau angka, dapat berisi huruf, angka, spasi, tanda hubung, dan garis bawah, serta 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 induknya 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:

  • [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 Get Operation:

{
  "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 Pengguna Tag. Untuk mengetahui informasi selengkapnya tentang izin yang ada dalam peran ini, lihat Mengelola tag pada 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 pasangan nilai kunci 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 folder tersebut.

  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 Google Cloud console, buka halaman Manage Resources.

    Buka halaman Kelola Resource

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

  3. Centang kotak di samping project yang izinnya ingin Anda ubah.

    1. Di Panel info di sisi kanan, di 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:[email protected] \
  --role=roles/resourcemanager.folderEditor
gcloud resource-manager folders \
  add-iam-policy-binding [FOLDER_ID] \
  --member=user:[email protected] \
  --role=roles/resourcemanager.folderViewer

Sebagai alternatif:

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

Dengan:

  • [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:[email protected]",
           "user:[email protected]",
         ]
       }
     ]
   }
 }'

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:

  • [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 Google Cloud console, buka halaman Manage resources.

    Buka Google Cloud konsol

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

  7. Klik Buat.

gcloud

  gcloud projects create PROJECT_ID --folder FOLDER_ID

Ganti kode berikut:

  • PROJECT_ID adalah ID project 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 menyertakan informasi sensitif dalam nama folder atau nama resource lainnya. Setiap referensi ke folder atau resource terkait akan mengekspos nama folder dan nama resource.

Memindahkan project ke dalam folder

Anda harus mempertimbangkan dengan cermat implikasi kebijakan apa pun sebelum memindahkan project ke dalam atau ke luar folder. Kebijakan izin yang Anda tentukan di level project akan berpindah bersama project, tetapi kebijakan yang diwarisi dari resource induk tidak akan berpindah.

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

Misalnya, pertimbangkan akun layanan yang memiliki peran Storage Object Creator yang terikat ke pengguna di Folder A. Akun layanan memiliki izin untuk mengupload data ke Cloud Storage di project mana pun dalam Folder A. Jika Anda memindahkan salah satu project ini ke Folder B, yang tidak memiliki izin yang sama yang diwariskan, akun layanan untuk project tersebut akan kehilangan kemampuan untuk mengupload data, sehingga menyebabkan gangguan 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 lebih lanjut kebijakan organisasi, 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 ada di folder, Anda memerlukan peran ini di resource organisasi.

Peran ini memberi Anda izin yang diperlukan berikut:

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

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

Konsol

Untuk memindahkan project:

  1. Di konsol Google Cloud , buka halaman Kelola resource.

    Buka Kelola resource

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

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

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

  5. Klik Jelajahi 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:

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

  • DESTINATION_TYPE adalah organization atau folder.

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

API

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

Permintaan:

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

Dengan:

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

  • DESTINATION_PARENT adalah resource organisasi induk atau folder 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 pemindahan folder ke folder lain di konsol mirip dengan pemindahan project.

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

    Buka Google Cloud konsol

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

gcloud

Untuk memindahkan folder di 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 dari resource atau folder organisasi induk.

API

JSON permintaan:

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

Permintaan curl Move 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 yang menjadi tujuan pemindahan 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 Get Operation:

{
  "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 Google Cloud console, 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 apa pun di pohon 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 bawah resource organisasi atau folder, 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 menggunakan 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 organisasi atau folder tempat Anda ingin folder tersebut dibuat.

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, dengan meneruskan ID folder dalam flag --folder. Perintah ini juga dapat mencantumkan folder tingkat teratas di resource organisasi, menggunakan tanda --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 penghapusannya diminta dalam daftar, tambahkan tanda --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 ID resource folder atau organisasi induk di 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, dengan meneruskan kondisi di 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 diurungkan penghapusannya dari command line. Pengguna harus memiliki peran Admin Folder atau Editor Folder untuk memiliki izin menghapus folder. Anda hanya dapat menghapus folder jika folder tersebut 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 yang lama. Untuk mempermudah multitasking, beberapa perintah folder memungkinkan Anda menjalankannya secara asinkron. Perintah ini menerima tanda --async untuk mengaktifkan perilaku asinkron, sehingga perintah tersebut langsung menampilkan Operasi yang Berjalan Lama, bukan menunggu operasi selesai. Anda dapat melakukan polling pada operasi ini sendiri dengan perintah gcloud beta resource-manager operations describe. Saat ini, hanya perintah folders create dan folders move yang memungkinkan 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 …>