snow dcm deploy¶
Stellt lokale Projektänderungen in Snowflake bereit, indem Objekte erstellt, geändert oder gelöscht werden, die den Definitionsdateien entsprechen.
Syntax¶
Argumente¶
identifierBezeichner des DCM-Projekts. Beispiel: MY_DB.MY_SCHEMA.MY_PROJECT. Unterstützt vollqualifizierte (empfohlen) oder einfache Namen. Wenn sie nicht qualifiziert sind, werden standardmäßig die Datenbank und das Schema der Verbindung verwendet. Optional, wenn
--targetoderdefault_targetin der Manifest-Datei definiert ist.
Optionen¶
--from PATHPfad des lokalen Verzeichnisses, das die DCM-Projektdateien enthält. Weglassen, um das aktuelle Verzeichnis zu verwenden.
--variable, -D TEXTVariablen für den Ausführungskontext, zum Beispiel:
-D "<key>=<value>".--alias TEXTAlias für die Bereitstellung.
--target TEXTZu verwendendes Zielprofil aus
manifest.yml. Verwendetdefault_target, falls nicht angegeben.--save-outputSpeichern Sie die Befehlsantwort und Artefakte im lokalen „out/“-Verzeichnis. Standard: False.
--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
--decimal-precision INTEGERAnzahl der Dezimalstellen, die für Dezimalwerte angezeigt werden sollen. Verwendet die Standardgenauigkeit von Python, wenn nicht angegeben. [env var: SNOWFLAKE_DECIMAL_PRECISION]
--helpZeigt den Hilfetext für diesen Befehl an.
Nutzungshinweise¶
Der Befehl snow dcm deploy stellt lokale Projektänderungen in Snowflake bereit, indem Objekte erstellt, geändert oder gelöscht werden, die den Definitionsdateien entsprechen.
Wenn Sie ein DCM project bereitstellen, werden die folgenden Aktionen ausgeführt:
Objekte, die definiert sind, aber noch nicht existieren, werden erstellt.
Objekte, die bereits existieren, sich aber von der aktuellen Definition unterscheiden, werden geändert.
Objekte, die bereits existieren und bei denen es keine Unterschiede zwischen ihrem Zustand und ihrer Definition gibt, bleiben unverändert.
Objekte, die bereits existieren, aber nicht mehr definiert sind, werden gelöscht.
Objekte, die zuvor existierten, und deren Definitionen kürzlich zu DCM project hinzugefügt wurden, werden zu den von diesem DCM project verwalteten Objekten hinzugefügt.
Bemerkung
Dieser Befehl lädt automatisch die lokalen SQL-Quelldateien in einen temporären Stagingbereich in Snowflake hoch, sodass deren Inhalt das Endergebnis der Operation beeinflusst.
Verwenden Sie die Option --save-output, um die Bereitstellungsergebnisse in einer lokalen out/deploy.json-Datei zu speichern.
Weitere Informationen zum Bereitstellungsprozess finden Sie unter DCM project bereitstellen.
Beispiele¶
Bereitstellen eines DCM project-Objekts mit den Standardoptionen, wobei der Projektname in dem Ziel angegeben wird, das durch die Eigenschaft
default_targetim Manifest festgelegt ist:Bereitstellen eines DCM project-Objekts, bei dem der Projektname im
DEV-Ziel im Manifest angegeben wird:Bereitstellen eines DCM project-Objekts mit einem expliziten, vollqualifizierten Namen:
Bereitstellen eines DCM project-Projekts unter Verwendung lokaler Dateien, wobei der Projektname im
DEV-Ziel im Manifest angegeben wird; Wert für die Variabledb_namefestlegen und Bereitstellungsalias aufv3setzen:Bereitstellen eines DCM project-Objekts aus einem bestimmten Verzeichnis und Speichern der Ausgabe: