Limiter les nouveaux déploiements par version de produit

.

Cloud Run Functions propose deux versions de produit : Cloud Run Functions (1re génération) et Cloud Run Functions créées via les APIGoogle Cloud Functions V2. Si votre organisation souhaite appliquer une limitation spécifiant qu'une seule des versions peut être utilisée pour déployer de nouvelles fonctions, vous pouvez définir une nouvelle règle d'administration avec la contrainte constraints/cloudfunctions.restrictAllowedGenerations. Vous utilisez cette contrainte pour spécifier la génération (version) que vous souhaitez autoriser ou refuser dans le dossier ou le projet auquel la règle est appliquée.

La limitation ne s'applique qu'aux nouvelles fonctions déployées pour la première fois. Vous pourrez toujours redéployer les fonctions existantes, même si elles ne sont pas conformes à la règle.

Avant de commencer

Pour créer ou modifier des règles d'administration, votre compte doit disposer du rôle roles/orgpolicy.policyAdmin.

Utiliser une règle pour définir et appliquer des limitations

Vous pouvez utiliser Google Cloud CLI pour créer une règle qui limite le déploiement pour la première fois des nouvelles fonctions Cloud Run dans une organisation donnée à l'environnement spécifié.

Notez que la définition d'une règle ne s'applique pas aux fonctions existantes. Toutes les fonctions qui ont été déployées avant la règle peuvent être redéployées, mises à jour ou supprimées sans limitation.

Pour créer une stratégie qui limite les nouvelles fonctions Cloud Run, exécutez la commande suivante:

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

ORGANIZATION_NUMBER est le numéro de l'organisation à laquelle vous souhaitez appliquer la règle, et VERSION est la version de Cloud Run Functions à utiliser pour les nouveaux déploiements. La valeur attendue pour VERSION peut être l'une des suivantes :

  • 1stGen : autorise seulement l'utilisation de Cloud Run Functions (1st gen).
  • 2ndGen : autorise seulement l'utilisation de Cloud Run Functions (2nd gen).
  • Pour autoriser explicitement les deux environnements, spécifiez 1stGen et 2ndGen ensemble. Par défaut, les deux environnements sont autorisés lorsqu'aucune règle n'est définie.