Saltar al contenido principal
En algunos casos, puede ser útil excluir ciertos recursos de la gestión. Esto puede deberse a que su inquilino contiene una gran cantidad de un tipo de recurso concreto y gestionarlos supone una carga operativa, o a que su flujo de trabajo de desarrollo solo se aplica a un subconjunto específico de recursos y prefiere omitir el resto para mejorar el rendimiento. En cualquier caso, al usar Deploy CLI dispone de varias opciones para excluir recursos.

Excluir recursos completos por tipo

En inquilinos más complejos, es posible que quiera omitir tipos de recursos completos. Por ejemplo:
  • Inquilino empresarial con miles de organizaciones, donde gestionarlas todas supondría una carga operativa.
  • El proceso de CI/CD solo se centra en gestionar roles y quiere excluir todos los demás.
  • El desarrollo de funcionalidades se refiere a un hook y quiere excluir temporalmente todos los demás para optimizar el rendimiento.
Este tipo de exclusión se expresa pasando un array de nombres de recursos a cualquiera de las propiedades de configuración AUTH0_EXCLUDED o AUTH0_INCLUDED_ONLY. La propiedad de configuración AUTH0_EXCLUDED excluye únicamente los tipos de recursos que se le proporcionan. A la inversa, la propiedad AUTH0_INCLUDED_ONLY excluye todos los tipos de recursos excepto los definidos. La exclusión funciona en ambos sentidos; es decir, tanto al exportar desde Auth0 como al importar a Auth0, independientemente de si existen o no archivos de configuración de recursos. Todos los valores de recursos compatibles con la exclusión: actions, attackProtection, branding, clientGrants, clients, connections, customDomains, databases, emailProvider, emailTemplates, guardianFactorProviders, guardianFactorTemplates, guardianFactors, guardianPhoneFactorMessageTypes, guardianPhoneFactorSelectedProvider, guardianPolicies, logStreams, migrations, organizations, pages, prompts, resourceServers, roles, tenant, triggers.

Ejemplo de exclusión

El siguiente ejemplo muestra cómo excluir clients, connections, databases y organizations para que no los gestione Deploy CLI.
{
  "AUTH0_DOMAIN": "example-site.us.auth0.com",
  "AUTH0_CLIENT_ID": "<YOUR_AUTH0_CLIENT_ID>",
  "AUTH0_EXCLUDED": ["clients", "connections", "databases", "organizations"]
}

Ejemplo de inclusión

En el siguiente ejemplo se muestra cómo especificar que solo se administren actions, clients y connections con Deploy CLI.
{
  "AUTH0_DOMAIN": "example-site.us.auth0.com",
  "AUTH0_CLIENT_ID": "<YOUR_AUTH0_CLIENT_ID>",
  "AUTH0_INCLUDED_ONLY": ["actions", "clients", "connections"]
}

Excluir recursos individuales por ID

Algunos tipos de recursos permiten excluir recursos individuales por ID. Esto resulta útil si trabaja en un contexto con varios entornos y desea omitir de los entornos de nivel inferior un recurso específico de producción. Este método es compatible con Rules, clientes, bases de datos, conexiones y mediante los valores de configuración AUTH0_EXCLUDED_RULES, AUTH0_EXCLUDED_CLIENTS, AUTH0_EXCLUDED_DATABASES, AUTH0_EXCLUDED_CONNECTIONS y AUTH0_EXCLUDED_RESOURCE_SERVERS, respectivamente.

Ejemplo

{
  "AUTH0_DOMAIN": "example-site.us.auth0.com",
  "AUTH0_CLIENT_ID": "<YOUR_AUTH0_CLIENT_ID>",
  "AUTH0_EXCLUDED_CLIENTS": ["Your Application Name"],
  "AUTH0_EXCLUDED_CONNECTIONS": ["con_O1H3KyRMFP1IWRq3", "con_9avEYuj19ihqKBOs"]
}
Se está considerando retirar la compatibilidad con la exclusión de recursos por ID en futuras versiones principales. Consulta la propuesta de exclusión de recursos para obtener más información.

Omisión y estados vacíos

Además de excluir recursos, que hacen que las configuraciones se ignoren de forma forzada en ambos sentidos, Auth0 Deploy  CLI admite dos conceptos similares: omisión y estados vacíos.

Omisión

La configuración de recursos que no esté presente, ya sea de forma intencional o involuntaria, se omitirá durante la importación. Por ejemplo, si se eliminara la configuración de un recurso, se omitiría durante la importación y no alteraría el estado del inquilino remoto. No existe el concepto de omisión en la exportación. A menos que se excluyan explícitamente, todas las configuraciones de su inquilino se escribirán en archivos de configuración de recursos.

Ejemplo

roles: # la configuración de roles no se omite
  - name: Admin
    description: Can read and write things
    permissions: []
  - name: Reader
    description: Can only read things
    permissions: []
# La omisión del resto de configuraciones implica que serán ignoradas

Vacío

Configuración de recursos definida explícitamente como vacía. En configuraciones basadas en conjuntos, como Hooks, organizaciones y Actions, establecer estas configuraciones como un conjunto vacío expresa la intención de vaciar esos recursos. Esto indicaría una eliminación, siempre que la propiedad de configuración de eliminación AUTH0_ALLOW_DELETE esté habilitada. Para obtener más información sobre esta propiedad, consulta Configurar Deploy CLI. En las configuraciones de recursos no basadas en conjuntos, como inquilino y marca, el concepto de vacío no se aplica y no activará ninguna eliminación ni retirada.

Ejemplo de estado vacío

hooks: [] # Hooks vacíos
connections: [] # Conexiones vacías
tenant: {} # Efectivamente un no-op, el estado vacío no aplica a la configuración de recursos no definidos