配置 Webhook 部署 Secret

Webhook 部署端点会提示您的 Looker 实例部署来自 Git 分支、提交 SHA 或标记名称的更改,然后将更改推送到项目的正式版。(如需了解 Looker 部署 webhook 格式,请参阅使用 webhook 进行部署部分。)对于大多数项目,Looker 会处理 Git 集成并将更新部署到生产环境,因此您无需设置部署 webhook。

不过,如果存在以下任一情况,您需要使用部署 webhook 将更改推送到生产环境:

  • 您可以在 Looker IDE 之外将更新推送到远程生产分支,这在包含预演环境的开发工作流中很常见。
  • 您希望使用 Advanced Deploy Mode(高级部署模式)通过 webhook 进行部署,以便指定要用于 Looker 项目正式版的分支、提交 SHA 或标记名称。
  • 您已使用 Git 拉取请求配置了 Looker 项目,这意味着您必须在合并拉取请求后触发部署 webhook,才能将这些更改推送到 Looker 生产环境。如果您将该 webhook 添加到 Git 提供商的界面,大多数 Git 托管服务都提供了自动执行此操作的方法。

如果您是 Looker 管理员,可以将部署 webhook 配置为需要密钥,以便只有获授权的各方才能触发该 webhook。非管理员 Looker 开发者可以查看项目配置页面,但无法更改其中的选项。

添加部署密钥

Looker 支持以下 Git 提供商的 Web 密钥:GitHub、Bitbucket Server 和 GitLab。

如需为项目设置 webhook 部署密钥,请执行以下操作:

  1. 开发模式下,打开您的项目,然后选择 IDE 导航栏中的设置图标以打开项目设置面板。
  2. 在项目设置面板中,选择配置
  3. 滚动到 Webhook Deploy Secret 部分,然后点击 Set Webhook Secret。Looker 会自动生成一个 Secret 令牌。您可以使用此自动生成的密钥,也可以输入自己的密钥令牌。
  4. 无论您是使用自动生成的 Secret 还是创建自己的 Secret,请复制 webhook 部署 Secret 并将其粘贴到文本文件中,以便在需要时将 Secret 添加到仓库的 webhook。请务必在此时复制该链接。离开或刷新项目配置页面后,您将失去对该 webhook 部署密钥的访问权限,并且必须更改移除该 webhook 部署密钥,才能重新获得对项目的访问权限。
  5. 点击 Save Project Configuration(保存项目配置)。

现在,您的项目的部署 Webhook 需要此 Secret。对于使用 Looker 预演版实例的项目,您需要在 HTTP 标头中添加 webhook 部署密钥,才能部署到生产环境。对于已集成 Git 拉取请求的项目,您需要前往 Git 提供商的界面,将密钥添加到代码库的 webhook

为 Git 代码库的 webhook 配置 Secret

对于启用了 Git 拉取请求集成的项目,如果您已向 LookML 项目添加了部署 webhook Secret,则需要前往 Git 提供商的界面,将该 Secret 添加到代码库的 webhook。例如,您可以通过以下方式使用 GitHub 实现此目的:

  1. 前往 Git 提供商网站上的项目代码库设置。

    提示:如果您已将项目设置为进行 Git 集成,则可以使用 Looker 中项目的 Git 菜单中的 View Project on Git(在 Git 上查看项目)选项。

  2. 在代码库的设置中,点击 Webhooks

  3. 找到您的 LookML 项目的 webhook,然后点击其修改按钮。

  4. Secret 字段中,粘贴您从 Looker 的 Webhook Deploy Secret 部分复制的 webhook 部署密钥。

  5. 点击更新聊天机器人

现在,您必须提供 webhook Secret,才能将更改部署到项目的正式版。如有需要,您可以更改密钥从项目中移除密钥

更改部署密钥

向项目添加 webhook 部署 Secret 后,如果您是 Looker 管理员,则可以执行以下操作来更改 Secret:

  1. 在项目中,从导航栏中选择设置图标。
  2. 滚动到 Webhook Deploy Secret 部分,然后点击 Reset Secret。Looker 会自动生成新的 Secret 令牌。您可以使用此自动生成的 Secret,也可以输入自己的新 Secret 令牌。
  3. 无论您是使用自动生成的 Secret 还是创建自己的 Secret,请复制 webhook 部署 Secret 并将其粘贴到文本文件中,以便在需要时将 Secret 添加到仓库的 webhook。请务必在此时从剪贴板复制该链接。离开或刷新 Project Configuration(项目配置)页面后,您将无法再访问 webhook 部署 Secret,并且必须返回并更改或完全移除该 Secret。
  4. 点击 Save Project Configuration(保存项目配置)。

如果您的项目配置了 Git 拉取请求集成,您还需要前往 Git 提供商的界面,更新代码库的 webhook 密钥

移除部署密钥

向项目添加 webhook 部署 Secret 后,如果您是 Looker 管理员,可以执行以下操作来移除该 Secret:

  1. 在项目中,从导航栏中选择设置图标。
  2. 滚动到 Webhook 部署密钥部分,然后点击移除密钥。此时,您可以点击不移除来取消操作并保留部署密钥。
  3. 如需从项目中永久移除网络钩子部署密钥,请点击保存项目配置

您的项目不再需要为部署 webhook 提供 Secret。如果您的项目配置了 Git 拉取请求集成,您现在可以前往 Git 提供商的界面,从代码库中移除 webhook Secret。Looker 本身将不再检查 Git 提供商端是否有 Secret,因此即使您的 Git 代码库 webhook 仍配置了 Secret,也不会造成任何影响。如果您确实想从 Git 代码库中移除该密钥,请参阅为 Git 代码库的 Webhook 配置密钥,了解如何在 Git 提供商的界面上修改密钥。