snow git execute

Führt sofort alle Dateien im Repository-Pfad aus. Dateien können mit einem glob-ähnlichen Muster gefiltert werden, z. B. @my_repo/branches/main/*.sql, @my_repo/branches/main/dev/*. Es werden nur Dateien mit der Erweiterung .sql oder .py ausgeführt.

Syntax

snow git execute  <repository_path>  --on-error <on_error>  --variable <variables>  --connection <connection>  --host <host>  --port <port>  --account <account>  --user <user>  --password <password>  --authenticator <authenticator>  --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 
Copy

Argumente

repository_path

Pfad zum Stagingbereich des Git-Repositorys mit dem angegebenen Geltungsbereich. Der Pfad zum Stammverzeichnis des Repositorys muss mit „/“ enden. Beispiel: @my_repo/branches/main/.

Optionen

--on-error [break|continue]

Gibt an, was im Fehlerfall zu tun ist. Standardmäßig auf „break“ (Anhalten) eingestellt. Standard: Pause.

--variable, -D TEXT

Variablen für den Ausführungskontext, zum Beispiel: -D "<Schlüssel>=<Wert>". Bei SQL-Dateien werden Variablen verwendet, um die Vorlage zu erweitern, und jede unbekannte Variable führt zu einem Fehler (erwägen Sie die Einbettung von Anführungszeichen in die Datei). Bei Python-Dateien werden Variablen verwendet, um das os.environ-Wörterbuch zu aktualisieren. Die zur Verfügung gestellten Schlüssel werden großgeschrieben, um die Best Practices einzuhalten. Im Falle von SQL-Dateien müssen Zeichenfolgen in '' in Anführungszeichen gesetzt werden (erwägen Sie, die Anführungszeichen in die Datei einzubetten).

--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 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 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

--enhanced-exit-codes

Exit-Fehlercodes nach Art des Fehlers unterscheiden. Standard: false

--help

Zeigt den Hilfetext für diesen Befehl an.

Nutzungshinweise

Bemerkung

Snowflake CLI unterstützt die Ausführung von Python-Dateien für Python-Versionen 3.12 und höher nicht.

Sie können glob-ähnliche Muster verwenden, um die Dateien zu filtern, z. B. @my_repo/branches/main/*.sql und @my_repo/branches/main/dev/*. Der Befehl führt nur Dateien mit der Erweiterung .sql aus.

Wenn Sie Jinja-Vorlagen für die SQL-Dateien verwenden, können Sie Vorlagenvariablen mit der Option -D (oder --variable) übergeben, wie z. B. -D "<key>=<value>". Sie müssen String-Werte in einfache Anführungszeichen ('') einschließen.

Beispiele

Das folgende Beispiel zeigt, wie Sie die SQL-Befehle in allen Dateien innerhalb des project-Verzeichnisses ausführen, die mit einem regulären Ausdruck übereinstimmen.

snow git execute "@git_test/branches/main/projects/script*.sql" 
Copy
SUCCESS - git_test/branches/main/projects/script1.sql SUCCESS - git_test/branches/main/projects/script2.sql SUCCESS - git_test/branches/main/projects/script3.sql +---------------------------------------------------------------+ | File | Status | Error | |---------------------------------------------+---------+-------| | git_test/branches/main/projects/script1.sql | SUCCESS | None | | git_test/branches/main/projects/script2.sql | SUCCESS | None | | git_test/branches/main/projects/script3.sql | SUCCESS | None | +---------------------------------------------------------------+