snow snowpark deploy¶
Stellt die im Projekt definierten Prozeduren und Funktionen bereit. Durch die Bereitstellung des Projekts werden alle darin definierten Objekte geändert. Wenn eines der Objekte bereits vorhanden ist, schlagen die Befehle standardmäßig fehl, es sei denn, --replace wurde angegeben. Erforderliche Artefakte werden eingesetzt, bevor Funktionen oder Prozeduren erstellt werden. Abhängigkeiten werden einmal für jeden in den Definitionen angegebenen Stagingbereich bereitgestellt.
Syntax¶
snow snowpark deploy
  --replace
  --force-replace
  --prune / --no-prune
  --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¶
Keine
Optionen¶
--replaceErsetzt die Prozedur oder Funktion, wenn es Änderungen in der Definition gab. Es lädt nur neue Dateien hoch und überschreibt vorhandene Dateien, entfernt aber keine Dateien, die sich bereits im Stagingbereich befinden. Standard: false
--force-replaceErsetzen Sie dieses Objekt, auch wenn sich der Zustand nicht geändert hat. Standard: false
--prune / --no-pruneEntfernen Sie den Inhalt des Stagingbereichs, bevor Sie Artefakte hochladen. Standard: false
-p, --project TEXTPfad, unter dem das Snowflake-Projekt gespeichert ist. Standardmäßig wird das aktuelle Verzeichnis als Arbeitsverzeichnis verwendet.
--env TEXTZeichenfolge im Format Schlüssel=Wert. Überschreibt die Variablen aus dem Abschnitt env, die für Vorlagen verwendet werden. Standard: [].
--connection, -c, --environment TEXTName der Verbindung, wie in Ihrer
config.toml-Datei definiert. Standard:Standard.--host TEXTHost-Adresse für die Verbindung. Überschreibt den für die Verbindung angegebenen Wert.
--port INTEGERPort für die Verbindung. Überschreibt den für die Verbindung angegebenen Wert.
--account, --accountname TEXTName, der Ihrem Snowflake-Konto zugewiesen wurde. Überschreibt den für die Verbindung angegebenen Wert.
--user, --username TEXTBenutzername für die Verbindung zu Snowflake. Überschreibt den für die Verbindung angegebenen Wert.
--password TEXTSnowflake-Kennwort. Überschreibt den für die Verbindung angegebenen Wert.
--authenticator TEXTSnowflake-Authentifikator. Überschreibt den für die Verbindung angegebenen Wert.
--workload-identity-provider TEXTWorkload-Identitätsanbieter (AWS, AZURE, GCP, OIDC). Überschreibt den für die Verbindung angegebenen Wert.
--private-key-file, --private-key-path TEXTDateipfad zum privaten Snowflake-Schlüssel. Überschreibt den für die Verbindung angegebenen Wert.
--token TEXTOAuth-Token, das bei der Verbindung mit Snowflake verwendet werden soll.
--token-file-path TEXTPfad zur Datei mit einem OAuth-Token, das bei der Verbindung mit Snowflake verwendet werden soll.
--database, --dbname TEXTZu verwendende Datenbank. Überschreibt den für die Verbindung angegebenen Wert.
--schema, --schemaname TEXTZu verwendendes Datenbankschema. Überschreibt den für die Verbindung angegebenen Wert.
--role, --rolename TEXTZu verwendende Rolle. Überschreibt den für die Verbindung angegebenen Wert.
--warehouse TEXTZu verwendendes Warehouse. Überschreibt den für die Verbindung angegebenen Wert.
--temporary-connection, -xVerwendet eine mit Befehlszeilenparametern definierte Verbindung anstelle einer in config definierten. Standard: false
--mfa-passcode TEXTFür die mehrstufige Authentifizierung (MFA) zu verwendendes Token.
--enable-diagOb ein Verbindungsdiagnosebericht erstellt werden soll. Standard: false
--diag-log-path TEXTPfad für den generierten Bericht. Standardmäßig wird das temporäre Verzeichnis des Systems verwendet. Standard: <system_temporary_directory>.
--diag-allowlist-path TEXTPfad zu einer JSON-Datei, die allowlist-Parameter enthält.
--oauth-client-id TEXTWert der Client-ID, die vom Identitätsanbieter für die Snowflake-Integration bereitgestellt wird.
--oauth-client-secret TEXTWert des Client-Geheimnisses, das vom Identitätsanbieter für die Snowflake-Integration bereitgestellt wird.
--oauth-authorization-url TEXTEndpunkt des Identitätsanbieters, der den Autorisierungscode an den Treiber liefert.
--oauth-token-request-url TEXTEndpunkt des Identitätsanbieters, der die Zugriffstoken für den Treiber bereitstellt.
--oauth-redirect-uri TEXTFür die Umleitung des Autorisierungscodes zu verwendende URI.
--oauth-scope TEXTBereich, der in der Autorisierungsanfrage des Identitätsanbieters angefordert wird.
--oauth-disable-pkceDeaktiviert den Proof Key For Code Exchange (PKCE). Standard:
False.--oauth-enable-refresh-tokensErmöglicht eine stille Neuauthentifizierung, wenn das aktuelle Zugriffstoken veraltet ist. Standard:
False.--oauth-enable-single-use-refresh-tokensOb Sie sich für die Semantik des einmaligen Aktualisierungs-Tokens entscheiden. Standard:
False.--client-store-temporary-credentialSpeichern der temporären Anmeldeinformationen.
--format [TABLE|JSON|JSON_EXT|CSV]Gibt das Ausgabeformat an. Standard: TABLE.
--verbose, -vZeigt Protokolleinträge für die Protokolliergrade
infound höher an. Standard: false--debugZeigt Protokolleinträge für die Protokollebenen
debugund höher an; Debug-Protokolle enthalten zusätzliche Informationen. Standard: false--silentSchaltet Zwischenausgaben auf der Konsole aus. Standard: false
--enhanced-exit-codesExit-Fehlercodes nach Art des Fehlers unterscheiden. Standard: false
--helpZeigt den Hilfetext für diesen Befehl an.
Nutzungshinweise¶
Der Befehl snow snowpark deploy bewirkt Folgendes:
Überprüft, ob die für die Bereitstellung aufgelisteten Objekte bereits existieren. Wenn die Objekte existieren, müssen Sie die Option
--replaceverwenden.Bemerkung
Wenn Sie Objekte und Dateien aktualisieren möchten, auch wenn sie sich nicht geändert haben, können Sie die Option
--force-replaceverwenden.Erstellt einen Stagingbereich in der für Ihre Verbindung angegebenen Datenbank. Wenn kein Stagingbereich definiert ist, erstellt der Befehl einen Stagingbereich namens
deployments.Wenn die Option
--pruneangegeben wurde, werden vorhandene Inhalte aus dem Stagingbereich entfernt, der von definierten Prozeduren und Funktionsobjekten verwendet wird.Lädt die neuen Artefakte hoch.
Erstellt die in der Datei
snowflake.ymlangegebenen Objekte durch Ausführen der Abfragen SQL CREATE PROCEDURE oder CREATE FUNCTION.
Der Befehl stellt den Quellcode und die Abhängigkeiten des letzten Builds bereit. Wenn Sie den Code seit dem letzten Build geändert oder Anforderungen hinzugefügt haben, müssen Sie den Befehl snow snowpark build erneut ausführen, bevor Sie die neue Version bereitstellen.
Beispiele¶
Das folgende Beispiel zeigt, wie Sie Funktionen und Prozeduren im aktuellen Verzeichnis bereitstellen.
snow snowpark deploy
+-----------------------------------------------------------------------------------+
| object                                             | type      | status           |
|----------------------------------------------------+-----------+------------------|
| MY_DATABASE.PUBLIC.HELLO_PROCEDURE(name string)    | procedure | packages updated |
| MY_DATABASE.PUBLIC.TEST_PROCEDURE()                | procedure | created          |
| MY_DATABASE.PUBLIC.HELLO_FUNCTION(name string)     | function  | packages updated |
+-----------------------------------------------------------------------------------+
Das folgende Beispiel zeigt, was passiert, wenn bereits Objekte vorhanden sind und Sie die Bereitstellung ohne Angabe der Option --replace vornehmen.
snow snowpark deploy
╭─ Error ──────────────────────────────────────────────────────────╮
│ Following objects already exists. Consider using --replace.      |
│ function: MY_DATABASE.PUBLIC.HELLO_FUNCTION(string)              |
│ procedure: MY_DATABASE.PUBLIC.HELLO_PROCEDURE(string)            |
│ procedure: MY_DATABASE.PUBLIC.TEST_PROCEDURE()                   |
╰──────────────────────────────────────────────────────────────────╯