Restringir las implementaciones nuevas por versión del producto

.

Cloud Run Functions ofrece dos versiones del producto: Cloud Run Functions (1.ª gen.) y Cloud Run Functions creado mediante las APIsGoogle Cloud Functions v2. Si tu organización quiere aplicar una restricción que especifique que solo se puede usar una de las versiones para desplegar nuevas funciones, puedes definir una nueva política de organización con la restricción constraints/cloudfunctions.restrictAllowedGenerations. Esta restricción se usa para especificar la generación (versión) que quieres permitir o denegar en la carpeta o el proyecto en el que se aplica la política.

La restricción solo se aplicará a las funciones nuevas que se implementen por primera vez. Podrás volver a implementar las funciones que ya tengas aunque no cumplan la política.

Antes de empezar

Para crear o cambiar políticas de la organización, tu cuenta debe tener el rol roles/orgpolicy.policyAdmin.

Usar una política para definir y aplicar restricciones

Puedes usar la CLI de Google Cloud para crear una política que impida que se desplieguen por primera vez nuevas funciones de Cloud Run en un entorno específico de una organización determinada.

Ten en cuenta que, si se define una política, no se aplicará a las funciones que ya existan. Todas las funciones que se hayan implementado antes de la política se pueden volver a implementar, actualizar o eliminar sin restricciones.

Para crear una política que restrinja las nuevas funciones de Cloud Run, ejecuta el siguiente comando:

gcloud resource-manager org-policies \
  allow cloudfunctions.restrictAllowedGenerations \
  --organization=ORGANIZATION_NUMBER VERSION

donde ORGANIZATION_NUMBER es el número de la organización a la que quieres aplicar la política y VERSION es la versión de Cloud Run Functions que se debe usar en las nuevas implementaciones. VERSION puede ser uno de los siguientes:

  • 1stGen: permite usar solo Cloud Run Functions (1.ª gen.).
  • 2ndGen: permite usar solo Cloud Run Functions (2.ª gen.).
  • Para permitir explícitamente ambos entornos, especifica 1stGen y 2ndGen juntos. De forma predeterminada, ambos entornos se permiten cuando no se define ninguna política.