Referenz zu Declarative Native App-Befehlen¶
Die folgenden Befehle enthalten neue Parameter zur Unterstützung der Erstellung und Veröffentlichung von Anwendungspaketen:
CREATE APPLICATION PACKAGE¶
Der Befehl CREATE APPLICATION PACKAGE unterstützt den neuen optionalen Parameter TYPE = DATA, der angibt, dass die App eine Declarative Native App ist.
Syntax¶
CREATE APPLICATION PACKAGE [ IF NOT EXISTS ] <name> TYPE = DATA
Neuer optionaler Parameter:
TYPE = [ DATA | NATIVE ]Gibt an, welcher Typ von Anwendungspaket erstellt werden soll:
DATA: zeigt an, dass das Anwendungspaket eine Declarative Native App enthält.NATIVE: zeigt an, dass das Anwendungspaket eine Snowflake Native App enthält. Dies ist der Standard.
Nachdem Sie einen Anwendungspakettyp angegeben haben, können Sie ALTER APPLICATION PACKAGE nicht verwenden, um den Typ später zu ändern.
Wenn
TYPE = DATAangegeben ist, werden die anderen Parameter in diesem Befehl, wie z. B. DATA_RETENTION_TIME_IN_DAYS und COMMENT, nicht unterstützt.Dieser Parameter erfordert eine Rolle mit den CREATE APPLICATION PACKAGE- und CREATE DATABASE-Berechtigungen.
Der Erstellende des Anwendungspakets erhält automatisch die Berechtigung OWNERSHIP für dieses Anwendungspaket.
ALTER APPLICATION PACKAGE¶
Der Befehl ALTER APPLICATION PACKAGE unterstützt die folgenden neuen optionalen Parameter zum Erstellen und Veröffentlichen von Declarative Native Apps. Diese neuen Parameter werden für Snowflake Native Apps nicht unterstützt.
Syntax¶
ALTER APPLICATION PACKAGE <name>
[ ADD LIVE VERSION
| ADD VERSION FROM @STAGE/path
| BUILD
| COMMIT
| RELEASE [LIVE VERSION]
| ABORT LIVE VERSION ]
[COMMENT = 'string_literal']
Neue optionale Parameter¶
ADD LIVE VERSIONErstellt eine Live-Version des Anwendungspakets, die bearbeitet werden kann. Diese Live-Version wird verwendet, um Dateien, wie z. B. die Manifest-Datei und die Notebook-Dateien, hinzuzufügen oder zu aktualisieren.
ADD VERSION FROM @<STAGE>/<path>Erstellt eine Live-Version des Anwendungspakets auf der Grundlage von Dateien aus einem Stagingbereich. Diese Methode ist nützlich, wenn Sie einen Satz von Dateien haben, die Sie in das Anwendungspaket aufnehmen möchten, und Sie diese Dateien auf einmal hinzufügen möchten.
Bemerkung
Wenn Sie die Dateien nach dem Erstellen der Live-Version iterieren, müssen Sie dieselben Änderungen an den Dateien im Stagingbereich vornehmen, um die Konsistenz zukünftiger Versionen zu gewährleisten.
BUILDErstellt die App, aber führt kein Commit aus. Verwenden Sie diesen Befehl, um die Manifest-Datei zu validieren und die Arbeit an dem Anwendungspaket fortzusetzen.
COMMITErstellt die App, überträgt sie zur Veröffentlichung, veröffentlicht sie aber nicht.
Der Commit-Prozess bereitet das Anwendungspaket für die Veröffentlichung vor, indem eine interne Versionsnummer hinzugefügt wird, und macht das Anwendungspaket unveränderlich.
RELEASEGibt eine übermittelte Version der App für den Snowflake Marketplace frei.
RELEASE LIVE VERSIONErstellt die App, überträgt sie zur Veröffentlichung und gibt sie für den Snowflake Marketplace frei.
Entspricht der Ausführung der Befehle BUILD, COMMIT und RELEASE in dieser Reihenfolge.
ABORT LIVE VERSIONEntfernt die LIVE-Version des Anwendungspakets. Stellt das Anwendungspaket in der letzten übermittelten Version wieder her.
Vorhandene Parameter¶
Diese Parameter werden für Declarative Native Apps und für Snowflake Native Apps unterstützt.
<name>Gibt den Bezeichner des Anwendungspakets an.
Wenn der Bezeichner Leerzeichen, Sonderzeichen oder Zeichen in Groß- und Kleinschreibung enthält, muss die gesamte Zeichenfolge in doppelte Anführungszeichen eingeschlossen werden. Bei Bezeichnern, die in doppelte Anführungszeichen eingeschlossen sind, ist auch die Groß-/Kleinschreibung zu beachten.
COMMENT = 'string_literal'
Optional: Fügt einen Kommentar hinzu oder überschreibt einen vorhandenen Kommentar für die App-Version. Dieser Kommentar wird in SHOW APPLICATION PACKAGES angezeigt.
Anforderungen an die Zugriffssteuerung¶
Für diesen Befehl ist eine Rolle mit der Berechtigung OWNERSHIP Berechtigung für das Anwendungspaket erforderlich.
Beispiele¶
Erstellen eines neuen Anwendungspakets:
CREATE APPLICATION PACKAGE market_data_app TYPE = DATA;
Erstellen einer Live-Version des Anwendungspakets, die bearbeitet werden kann:
ALTER APPLICATION PACKAGE market_data_app ADD LIVE VERSION COMMENT = 'Market views for Northern region';
Erstellen einer neuen Version des Anwendungspakets aus einem bestehenden Staging-Anwendungspaket:
ALTER APPLICATION PACKAGE market_data_app ADD VERSION FROM @my_stage/market_data_app_v1;
Erstellen des Anwendungspakets, aber ohne Commit:
ALTER APPLICATION PACKAGE market_data_app BUILD;
Erstellen und Commit des Anwendungspakets zur Veröffentlichung, aber ohne Freigabe:
ALTER APPLICATION PACKAGE market_data_app COMMIT COMMENT = 'Market views for North and East regions';
Freigeben des Anwendungspakets für den Snowflake Marketplace:
ALTER APPLICATION PACKAGE market_data_app RELEASE;
Erstellen, Commit und Freigabe der Live-Version des Anwendungspakets für den Snowflake Marketplace:
ALTER APPLICATION PACKAGE market_data_app RELEASE LIVE VERSION COMMENT = 'Market views for North, East, and West regions';
Nachdem Sie eine Live-Version des App-Endes hinzugefügt und bearbeitet haben, beenden Sie die Bearbeitung, und stellen Sie die letzte übermittelte Version wieder her:
ALTER APPLICATION PACKAGE market_data_app ABORT LIVE VERSION
GRANT IMPORTED PRIVILEGES ON APPLICATION¶
Der Befehl GRANT IMPORTED PRIVILEGES unterstützt den neuen optionalen Parameter ON APPLICATION <name>.
Mit diesem Befehl können verbrauchende Personen Zugriff auf alle Daten und Ansichten in einer Declarative Native App für andere Mitglieder ihrer Organisation gewähren.
Dieser Befehl kann für jede Declarative Native App verwendet werden und erfordert keine Definition von App-Rollen für das Anwendungspaket.
Anforderungen an die Zugriffssteuerung¶
Für diesen Befehl ist eine Rolle mit der Berechtigung OWNER für die installierte App erforderlich.
Syntax¶
GRANT IMPORTED PRIVILEGES ON APPLICATION <name> TO ROLE <role_name>;
Beispiel¶
GRANT IMPORTED PRIVILEGES ON APPLICATION market_data_app TO ROLE marketing_team_east;