管理 Dataform 核心软件包

本文档介绍了如何管理 Dataform 核心框架依赖项软件包并将其更新到最新版本。

Dataform 核心是开源 Dataform 框架,用于使用 SQL、SQLX 和 JavaScript 开发 SQL 工作流。最佳实践是始终使用最新版本的 Dataform 核心框架。如需了解 Dataform 核心框架的版本,请参阅 GitHub 上的 Dataform 版本

准备工作

  1. 创建代码库
  2. 创建并初始化开发工作区

所需的角色

如需获得管理和更新 Dataform 核心所需的权限,请让您的管理员为您授予以下 IAM 角色:

  • 管理 Dataform 核心软件包的位置: 仓库的 Dataform Admin (roles/dataform.admin)
  • 更新 Dataform 核心软件包:工作区的 Dataform Editor (roles/dataform.editor)

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

您也可以通过自定义角色或其他预定义角色来获取所需的权限。

管理 Dataform 核心软件包位置

当您在代码库中初始化第一个工作区时,Dataform 会自动将 Dataform 核心设置为依赖项软件包。从 Dataform 核心 3.0.0 开始,Dataform 会默认在 workflow_settings.yaml 文件中安装 Dataform 核心软件包。在早期版本的 Dataform 核心中,Dataform 核心是在 package.json 文件中设置的。

在 Dataform 核心 3.0.0 及更高版本中,如果 Dataform 核心是代码库中的唯一软件包,则应在 workflow_settings.yaml 文件中进行设置。对于使用较低版本的 Dataform 核心创建的代码库,请将 Dataform 核心软件包移至 workflow_settings.yaml

必须使用 package.json 文件才能在 Dataform 中安装其他软件包。如果您的代码库使用其他软件包,请在 package.json 中设置 Dataform 核心软件包,以便在一个位置设置所有软件包。如果您的代码库没有 package.json,请创建 package.json 并移动 Dataform 核心软件包,以安装其他软件包。

将 Dataform 核心移至 workflow_settings.yaml

对于使用低于 3.0.0 的 Dataform 核心版本创建的代码库,如果您没有除 Dataform 核心之外的依赖项软件包,则应将 Dataform 核心软件包从 package.json 移至 workflow_settings.yaml,并删除多余的 package.json 文件。

如需将 Dataform 核心软件包从 package.json 迁移到 workflow_settings.yaml,请执行以下操作:

  1. 在 Google Cloud 控制台中,进入 Dataform 页面。

    前往 Dataform 页面

  2. 选择一个代码库,然后选择一个工作区。

  3. Files 窗格中,选择 workflow_settings.yaml 文件。

  4. workflow_settings.yaml 文件中,使用以下格式添加 Dataform 核心软件包:

    dataformCoreVersion: "VERSION"
    
    

    VERSION 替换为最新版本的 Dataform,例如 3.0.0

  5. 文件窗格中,点击 package.json 旁边的更多菜单,然后点击删除

  6. 如需确认删除 dataform.json,请点击删除

  7. 点击安装软件包

将 Dataform 核心移至 package.json

如需在代码库中安装其他软件包,必须使用 package.json 文件。如果您的代码库使用其他软件包,则应将所有软件包(包括 Dataform 核心软件包)存储在 package.json 中。

如果您的代码库不包含 package.json 文件,因为 Dataform 核心软件包是在 workflow_settings.yaml 文件中设置的,则您必须创建 package.json 文件才能安装其他软件包,然后将 Dataform 核心软件包从 workflow_settings.yaml 移至新创建的 package.json

如需创建 package.json 文件并移动 Dataform 核心软件包,请按以下步骤操作:

  1. 在 Google Cloud 控制台中,进入 Dataform 页面。

    前往 Dataform 页面

  2. 选择一个代码库,然后选择一个工作区。

  3. 文件窗格中,点击添加添加,然后点击创建文件

  4. 添加文件路径字段中,输入 package.json

  5. 点击创建文件

  6. package.json 文件中,使用以下格式添加 Dataform 核心软件包:

    {
        "dependencies": {
            "@dataform/core": "VERSION"
        }
    }
    

    VERSION 替换为最新版本的 Dataform,例如 3.0.0

  7. 点击安装软件包

  8. Files 窗格中,选择 workflow_settings.yaml

  9. workflow_settings.yaml 文件中,删除 dataformCoreVersion 属性。

更新了 Dataform 核心

请务必先在非生产环境中测试新软件包版本,然后再在生产环境中部署。

如需更新 Dataform 核心依赖项软件包,请按以下步骤操作:

  1. GitHub 上的 Dataform 版本页面上查找最新版本的 @dataform/core

  2. 在 Google Cloud 控制台中,进入 Dataform 页面。

    前往 Dataform 页面

  3. 选择一个代码库,然后选择一个工作区。

  4. Files 窗格中,选择 package.json 文件或 workflow_settings.yaml 文件。

    Dataform 核心依赖项软件包的设置位置取决于您使用的 Dataform 核心版本和软件包。如需了解详情,请参阅管理 Dataform 核心软件包位置

  5. 使用最新版本更新 Dataform 核心依赖项软件包:

    package.json

    {
        "dependencies": {
            "@dataform/core": "VERSION"
        }
    }
    

    VERSION 替换为最新版本的 Dataform,例如 3.0.0。为防止出现软件包安装问题,请明确指定 Dataform 核心软件包版本。请勿使用 package.json 的其他 dependencies 选项,例如 >version

    1. 点击安装软件包

    workflow_settings.yaml

    dataformCoreVersion: "VERSION"
    

    VERSION 替换为最新版本的 Dataform,例如 3.0.0

    1. 点击安装软件包
  6. 提交更改

  7. 将更改推送到代码库

以下代码示例展示了 package.json 文件中已更新为 3.0.0 版本的 @dataform/core 依赖项:

{
    "dependencies": {
        "@dataform/core": "3.0.0"
    }
}

后续步骤