验证应用程序包¶
先决条件¶
您的
config.toml文件中必须存在现有连接。您的 Snowflake Native App 项目中必须存在
snowflake.yml文件。
当您运行 (snow app run) 或部署 (snow app deploy) 应用程序时,Snowflake CLI 会自动验证 Snowflake Native App 安装脚本以及使用 SQL EXECUTE IMMEDIATE 语句包含的任何其他 SQL 文件。它使用由其中一个命令最近上传的脚本。验证 SQL 语法错误的检查、无效的对象引用和最佳实践。如果脚本验证失败,则执行的命令将中止,但不会自动回滚暂存文件。
有关 Snowflake Native App 安装脚本的更多信息,请参阅 Snowflake Native App Framework 文档中的 Create the setup script。
如何手动验证安装脚本¶
有时,您可能需要在部署应用程序之前验证安装脚本,以避免在部署过程中验证失败可能造成的潜在影响。snow app validate 命令无需运行或部署应用程序即可验证安装脚本。该命令会将源文件上传到单独的初始暂存区,该初始暂存区将在命令完成后自动删除,以避免干扰应用程序源暂存区的文件。
如有必要,创建连接。
从项目内部执行
snow app validate命令,如下所示:成功时,该命令返回以下消息:
如果验证失败,则会显示以下错误消息以及任何错误消息:
如果您想将原始验证输出显示为 JSON,您可以执行 snow app validate --format json,如下所示:
其中:
错误 显示错误列表(如果存在)。错误会导致验证失败。
警告 显示警告列表(如果存在)。
状态 显示验证结果:SUCCESS 或 FAILURE。
如果验证遇到任何错误(导致验证失败)或警告(令验证成功),则该命令将显示错误或警告的以下信息:
message:可由人工读取的错误或警告消息。cause:将 SQL 结构视为错误或警告的原因。errorCode:与错误或警告相关的数字代码。fileName:包含错误或警告的文件名,相对于暂存区根目录。line:文件中标识错误或警告位置的行编号。column:发生错误或警告的行中的列编号。
以下示例显示了包含警告和错误的失败验证: