snow app version create¶
Ajoute un nouveau correctif à la version fournie définie dans votre paquet d’application. Si la version n’existe pas, crée une version avec le correctif 0.
Syntaxe¶
snow app version create
  <version>
  --patch <patch>
  --label <label>
  --skip-git-check
  --from-stage
  --interactive / --no-interactive
  --force
  --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¶
versionVersion à définir dans votre paquet d’application. Si la version existe déjà, un correctif auto-incrémenté est ajouté à la version. La version par défaut est celle spécifiée dans le fichier
manifest.yml.
Options¶
--patch INTEGERLe numéro de correctif que vous souhaitez créer pour une version existante. La valeur par défaut est undefined si elle n’est pas définie, ce qui signifie que CLI Snowflake utilise le correctif spécifié dans le fichier
manifest.ymlou génère automatiquement un nouveau numéro de correctif.--label TEXTUne étiquette pour la version qui est présentée aux consommateurs. Si elle n’est pas définie, l’étiquette de la version spécifiée dans le fichier
manifest.ymlest utilisée.--skip-git-checkLorsque cette option est activée, CLI Snowflake ne vérifie pas si votre projet a des fichiers en zone de préparation ou non suivis dans git. Valeur par défaut : non définie. Par défaut : false.
--from-stageLorsque cette option est activée, la CLI Snowflake crée une version à partir de la zone de préparation actuelle du paquet d’application sans synchronisation préalable avec la zone de préparation. Par défaut : false.
--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.
--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¶
Note
Cette commande n’accepte pas les dérogations à votre fichier config.toml en matière de rôle ou d’entrepôt. Veuillez plutôt les ajouter à la définition de l’application native dans snowflake.yml ou snowflake.local.yml.
Cette commande crée un paquet d’application (s’il n’existe pas) avec une version et un correctif optionnel.
Si vous ne fournissez pas de version, la commande utilise la version spécifiée dans le fichier
manifest.yml. Si la version n’est pas présente dans le fichiermanifest.yml, la commande génère une erreur.Si vous fournissez à la fois l’argument de la version et l’option
--patch, et que le paquet d’application n’existe pas encore, la commande génère une erreur. Vous ne devez fournir l’argument de la version que pour créer un nouveau paquet d’application avec la version requise.Si vous fournissez à la fois l’argument de version et l’option
--patch, et que la version n’existe pas encore, la commande génère une erreur. Vous ne devez fournir l’argument de version que pour créer une nouvelle version avec un correctif 0 prédéterminé.Si vous travaillez dans un référentiel Git et que vous exécutez cette commande, celle-ci vérifie les modifications locales apportées à votre copie de travail. S’il détecte des modifications locales, il vous invite à confirmer si vous pouvez poursuivre en toute sécurité. Vous pouvez ignorer cette vérification en utilisant l’option
--skip-git-check.Si le paquet d’application n’existe pas, un nouveau est créé par Snowflake CLI et est libellé par un commentaire spécial
GENERATED_BY_SNOWCLI. Il exécute également les éventuels scripts post-déploiement et charge les fichiers de code vers la zone de préparation.Si le paquet d’application existe déjà et que sa propriété de distribution est
INTERNAL, la commande vérifie si le paquet a été créé par Snowflake CLI. Dans le cas contraire, la commande génère une erreur. Si la distribution du paquet d’application estEXTERNAL, aucune vérification de ce type n’est effectuée.La commande vous avertit si le paquet d’application avec lequel vous travaillez a une valeur de distribution différente de celle définie dans la définition de votre projet résolu, mais poursuit l’exécution.
Si la version est référencée dans une directive de version du paquet d’application, la commande vous invite à confirmer si vous souhaitez créer un correctif sur cette version.
Si la version existe déjà et que vous ne fournissez pas d’option
--patch, le Native Apps Framework incrémente automatiquement le numéro de correctif de cette version existante. Sinon, il crée un correctif personnalisé sous la version que vous avez fournie.L’option
--labelpermet d’établir un paramètre pour la version ou le correctif créé avec cette commande. Si elle est spécifiée, cette valeur remplace l’étiquette spécifiée pour la version :codenowrap:`` définie dans le fichiermanifest.ymlde l’application.Si vous spécifiez une version nommée, telle que
snow app version create my_version, le champversiondu fichiermanifest.ymlest ignoré.
Exemples¶
Ces exemples supposent que vous avez apporté les modifications nécessaires à vos fichiers de code et que vous les avez ajoutés à vos fichiers snowflake.yml ou snowflake.local.yml.
Si vous souhaitez créer un paquet d’application et y ajouter une version V1, utilisez la commande suivante :
snow app version create V1 --connection="dev"
Vous pouvez également utiliser la commande ci-dessus pour créer une version V1 sur un paquet d’application existant.
Si vous souhaitez ajouter un correctif à la version V1 en utilisant la fonctionnalité d’auto-incrémentation et en invoquant le mode interactif, utilisez la commande suivante :
snow app version create V1 --interactive --connection="dev"
Si vous souhaitez ajouter un numéro de correctif personnalisé à la version V1 et contourner le mode interactif même si vous êtes dans un shell interactif, utilisez la commande suivante :
snow app version create V1 --patch 42 --force --connection="dev"
Pour créer une nouvelle version à partir du contenu actuel de la zone de préparation sans mettre les fichiers en zone de préparation, utilisez la commande suivante :
snow app version create V1 --from-stage --connection="dev"