Limiter les nouveaux déploiements par version de produit

Cloud Run Functions propose deux versions de produit : Cloud Run Functions (1re génération), qui est la version d'origine, et Cloud Run Functions (anciennement appelée 2e génération). Si votre organisation souhaite appliquer une restriction 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 restriction 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 restrictions

Vous pouvez utiliser la Google Cloud CLI ou la console Google Cloud pour créer une règle qui limite à l'environnement spécifié les nouvelles fonctions Cloud Run qui sont déployées pour la première fois dans une organisation donnée.

Notez que lorsque vous définissez une règle, elle ne s'applique pas aux fonctions existantes. Toutes les fonctions qui ont été déployées avant la création de la règle peuvent être redéployées, mises à jour ou supprimées sans restriction.

Console

  1. Accédez à la page "Règles d'administration" dans la console Google Cloud .
    Accéder à la page Règles d'administration

  2. Sélectionnez le projet, le dossier ou l'organisation auquel vous souhaitez ajouter la nouvelle règle.

    La page "Règles d'administration" affiche la liste des contraintes de règles d'administration disponibles.

  3. Recherchez la règle Générations Cloud Functions autorisées dans la liste. Vous pouvez utiliser le champ Filtre en haut de la liste.

  4. Cliquez sur le nom de la règle. Vous pouvez également sélectionner Modifier la règle dans le menu contextuel.

  5. Cliquez sur Gérer la règle.

  6. Sélectionnez Personnaliser sous Applicable à.

  7. Sélectionnez Remplacer sous Application des règles.

  8. Cliquez sur Ajouter une règle sous Règles.

  9. Sélectionnez Personnalisé pour Valeurs de la règle.

  10. Sélectionnez Autoriser pour Type de règle.

  11. Dans Valeur personnalisée, spécifiez l'environnement que vous souhaitez appliquer dans l'organisation. Valeurs autorisées :

    • 1stGen : autorise seulement l'utilisation de Cloud Run Functions (1re génération).
    • 2ndGen : autorise seulement l'utilisation de Cloud Run Functions (anciennement 2e génération).
    • Pour autoriser explicitement les deux environnements, spécifiez à la fois 1stGen et 2ndGen. Par défaut, les deux environnements sont autorisés lorsqu'aucune règle n'est définie.
  12. Cliquez sur OK.

  13. Cliquez sur Enregistrer.

Les modifications prendront effet rapidement, et la règle empêchera le déploiement de Cloud Run Functions dans l'environnement spécifié.

gcloud

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. VERSION peut être :

  • 1stGen : autorise seulement l'utilisation de Cloud Run Functions (1re génération).
  • 2ndGen : autorise seulement l'utilisation de Cloud Run Functions (2e génération).
  • Pour autoriser explicitement les deux environnements, spécifiez à la fois 1stGen et 2ndGen. Par défaut, les deux environnements sont autorisés lorsqu'aucune règle n'est définie.