Allgemeine Informationen zu Projektdefinitionsdateien

Bei der Entwicklung von Streamlit- oder Snowpark-Anwendungen verwenden Sie oft mehrere Dateien und Objekten, seien es Python-Dateien oder gespeicherte Prozeduren. Eine klare und übersichtliche Organisation ist sehr wichtig für einen reibungslosen Entwicklungsprozess. Das ist der Grund, warum Snowflake CLI das Konzept der Projektdefinitionsdateien verwendet.

Eine Projektdefinitionsdatei (in der Regel mit dem Namen snowflake.yml) ist eine Datei mit Informationen über die Snowflake-Objekte, die Sie entwickeln. Das folgende snowflake.yml-Beispiel zeigt ein Projekt mit einem Snowpark-UDF und einer gespeicherten Prozedur.

definition_version: 2
entities:
  test_function:
    type: "function"
    stage: "dev_deployment"
    artifacts: ["app/"]
    handler: "functions.hello_function"
    signature: ""
    returns: string

  hello_procedure:
    type: "procedure"
    stage: "dev_deployment"
    artifacts: ["app/"]
    handler: "procedures.hello_procedure"
    signature:
      - name: "name"
        type: "string"
    returns: string
Copy

Eigenschaften der Projektdefinition

Die folgende Tabelle beschreibt die Eigenschaften der Projektdefinition, die von allen Projekten verwendet werden.

Gemeinsame Eigenschaften der Projektdefinition

Eigenschaft

Definition

definition_version

erforderlich, int

Version des Projektdefinitionsschemas, die derzeit 2 ist.

Entitäten

optional, string

Auflistung der Definitionen von Entitäten, wie z. B. Prozeduren, Funktionen usw. Weitere Informationen dazu finden Sie unter Entitäten angeben.

env

optional, string sequence

Auflistung von Standardangaben zur Umgebung, die in Projektvorlagen verwendet werden können. Weitere Informationen dazu finden Sie unter Vorlagen für Projektdefinitionsdateien erstellen.

mixins

optional, string sequence

Auflistung der gemeinsamen Werte für Eigenschaften von Entitäten. Weitere Informationen dazu finden Sie unter Projekt-Mixins.

Jedes Projekt erfordert spezifische Informationen darüber, was Sie entwickeln. Snowflake CLI unterstützt derzeit die folgenden Definitionen von Entitäten aus den folgenden Snowflake-Domänen:

Vorsicht

Dateien in einem Projektverzeichnis werden von Snowflake CLI verarbeitet und können beim Ausführen anderer snow-Befehle in Snowflake hochgeladen werden. Seien Sie vorsichtig, wenn Sie sensible Informationen in Dateien in einem Projektverzeichnis ablegen.