配置 Webhook 部署 Secret

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

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

  • 您在 Looker IDE 之外将更新推送到远程生产分支,这在具有预演环境的开发工作流中很常见。
  • 您希望使用 webhook 以高级部署模式进行部署,该模式可让您指定用于 Looker 项目生产版本的相应分支、提交 SHA 或标记名称。
  • 您已为 Looker 项目配置了 Git 拉取请求,这意味着您必须在合并拉取请求后触发部署网络钩子,才能将这些更改推送到 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. 无论您是使用自动生成的密文还是创建自己的密文,请复制网络钩子部署密文并将其粘贴到文本文件中,以便在需要向代码库的网络钩子添加密文时使用。请务必在此处复制该代码。离开或刷新项目配置页面后,您将无法再访问网络钩子部署密钥,必须更改移除网络钩子部署密钥,才能重新获得对项目的访问权限。
  5. 点击 Save Project Configuration(保存项目配置)。

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

为 Git 代码库的 webhook 配置 Secret

对于具有 Git 拉取请求集成的项目,如果您已向 LookML 项目添加部署 webhook Secret,则需要前往 Git 提供商的界面,将该 Secret 添加到代码库的 webhook。以下示例展示了如何使用 GitHub 执行此操作:

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

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

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

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

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

  5. 点击更新 webhook

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

更改部署密文

将 webhook 部署 Secret 添加到项目后,如果您是 Looker 管理员,可以按以下步骤更改该 Secret:

  1. 在项目中,从导航栏中选择设置图标。
  2. 滚动到 Webhook 部署密钥部分,然后点击重置密钥。Looker 会自动生成新的 Secret 令牌。您可以使用此自动生成的密钥,也可以自行输入新的密钥令牌。
  3. 无论您是使用自动生成的密文还是创建自己的密文,请复制网络钩子部署密文并将其粘贴到文本文件中,以便在需要向代码库的网络钩子添加密文时使用。请务必在此处从剪贴板中复制该代码。离开或刷新项目配置页面后,您将无法再访问网络钩子部署 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 提供商的界面上修改密文。