Définir la directive de version d’une application

Cette rubrique explique comment paramétrer la directive de version d’un paquet d’application.

À propos des directives de version

Les directives de version déterminent la version de l’application qui est disponible pour un consommateur lorsqu’il installe ou met à jour une application. Les directives de version sont définies dans le paquet d’application à l’aide de la commande ALTER APPLICATION PACKAGE.

Il existe deux types de directives de version :

Directive de version personnalisée

Permet à un fournisseur de spécifier la version d’une application que des comptes Snowflake spécifiques peuvent installer. Pour plus d’informations, voir Ajouter une directive de version personnalisée.

Directive de version par défaut

Spécifie la version et le correctif applicables à tous les consommateurs lors de l’installation d’une Snowflake Native App. Si un fournisseur crée des versions V1 et V2 d’une application, le fait de paramétrer la directive de version par défaut sur V2 garantit que lorsqu’un consommateur installe la version Snowflake Native App, il l’installe.

Pour plus d’informations, voir Définir une directive de version par défaut.

Si un fournisseur crée les versions V2 et V3 d’une application, il peut assigner V2 comme version par défaut et créer une directive de version personnalisée pour partager V3 uniquement avec des comptes spécifiques. Un fournisseur peut également partager la version V3 de l’application avec un compte test avant de publier cette version.

Note

Si vous spécifiez à la fois une directive de version par défaut et une directive de version personnalisée, la directive de version personnalisée est toujours prioritaire. Dans l’exemple ci-dessus, les comptes consommateurs spécifiés dans la directive de version personnalisée ne pourront installer que la version V3 de l’application.

Vous devez définir une directive de version dans un paquet d’application avant de pouvoir effectuer les tâches suivantes :

  • Créer une annonce publique avec le paquet d’application comme contenu de données.

  • Installer une Snowflake Native App sur un compte consommateur.

Privilèges nécessaires pour définir la directive de version

Pour définir une directive de version, un fournisseur doit avoir le privilège MANAGE RELEASES ou être propriétaire du paquet d’application.

GRANT MANAGE RELEASES ON APPLICATION PACKAGE hello_snowflake_package
  TO ROLE release_mgr;
Copy

Définition de la directive de version par défaut

Utilisez la commande ALTER APPLICATION PACKAGE avec SET DEFAULT RELEASE DIRECTIVE pour définir la directive de version par défaut, comme indiqué dans l’exemple suivant :

ALTER APPLICATION PACKAGE hello_snowflake_package
  SET DEFAULT RELEASE DIRECTIVE
  VERSION = v1_0
  PATCH = 2;
Copy

Pour mettre à jour la directive de version par défaut d’un paquet d’application, exécutez de nouveau la commande ALTER APPLICATION PACKAGE avec SET DEFAULT RELEASE DIRECTIVE, en spécifiant de nouvelles valeurs pour VERSION ou PATCH, le cas échéant.

Définition et mise à jour d’une directive de version personnalisée

Définition d’une directive de version personnalisée

Pour ajouter une directive de version personnalisée, utilisez la commande ALTER APPLICATION PACKAGE avec SET RELEASE DIRECTIVE. Utilisez la clause ACCOUNTS pour spécifier les comptes auxquels s’applique cette directive de version. Par exemple :

ALTER APPLICATION PACKAGE hello_snowflake_package
  SET RELEASE DIRECTIVE hello_snowflake_package_custom
  ACCOUNTS = (CONSUMER_ORG.CONSUMER_ACCOUNT)
  VERSION = v1_0
  PATCH = 0;
Copy

Mettre à jour une directive de version personnalisée

Pour mettre à jour la version ou le correctif d’une directive de version personnalisée, utilisez la commande ALTER APPLICATION PACKAGE avec MODIFY RELEASE DIRECTIVE comme indiqué dans l’exemple suivant :

ALTER APPLICATION PACKAGE hello_snowflake_package
  MODIFY RELEASE DIRECTIVE hello_snowflake_package_custom
  VERSION = v1_0
  PATCH = 0;
Copy

En revanche, vous ne pouvez pas modifier les comptes associés à la directive de version. Pour modifier l’organisation et le compte associés à une directive de version, procédez comme suit :

  1. Supprimez la directive de version du paquet d’application en exécutant la commande ALTER APPLICATION PACKAGE avec UNSET RELEASE DIRECTIVE.

  2. Ajoutez à nouveau la directive de version au paquet d’application en exécutant la commande ALTER APPLICATION PACKAGE avec SET RELEASE DIRECTIVE et en utilisant la clause ACCOUNTS pour spécifier la liste des comptes.

Note

Lorsque vous modifiez l’organisation et le compte associés à la directive de version, ajoutez la nouvelle directive de version immédiatement après avoir supprimé l’ancienne. Si vous ne le faites pas, les applications installées des comptes attribués à la directive de version personnalisée reviendront à la directive de version par défaut.

Supprimer une directive de version personnalisée

Pour supprimer une directive de version personnalisée d’un paquet d’application, utilisez la commande ALTER APPLICATION PACKAGE avec UNSET RELEASE DIRECTIVE comme indiqué dans l’exemple suivant :

ALTER APPLICATION PACKAGE hello_snowflake_package
  UNSET RELEASE DIRECTIVE hello_snowflake_package_custom;
Copy

Tester une application sur la base d’une directive de version

Lors de l’installation d’une application à partir d’un paquet d’application en mode développement, la version et le correctif sont explicitement spécifiés. Cependant, lorsque l’application est installée à l’aide de la commande suivante :

CREATE APPLICATION hello_snowflake
  FROM APPLICATION PACKAGE hello_snowflake_package
Copy

La directive de version détermine la version qui est installée lors de l’exécution de cette commande.

Afficher les directives de version d’un paquet d’application

Pour voir les directives de version à l’aide de SQL, exécutez la commande SHOW RELEASE DIRECTIVES comme indiqué dans l’exemple suivant :

SHOW RELEASE DIRECTIVES IN APPLICATION PACKAGE hello_snowflake_package;
Copy