配置 webhook 部署密钥

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

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

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

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

添加部署密钥

Looker 支持为以下 Git 提供商使用 Web Secret:GitHub、Bitbucket Server 和 GitLab。

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

  1. 开发模式下,打开您的项目,然后选择 IDE 导航栏中的设置图标,以打开项目设置面板。
  2. 在项目设置面板中选择配置
  3. 滚动到 Webhook Deploy Secret(部署 Webhook 密钥)部分,然后点击 Set Webhook Secret(设置 Webhook Secret)。Looker 会自动生成一个 Secret 令牌。您可以使用此自动生成的密钥,也可以输入自己的密钥令牌。
  4. 无论您是使用自动生成的密钥还是创建自己的密钥,请复制 webhook 部署密钥并将其粘贴到文本文件中,以便在需要将密钥添加到代码库的 webhook 时获得该密钥。此时,请务必进行复制。离开或刷新项目配置页面后,您将失去对网络钩子部署密钥的访问权限,并且必须更改移除网络钩子部署密钥才能重新获得项目的访问权限。
  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 菜单中的 View Project on Git(在 Git 上查看项目)选项。

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

  3. 找到 LookML 项目的网络钩子,然后点击其修改按钮。

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

  5. 点击更新聊天通知

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

更改部署密钥

将网络钩子部署密钥添加到项目后,如果您是 Looker 管理员,则可以通过执行以下操作来更改此密钥:

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

如果您的项目配置了 Git 拉取请求集成,您还需要转到 Git 提供方的界面,更新代码库的 webhook Secret

移除部署密钥

将网络钩子部署密钥添加到项目后,如果您是 Looker 管理员,则可以通过执行以下操作来移除此密钥:

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

您的项目不再需要为部署 webhook 提供密钥。如果您的项目配置了 Git 拉取请求集成,您现在可以转到 Git 提供方的界面,从代码库中移除 webhook 密钥。Looker 本身不会再在 Git 提供方一端检查密钥,因此,如果您的 Git 代码库 webhook 仍配置了 Secret,也无妨。如果您确实要从 Git 代码库中移除 Secret,请参阅为 Git 代码库的 Webhook 配置 Secret,以了解如何在 Git 提供方的界面上修改 Secret。