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>
  --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
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.ymlangegebenen Patch verwendet oder automatisch eine neue Patch-Nummer generiert.
- --label TEXT
- Eine Bezeichnung für die Version, die den Verbrauchern angezeigt wird. Wenn diese Option deaktiviert ist, wird die in der Datei - manifest.ymlangegebene Versionsbezeichnung verwendet.
- --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 
- --from-stage
- Wenn diese Option aktiviert ist, erstellt Snowflake CLI eine Version aus dem aktuellen Stagingbereich des Anwendungspakets, ohne vorher mit dem Stagingbereich zu synchronisieren. 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, mit der gearbeitet werden soll, wenn definition_version 2 oder höher ist. 
- --app-entity-id TEXT
- Die ID der Anwendungsentität, mit der gearbeitet werden soll, wenn die definition_version 2 oder höher ist. 
- -p, --project TEXT
- Pfad, unter dem das Snowflake-Projekt gespeichert ist. Standardmäßig wird das aktuelle Verzeichnis als Arbeitsverzeichnis verwendet. 
- --env TEXT
- Zeichenfolge im Format Schlüssel=Wert. Überschreibt die Variablen aus dem Abschnitt env, 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. 
- --workload-identity-provider TEXT
- Workload-Identitätsanbieter (AWS, AZURE, GCP, OIDC). Ü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 TEXT
- OAuth-Token, das bei der Verbindung mit Snowflake verwendet werden soll. 
- --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
- Ob ein Verbindungsdiagnosebericht erstellt werden soll. Standard: false 
- --diag-log-path TEXT
- Pfad für den generierten Bericht. Standardmäßig wird das temporäre Verzeichnis des Systems verwendet. Standard: <system_temporary_directory>. 
- --diag-allowlist-path TEXT
- Pfad zu einer JSON-Datei, die allowlist-Parameter enthält. 
- --oauth-client-id TEXT
- Wert der Client-ID, die vom Identitätsanbieter für die Snowflake-Integration bereitgestellt wird. 
- --oauth-client-secret TEXT
- Wert des Client-Geheimnisses, das vom Identitätsanbieter für die Snowflake-Integration bereitgestellt wird. 
- --oauth-authorization-url TEXT
- Endpunkt des Identitätsanbieters, der den Autorisierungscode an den Treiber liefert. 
- --oauth-token-request-url TEXT
- Endpunkt des Identitätsanbieters, der die Zugriffstoken für den Treiber bereitstellt. 
- --oauth-redirect-uri TEXT
- Für die Umleitung des Autorisierungscodes zu verwendende URI. 
- --oauth-scope TEXT
- Bereich, der in der Autorisierungsanfrage des Identitätsanbieters angefordert wird. 
- --oauth-disable-pkce
- Deaktiviert den Proof Key For Code Exchange (PKCE). Standard: - False.
- --oauth-enable-refresh-tokens
- Ermöglicht eine stille Neuauthentifizierung, wenn das aktuelle Zugriffstoken veraltet ist. Standard: - False.
- --oauth-enable-single-use-refresh-tokens
- Ob Sie sich für die Semantik des einmaligen Aktualisierungs-Tokens entscheiden. Standard: - False.
- --client-store-temporary-credential
- Speichern der temporären Anmeldeinformationen. 
- --format [TABLE|JSON|JSON_EXT|CSV]
- Gibt das Ausgabeformat an. Standard: TABLE. 
- --verbose, -v
- Zeigt Protokolleinträge für die Protokolliergrade - infound höher an. Standard: false
- --debug
- Zeigt Protokolleinträge für die Protokollebenen - debugund höher an; Debug-Protokolle enthalten zusätzliche Informationen. Standard: false
- --silent
- Schaltet Zwischenausgaben auf der Konsole aus. Standard: false 
- --enhanced-exit-codes
- Exit-Fehlercodes nach Art des Fehlers unterscheiden. 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.ymlangegebene Version. Wenn die Version nicht in der Datei- manifest.ymlvorhanden ist, gibt der Befehl einen Fehler aus.
- Wenn Sie sowohl das „version“-Argument als auch die Option - --patchangeben 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 - --patchangeben 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_SNOWCLIgetaggt. Es werden auch alle Post-Deploy-Hooks ausgeführt und Codedateien in den Stagingbereich hochgeladen.
- Wenn das Anwendungspaket bereits existiert und seine Verteilungseigenschaft - INTERNALlautet, 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 Anwendungspakets- EXTERNAList, 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 - --patchangeben, 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.
- Die Option - --labellegt eine Bezeichnung für die mit diesem Befehl erstellte Version oder den Patch fest. Falls spezifiziert, überschreibt dieser Wert die Bezeichnung für die- Version, die in der- manifest.yml-Datei der Anwendung definiert ist.
- Wenn Sie eine benannte Version angeben, wie - snow app version create my_version, wird das Feld- Versionin der Datei- manifest.ymlignoriert.
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"
Verwenden Sie den folgenden Befehl, um eine neue Version aus dem aktuellen Inhalt des Stagingbereichs zu erstellen, ohne vorher Dateien mit dem Stagingbereich zu synchronisieren:
snow app version create V1 --from-stage --connection="dev"