snow app deploy¶
Crée un paquet d’application dans votre compte Snowflake et synchronise les modifications locales vers la zone de préparation sans créer ou mettre à jour l’application. L’exécution de cette commande sans aucun argument, comme dans snow app deploy, est une abréviation de snow app deploy --prune --recursive.
Syntaxe¶
snow app deploy
<paths>
--prune / --no-prune
--recursive / --no-recursive
--interactive / --no-interactive
--force
--validate / --no-validate
--package-entity-id <package_entity_id>
--app-entity-id <app_entity_id>
--project <project_definition>
--env <env_overrides>
--connection <connection>
--host <host>
--port <port>
--account <account>
--user <user>
--password <password>
--authenticator <authenticator>
--workload-identity-provider <workload_identity_provider>
--private-key-file <private_key_file>
--token <token>
--token-file-path <token_file_path>
--database <database>
--schema <schema>
--role <role>
--warehouse <warehouse>
--temporary-connection
--mfa-passcode <mfa_passcode>
--enable-diag
--diag-log-path <diag_log_path>
--diag-allowlist-path <diag_allowlist_path>
--oauth-client-id <oauth_client_id>
--oauth-client-secret <oauth_client_secret>
--oauth-authorization-url <oauth_authorization_url>
--oauth-token-request-url <oauth_token_request_url>
--oauth-redirect-uri <oauth_redirect_uri>
--oauth-scope <oauth_scope>
--oauth-disable-pkce
--oauth-enable-refresh-tokens
--oauth-enable-single-use-refresh-tokens
--client-store-temporary-credential
--format <format>
--verbose
--debug
--silent
--enhanced-exit-codes
Arguments¶
paths...Chemins, relatifs à la racine du projet, des fichiers ou répertoires que vous souhaitez télécharger dans une zone de préparation. Si un fichier est spécifié, il doit correspondre à l’une des entrées du modèle artifacts src dans le fichier snowflake.yml. Si un répertoire est spécifié, des sous-dossiers ou des fichiers seront recherchés pour un déploiement en fonction des entrées de modèle src des artefacts. Si elle n’est pas spécifiée, la commande synchronise toutes les modifications locales avec la zone de préparation.
Options¶
--prune / --no-pruneSuppression ou non des fichiers spécifiés dans la zone de préparation s’ils n’existent pas localement. Si cette option est activée, la commande supprime les fichiers qui existent dans la zone de préparation, mais pas dans le système de fichiers local. Cette option ne peut pas être utilisée lorsque des chemins sont spécifiés.
--recursive, -r / --no-recursivePermet de parcourir et de déployer des fichiers à partir de sous-répertoires. Si cette option est activée, la commande déploie tous les fichiers et sous-répertoires ; sinon, seuls les fichiers du répertoire actuel sont déployés.
--interactive / --no-interactiveLorsqu’elle est activée, cette option affiche des invites même si l’entrée et la sortie standard ne sont pas des terminaux. La valeur par défaut est True dans un environnement shell interactif et False dans le cas contraire.
--forceLorsqu’elle est activée, cette option permet à la commande d’approuver implicitement toutes les invites qui se présentent. Vous devez activer cette option si le mode interactif n’est pas spécifié et si vous souhaitez effectuer des actions potentiellement destructrices. La valeur par défaut est « non définie ». Par défaut : false.
--validate / --no-validateLorsqu’elle est activée, cette option déclenche la validation du script d’installation SQL d’une Snowflake Native App déployée. Par défaut : True.
--package-entity-id TEXTL’ID de l’entité du paquet sur laquelle opérer lorsque definition_version est la 2 ou supérieure.
--app-entity-id TEXTL’ID de l’entité d’application sur laquelle opérer la definition_version est la 2 ou supérieure.
-p, --project TEXTChemin où le projet Snowflake est stocké. La valeur par défaut est le répertoire de travail actuel.
--env TEXTChaîne au format clé=valeur. Remplace les variables de la section env utilisées pour les modèles. Par défaut : [].
--connection, -c, --environment TEXTNom de la connexion, tel que défini dans votre fichier
config.toml. Défaut :défaut.--host TEXTAdresse de l’hôte pour la connexion. Remplace la valeur spécifiée pour la connexion.
--port INTEGERPort pour la connexion. Remplace la valeur spécifiée pour la connexion.
--account, --accountname TEXTNom attribué à votre compte Snowflake. Remplace la valeur spécifiée pour la connexion.
--user, --username TEXTNom d’utilisateur pour se connecter à Snowflake. Remplace la valeur spécifiée pour la connexion.
--password TEXTMot de passe Snowflake. Remplace la valeur spécifiée pour la connexion.
--authenticator TEXTAuthentificateur Snowflake. Remplace la valeur spécifiée pour la connexion.
--workload-identity-provider TEXTFournisseur d’identité de charge de travail (AWS, AZURE, GCP, OIDC). Remplace la valeur spécifiée pour la connexion.
--private-key-file, --private-key-path TEXTChemin du fichier de clé privée Snowflake. Remplace la valeur spécifiée pour la connexion.
--token TEXTJeton OAuth à utiliser lors de la connexion à Snowflake.
--token-file-path TEXTChemin d’accès au fichier contenant un jeton OAuth à utiliser lors de la connexion à Snowflake.
--database, --dbname TEXTBase de données à utiliser. Remplace la valeur spécifiée pour la connexion.
--schema, --schemaname TEXTSchéma de la base de données à utiliser. Remplace la valeur spécifiée pour la connexion.
--role, --rolename TEXTRôle à utiliser. Remplace la valeur spécifiée pour la connexion.
--warehouse TEXTEntrepôt à utiliser. Remplace la valeur spécifiée pour la connexion.
--temporary-connection, -xUtilise une connexion définie avec les paramètres de la ligne de commande, au lieu d’une connexion définie dans la configuration. Par défaut : false.
--mfa-passcode TEXTJeton à utiliser pour l’authentification multifactorielle (MFA)
--enable-diagIndique s’il faut générer un rapport de diagnostic de la connexion. Par défaut : false.
--diag-log-path TEXTChemin d’accès au rapport généré. Il s’agit du répertoire temporaire du système par défaut. Par défaut : <system_temporary_directory>.
--diag-allowlist-path TEXTChemin d’accès à un fichier JSON contenant les paramètres de la liste d’autorisations.
--oauth-client-id TEXTValeur de l’identifiant du client fourni par le fournisseur d’identité pour l’intégration dans Snowflake.
--oauth-client-secret TEXTValeur du secret du client fourni par le fournisseur d’identité pour l’intégration dans Snowflake.
--oauth-authorization-url TEXTPoint de terminaison du fournisseur d’identité fournissant le code d’autorisation au pilote.
--oauth-token-request-url TEXTPoint de terminaison du fournisseur d’identité fournissant les jetons d’accès au pilote.
--oauth-redirect-uri TEXTURI à utiliser pour la redirection du code d’autorisation.
--oauth-scope TEXTChamp d’application demandé dans la requête d’autorisation du fournisseur d’identité.
--oauth-disable-pkceDésactive la clé de preuve pour l’échange de code (PKCE). Par défaut :
False.--oauth-enable-refresh-tokensPermet une réauthentification silencieuse lorsque le jeton d’accès actuel n’est plus valable. Par défaut :
False.--oauth-enable-single-use-refresh-tokensIndique s’il faut choisir une sémantique de jeton d’actualisation à usage unique. Par défaut :
False.--client-store-temporary-credentialEnregistrez les identifiants de connexion temporaires.
--format [TABLE|JSON|JSON_EXT|CSV]Spécifie le format de sortie. Par défaut : TABLE.
--verbose, -vAffiche les entrées de journal pour les niveaux de journalisation
infoet supérieurs. Par défaut : false.--debugAffiche les entrées de journal pour les niveaux de journalisation
debuget supérieurs ; les journaux de débogage contiennent des informations supplémentaires. Par défaut : false.--silentDésactive la sortie intermédiaire vers la console. Par défaut : false.
--enhanced-exit-codesDifférenciez les codes d’erreur de sortie en fonction du type d’erreur. Par défaut : false.
--helpAffiche le texte d’aide de cette commande.
Notes sur l’utilisation¶
La commande snow app deploy crée un paquet d’application dans votre compte Snowflake, télécharge les fichiers de code dans sa zone de préparation, valide le SQL du script d’installation et exécute tous les scripts post-déploiement définis dans snowflake.yml. Contrairement à la commande snow app run, cette commande n’installe pas ou ne met pas à niveau un objet d’application.
Pour plus d’informations sur le déploiement d’une application avec l’activation des canaux de version, voir Processus avec canaux de version activés.
Exemples¶
Si vous souhaitez créer un paquet d’application à l’aide de fichiers en zone de préparation, vous pouvez exécuter :
cd my_app_project
my_app_project_build_script.sh
snow app deploy --connection="dev"