Référence des commandes de Declarative Native App¶
Les commandes suivantes incluent de nouveaux paramètres pour prendre en charge la création et la publication de paquets d’application :
CREATE APPLICATION PACKAGE¶
La commande CREATE APPLICATION PACKAGE prend en charge un nouveau paramètre facultatif, TYPE = DATA, qui spécifie que l’application sera une Declarative Native App.
Syntaxe¶
CREATE APPLICATION PACKAGE [ IF NOT EXISTS ] <name> TYPE = DATA
Nouveau paramètre facultatif :
TYPE = [ DATA | NATIVE ]Spécifie le type de paquet d’application à créer :
DATA: indique que le paquet d’application contiendra une Declarative Native App.NATIVE: indique que le paquet d’application contiendra une Snowflake Native App. Il s’agit de la valeur par défaut.
Après avoir spécifié un type de paquet d’application, vous ne pouvez pas utiliser ALTER APPLICATION PACKAGE pour modifier le type ultérieurement.
Lorsque
TYPE = DATAest spécifié, les autres paramètres de cette commande, tels que DATA_RETENTION_TIME_IN_DAYS et COMMENT, ne sont pas pris en charge.Ce paramètre nécessite un rôle avec les privilèges CREATE APPLICATION PACKAGE et CREATE DATABASE :ref:` <label-access_control_overview_privileges>`.
Le créateur du paquet d’application reçoit automatiquement le privilège OWNERSHIP sur ce paquet d’application.
ALTER APPLICATION PACKAGE¶
La commande ALTER APPLICATION PACKAGE prend en charge les nouveaux paramètres facultatifs suivants pour prendre en charge la création et la publication des Declarative Native Apps. Ces nouveaux paramètres ne sont pas pris en charge pour les Snowflake Native Apps.
Syntaxe¶
ALTER APPLICATION PACKAGE <name>
[ ADD LIVE VERSION
| ADD VERSION FROM @STAGE/path
| BUILD
| COMMIT
| RELEASE [LIVE VERSION]
| ABORT LIVE VERSION ]
[COMMENT = 'string_literal']
Nouveaux paramètres facultatifs¶
ADD LIVE VERSIONCréez une version active du paquet d’application qui peut être modifiée. Cette version active est utilisée pour ajouter ou mettre à jour des fichiers, tels que le fichier manifeste et les fichiers notebook.
ADD VERSION FROM @<STAGE>/<path>Crée une version active du paquet d’application à partir de fichiers provenant d’une zone de préparation. Cette méthode est utile si vous souhaitez inclure un ensemble de fichiers dans le paquet d’application, et que vous souhaitez les ajouter tous en même temps.
Note
Si vous itérez sur les fichiers après avoir créé la version active, vous devrez apporter les mêmes modifications aux fichiers sur la zone de préparation pour préserver la cohérence des futures versions.
BUILDConstruit l’application, mais ne la valide pas. Utilisez cette commande pour valider le fichier manifeste et continuer à travailler sur le paquet d’application.
COMMITConstruit l’application, la valide pour la publication, mais ne la publie pas.
Le processus de validation prépare le paquet d’application pour la publication en ajoutant un numéro de version interne et rend le paquet d’application immuable.
RELEASEPublie une version validée de l’application dans la Snowflake Marketplace.
RELEASE LIVE VERSIONConstruit l’application, la valide pour la publication et la publie dans la Snowflake Marketplace.
Équivalent à l’exécution des commandes BUILD, COMMIT, et RELEASE dans l’ordre.
ABORT LIVE VERSIONSupprime la version LIVE du paquet d’application. Restaure le paquet d’application sur la dernière version validée.
Paramètres existants¶
Ces paramètres sont pris en charge à la fois pour Declarative Native Apps et Snowflake Native Apps.
<name>Spécifie l’identificateur pour le paquet d’application.
Si l’identificateur contient des espaces, des caractères spéciaux ou des caractères majuscules et minuscules, toute la chaîne doit être délimitée par des guillemets doubles. Les identificateurs entre guillemets doubles sont également sensibles à la casse.
COMMENT = 'string_literal'
En option : Ajoute un commentaire ou remplace un commentaire existant pour la version de l’application. Ce commentaire est affiché dans SHOW APPLICATION PACKAGES.
Exigences en matière de contrôle d’accès¶
Cette commande requiert un rôle avec le privilège OWNERSHIP pour le paquet d’application.
Exemples¶
Créez un nouveau paquet d’application :
CREATE APPLICATION PACKAGE market_data_app TYPE = DATA;
Créez une version active du paquet d’application qui peut être modifiée :
ALTER APPLICATION PACKAGE market_data_app ADD LIVE VERSION COMMENT = 'Market views for Northern region';
Créez une nouvelle version du paquet d’application à partir d’un paquet d’application de zone de préparation existant :
ALTER APPLICATION PACKAGE market_data_app ADD VERSION FROM @my_stage/market_data_app_v1;
Créez le paquet d’application, mais ne le validez pas :
ALTER APPLICATION PACKAGE market_data_app BUILD;
Créez et validez le paquet d’application pour la publication, mais ne le publiez pas :
ALTER APPLICATION PACKAGE market_data_app COMMIT COMMENT = 'Market views for North and East regions';
Publiez le paquet d’application sur la Snowflake Marketplace :
ALTER APPLICATION PACKAGE market_data_app RELEASE;
Créez, validez et publiez la version active du paquet d’application sur la Snowflake Marketplace :
ALTER APPLICATION PACKAGE market_data_app RELEASE LIVE VERSION COMMENT = 'Market views for North, East, and West regions';
Après avoir ajouté une version active de l’application et l’avoir modifiée, arrêtez la modification et restaurez la dernière version validée :
ALTER APPLICATION PACKAGE market_data_app ABORT LIVE VERSION
GRANT IMPORTED PRIVILEGES ON APPLICATION¶
La commande GRANT IMPORTED PRIVILEGES prend en charge un nouveau paramètre facultatif, ON APPLICATION <nom>.
Cette commande permet aux consommateurs d’accorder l’accès à toutes les données et vues d’une Declarative Native App à d’autres membres de leur organisation.
Cette commande peut être utilisée sur n’importe quelle Declarative Native App, et ne nécessite pas que les rôles de l’application soient définis pour le paquet d’application.
Exigences en matière de contrôle d’accès¶
Cette commande requiert un rôle avec le privilège OWNER pour l’application installée.
Syntaxe¶
GRANT IMPORTED PRIVILEGES ON APPLICATION <name> TO ROLE <role_name>;
Exemple¶
GRANT IMPORTED PRIVILEGES ON APPLICATION market_data_app TO ROLE marketing_team_east;