snow app version create¶
Fügt einen neuen Patch zu der in Ihrem Anwendungspaket definierten Version hinzu. Wenn die Version nicht existiert, wird eine Version mit Patch 0 erstellt.
Syntax¶
snow app version create
<version>
--patch <patch>
--skip-git-check
--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>
--private-key-file <private_key_file>
--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>
--format <format>
--verbose
--debug
--silent
Argumente¶
version
Version, die in Ihrem Anwendungspaket definiert werden soll. Wenn die Version bereits existiert, wird stattdessen ein automatisch inkrementierter Patch zu der Version hinzugefügt. Standardmäßig wird die Version verwendet, die in der
manifest.yml
-Datei angegeben ist.
Optionen¶
--patch INTEGER
Die Patch-Nummer, die Sie für eine bestehende Version erstellen möchten. Der Standardwert ist undefiniert, wenn er nicht gesetzt ist. Das bedeutet, dass Snowflake CLI entweder den in der Datei
manifest.yml
angegebenen Patch verwendet oder automatisch eine neue Patch-Nummer generiert.--skip-git-check
Wenn diese Option aktiviert ist, überspringt Snowflake CLI die Überprüfung, ob Ihr Projekt nicht verfolgte Dateien oder Stagingbereiche in Git hat. Standard: nicht aktiviert. Standard: false
--interactive / --no-interactive
Wenn diese Option aktiviert ist, werden Eingabeaufforderungen auch dann angezeigt, wenn die Standardeingabe und -ausgabe keine Terminalgeräte sind. In einer interaktiven Shell-Umgebung ist der Standardwert True, andernfalls False.
--force
Wenn diese Option aktiviert ist, genehmigt der Befehl implizit jede Eingabeaufforderung, die auftaucht. Sie sollten diese Option aktivieren, wenn der interaktive Modus nicht angegeben ist und wenn Sie potenziell destruktive Aktionen ausführen möchten. Standard: nicht aktiviert. Standard: false
--package-entity-id TEXT
Die ID der Paketentität, auf der die Operation ausgeführt werden soll, wenn definition_version 2 oder höher ist.
--app-entity-id TEXT
Die ID der Anwendungsentität, auf der die Operation ausgeführt werden soll, wenn definition_version 2 oder höher ist.
-p, --project TEXT
Pfad, in dem sich das Snowflake-Projekt befindet. Standardmäßig wird das aktuelle Verzeichnis verwendet.
--env TEXT
Zeichenfolge im Format von Schlüssel=Wert. Überschreibt Variablen aus dem env-Abschnitt, die für Vorlagen verwendet werden. Standard: [].
--connection, -c, --environment TEXT
Name der Verbindung, wie in Ihrer
config.toml
-Datei definiert. Standard:Standard
.--host TEXT
Host-Adresse für die Verbindung. Überschreibt den für die Verbindung angegebenen Wert.
--port INTEGER
Port für die Verbindung. Überschreibt den für die Verbindung angegebenen Wert.
--account, --accountname TEXT
Name, der Ihrem Snowflake-Konto zugewiesen wurde. Überschreibt den für die Verbindung angegebenen Wert.
--user, --username TEXT
Benutzername für die Verbindung zu Snowflake. Überschreibt den für die Verbindung angegebenen Wert.
--password TEXT
Snowflake-Kennwort. Überschreibt den für die Verbindung angegebenen Wert.
--authenticator TEXT
Snowflake-Authentifikator. Überschreibt den für die Verbindung angegebenen Wert.
--private-key-file, --private-key-path TEXT
Dateipfad zum privaten Snowflake-Schlüssel. Überschreibt den für die Verbindung angegebenen Wert.
--token-file-path TEXT
Pfad zur Datei mit einem OAuth-Token, das bei der Verbindung mit Snowflake verwendet werden soll.
--database, --dbname TEXT
Zu verwendende Datenbank. Überschreibt den für die Verbindung angegebenen Wert.
--schema, --schemaname TEXT
Zu verwendendes Datenbankschema. Überschreibt den für die Verbindung angegebenen Wert.
--role, --rolename TEXT
Zu verwendende Rolle. Überschreibt den für die Verbindung angegebenen Wert.
--warehouse TEXT
Zu verwendendes Warehouse. Überschreibt den für die Verbindung angegebenen Wert.
--temporary-connection, -x
Verwendet eine mit Befehlszeilenparametern definierte Verbindung anstelle einer in config definierten. Standard: false
--mfa-passcode TEXT
Für die mehrstufige Authentifizierung (MFA) zu verwendendes Token.
--enable-diag
Führt den Python-Konnektor-Diagnosetest aus. Standard: false
--diag-log-path TEXT
Pfad des Diagnoseberichts. Standard: <temporary_directory>.
--diag-allowlist-path TEXT
Pfad des Diagnoseberichts zur optionalen Zulassungsliste.
--format [TABLE|JSON]
Gibt das Ausgabeformat an. Standard: TABLE.
--verbose, -v
Zeigt Protokolleinträge für die Protokolliergrade
info
und höher an. Standard: false--debug
Zeigt Protokolleinträge für die Protokollebenen
debug
und höher an; Debug-Protokolle enthalten zusätzliche Informationen. Standard: false--silent
Schaltet Zwischenausgaben auf der Konsole aus. Standard: false
--help
Zeigt den Hilfetext für diesen Befehl an.
Nutzungshinweise¶
Bemerkung
Dieser Befehl akzeptiert keine Rollen- oder Warehouse-Überschreibungen in Ihrer config.toml
-Datei. Fügen Sie sie stattdessen der Native App-Definition in snowflake.yml
oder snowflake.local.yml
hinzu.
Dieser Befehl erstellt ein Anwendungspaket (falls es nicht existiert) mit einer Version und einem optionalen Patch.
Wenn Sie keine Version angeben, verwendet der Befehl die in der Datei
manifest.yml
angegebene Version. Wenn die Version nicht in der Dateimanifest.yml
vorhanden ist, gibt der Befehl einen Fehler aus.Wenn Sie sowohl das „version“-Argument als auch die Option
--patch
angeben und das Anwendungspaket nicht bereits existiert, gibt der Befehl einen Fehler aus. Geben Sie nur das „version“-Argument an, um ein neues Anwendungspaket mit der angeforderten Version zu erstellen.Wenn Sie sowohl das „version“-Argument als auch die Option
--patch
angeben und die Version nicht bereits existiert, gibt der Befehl einen Fehler aus. Sie sollten das „version“-Argument nur angeben, um eine neue Version mit einem vorgegebenen Patch 0 zu erstellen.Wenn Sie in einem Git-Repository arbeiten und diesen Befehl ausführen, prüft der Befehl, ob lokale Änderungen an Ihrer Arbeitskopie vorliegen. Wenn lokale Änderungen gefunden werden, werden Sie aufgefordert, zu bestätigen, dass es sicher ist, fortzufahren. Sie können diese Prüfung mit der Option
--skip-git-check
überspringen.Wenn das Anwendungspaket nicht existiert, wird ein neues erstellt von Snowflake CLI erstellt und mit einem speziellen Kommentar
GENERATED_BY_SNOWCLI
getaggt. Es werden auch alle Post-Deploy-Hooks ausgeführt und Codedateien in den Stagingbereich hochgeladen.Wenn das Anwendungspaket bereits existiert und seine Verteilungseigenschaft
INTERNAL
lautet, prüft der Befehl, ob das Paket von Snowflake CLI erstellt wurde. Wenn dies nicht der Fall ist, gibt der Befehl einen Fehler aus. Wenn die Verteilung des AnwendungspaketsEXTERNAL
ist, wird keine solche Prüfung ausgeführt.Der Befehl warnt Sie zwar, wenn das verwendete Anwendungspaket einen anderen Wert für die Verteilung hat, als in Ihrer aufgelösten Projektdefinition festgelegt ist, setzt aber die Ausführung fort.
Wenn die Version in einer Release-Richtlinie für das Anwendungspaket referenziert wird, fordert der Befehl Sie auf, zu bestätigen, dass Sie einen Patch für diese Version erstellen möchten.
Wenn die Version bereits existiert und Sie keine Option
--patch
angeben, erhöht das Native Apps Framework automatisch die Patch-Nummer für diese bestehende Version. Andernfalls erstellt es einen kundenspezifischen Patch unter der von Ihnen bereitgestellten Version.
Beispiele¶
Bei diesen Beispielen wird davon ausgegangen, dass Sie die erforderlichen Änderungen an Ihren Codedateien vorgenommen und sie zu Ihrer snowflake.yml
- oder snowflake.local.yml
-Dateien hinzugefügt haben.
Wenn Sie ein Anwendungspaket erstellen und ihm eine Version V1 hinzufügen möchten, verwenden Sie den folgenden Befehl:
snow app version create V1 --connection="dev"
Sie können den obigen Befehl auch verwenden, um eine Version V1 für ein bestehendes Anwendungspaket zu erstellen.
Wenn Sie der Version V1 einen Patch hinzufügen möchten, indem Sie die automatische Inkrementierungsfunktion verwenden und den interaktiven Modus aufrufen, verwenden Sie den folgenden Befehl:
snow app version create V1 --interactive --connection="dev"
Wenn Sie der Version V1
eine benutzerdefinierte Patch-Nummer hinzufügen und den interaktiven Modus umgehen möchten, auch wenn Sie sich in einer interaktiven Shell befinden, verwenden Sie den folgenden Befehl:
snow app version create V1 --patch 42 --force --connection="dev"