Recursos com escopo de pasta
O Config Connector pode gerenciar seus recursos no nível de projeto, pasta ou organização. Para que o Config Connector determine onde criar seus recursos, ele primeiro verifica se há um campo de definição de escopo na especificação do recurso. Se não for encontrado, ele verifica se há uma anotação de definição de escopo.
Especificar o campo folderRef
A maioria dos recursos do Config Connector com escopo de pasta é compatível com um campo chamado folderRef
na especificação CRD. Use esse campo para especificar a pasta do Google Cloud em que você
quer criar o recurso.
Se a pasta do Google Cloud também estiver sendo gerenciada no mesmo cluster por meio da CRD de Pasta, será possível especificar a pasta como uma referência de recurso do Kubernetes:
...
spec:
folderRef:
name: FOLDER_RESOURCE_NAME
namespace: FOLDER_RESOURCE_NAMESPACE
...
Essa abordagem possibilita usar o Config Connector e criar uma pasta do Google Cloud com os recursos filhos em uma única operação de aplicação. O campo de namespace será opcional se o recurso de pasta do Conector de configuração estiver no mesmo namespace do Kubernetes que o recurso com escopo de pasta.
Se a pasta do Google Cloud não estiver sendo gerenciada como um recurso do Kubernetes
no mesmo cluster, use o campo external
para especificar diretamente o
ID da pasta. O formato exato do valor pode variar dependendo do
tipo de recurso. Os dois formatos mais comuns são "FOLDER_ID" e
"pastas/FOLDER_ID". Confira um exemplo de "FOLDER_ID" abaixo:
...
spec:
folderRef:
external: "FOLDER_ID"
...
Anotar a configuração de recursos
Se o recurso Config Connector tiver escopo de pasta, mas não for compatível com o campo folderRef
, será possível definir o ID da pasta para a configuração do recurso usando a anotação folder-id
:
...
metadata:
annotations:
cnrm.cloud.google.com/folder-id: FOLDER_ID
...
Veja um exemplo de como será o YAML de um recurso com esta anotação:
apiVersion: foo.cnrm.cloud.google.com/v1beta1
kind: FooBar
metadata:
annotations:
cnrm.cloud.google.com/folder-id: FOLDER_ID
name: foobarname
Anotar configuração de namespace
Para definir um ID de pasta padrão para recursos recém-criados, anote seu namespace do Kubernetes. Se algum dos recursos do namespace tiver essa anotação explicitamente definida na própria configuração, a anotação no nível do recurso substituirá a do namespace.
Para anotar o namespace usando a linha de comando, execute o seguinte comando:
kubectl annotate namespace NAMESPACE_NAME cnrm.cloud.google.com/folder-id=FOLDER_ID
Substitua:
NAMESPACE_NAME
: o nome do namespaceFOLDER_ID
: o ID da pasta do Google Cloud
Se preferir, aplique um manifesto YAML contendo a anotação. Copie o YAML abaixo em um arquivo:
apiVersion: v1
kind: Namespace
metadata:
annotations:
cnrm.cloud.google.com/folder-id: FOLDER_ID
name: NAMESPACE_NAME
Substitua:
FOLDER_ID
: o ID da pasta do Google CloudNAMESPACE_NAME
: o nome do namespace
Depois de criar o arquivo, aplique-o ao cluster.