Resource yang dicakup folder

Config Connector dapat mengelola resource Anda di tingkat project, folder, atau organisasi. Agar Config Connector dapat menentukan tempat membuat resource Anda, Config Connector akan memeriksa kolom yang menentukan cakupan di spesifikasi resource Anda terlebih dahulu. Jika tidak ditemukan, Config Connector akan memeriksa anotasi yang menentukan cakupan.

Menentukan kolom folderRef

Sebagian besar resource Config Connector yang tercakup dalam folder mendukung kolom bernama folderRef dalam spesifikasi CRD-nya. Gunakan kolom ini untuk menentukan Google Cloud folder tempat Anda ingin membuat resource.

Jika folder Google Cloud juga dikelola di cluster yang sama melalui CRD Folder, Anda dapat menentukan folder sebagai referensi resource Kubernetes:

...
spec:
  folderRef:
    name: FOLDER_RESOURCE_NAME
    namespace: FOLDER_RESOURCE_NAMESPACE
...

Dengan pendekatan ini, Anda dapat menggunakan Config Connector dan membuat folder Google Cloud dengan resource turunannya dalam satu operasi penerapan. Kolom namespace bersifat opsional jika resource Folder Config Connector berada di namespace Kubernetes yang sama dengan resource yang tercakup dalam folder Anda.

Jika folder Google Cloud tidak dikelola sebagai resource Kubernetes di cluster yang sama, Anda dapat menggunakan kolom external untuk menentukan ID folder secara langsung. Format persis nilai dapat berbeda, bergantung pada jenis resource. Dua format yang paling umum adalah "FOLDER_ID" dan "folders/FOLDER_ID". Lihat contoh "FOLDER_ID" di bawah:

...
spec:
  folderRef:
    external: "FOLDER_ID"
...

Anotasi konfigurasi resource

Jika resource Config Connector memiliki cakupan folder, tetapi tidak mendukung kolom folderRef, Anda dapat menyetel ID folder ke konfigurasi resource menggunakan anotasi folder-id:

...
metadata:
  annotations:
    cnrm.cloud.google.com/folder-id: FOLDER_ID
...

Berikut adalah contoh tampilan YAML resource dengan anotasi ini di dalamnya:

apiVersion: foo.cnrm.cloud.google.com/v1beta1
kind: FooBar
metadata:
  annotations:
    cnrm.cloud.google.com/folder-id: FOLDER_ID
  name: foobarname

Konfigurasi namespace anotasi

Anda dapat menetapkan ID folder default untuk resource yang baru dibuat dengan memberi anotasi pada namespace Kubernetes Anda. Jika salah satu resource di namespace telah menetapkan anotasi ini secara eksplisit dalam konfigurasinya sendiri, anotasi tingkat resource akan menggantikan anotasi tingkat namespace.

Untuk menganotasi namespace menggunakan command line, jalankan perintah berikut:

kubectl annotate namespace NAMESPACE_NAME cnrm.cloud.google.com/folder-id=FOLDER_ID

Ganti kode berikut:

  • NAMESPACE_NAME: nama namespace Anda
  • FOLDER_ID: ID folder Google Cloud Anda

Atau, Anda dapat menerapkan manifes YAML yang berisi anotasi. Salin YAML di bawah ke dalam file:

apiVersion: v1
kind: Namespace
metadata:
  annotations:
    cnrm.cloud.google.com/folder-id: FOLDER_ID
  name: NAMESPACE_NAME

Ganti kode berikut:

  • FOLDER_ID: ID folder Google Cloud Anda
  • NAMESPACE_NAME: nama namespace Anda

Setelah membuat file, terapkan ke cluster Anda.