关于项目定义文件¶
在开发 Streamlit 或 Snowpark 应用程序时,您经常要处理多个文件和对象,无论是 python 文件还是存储过程。以简洁明了的方式组织这些内容,对于获得流畅的开发体验非常重要。这就是 Snowflake CLI 使用 项目定义文件 概念的原因。
项目定义文件(通常命名为 snowflake.yml
)是包含有关您正在开发的 Snowflake 对象的信息的文件。以下 snowflake.yml
示例显示了一个带有 Snowpark UDF 和存储过程的项目。
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
项目定义属性¶
下表描述了所有项目使用的项目定义属性。
属性 |
定义 |
---|---|
definition_version 必填,整数型 |
项目定义架构的版本,当前为 2。 |
entities 可选,字符串型 |
实体定义列表,例如过程、函数等。有关更多信息,请参阅 指定实体。 |
env optional、string sequence |
项目模板中使用的默认环境规范列表。有关更多信息,请参阅 创建项目定义文件模板。 |
mixins optional、string sequence |
实体属性的常见值列表。有关更多信息,请参阅 项目 mixin。 |
每个项目都需要有关您正在构建的内容的具体信息。Snowflake CLI 目前支持来自以下 Snowflake 域的以下实体定义:
小心
执行其他 snow
命令时,项目目录中的文件会被 Snowflake CLI Snowflake 处理,并且可以上传到 Snowflake。在将任何敏感信息放入项目目录中的文件中时应小心谨慎。