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。
如需为项目设置网络钩子部署 Secret,请执行以下操作:
- 在开发模式下,打开项目,然后选择 IDE 导航栏中的设置图标以打开项目设置面板。
- 在项目设置面板中,选择配置。
- 滚动到 Webhook Deploy Secret 部分,然后点击 Set Webhook Secret。Looker 将自动生成一个密钥令牌。您可以使用系统自动生成的密钥,也可以自行输入密钥令牌。
- 无论您是使用自动生成的密文还是创建自己的密文,请复制网络钩子部署密文并将其粘贴到文本文件中,以便在需要将密文添加到代码库的网络钩子时使用。请务必在此处复制该代码。离开或刷新项目配置页面后,您将无法再访问网络钩子部署密钥,必须更改或移除网络钩子部署密钥才能重新获得项目访问权限。
- 点击 Save Project Configuration(保存项目配置)。
您项目的部署 webhook 现在需要此 Secret。对于使用 Looker 临时实例的项目,您需要在 HTTP 标头中添加网络钩子部署密钥,才能部署到生产环境。对于具有 Git 拉取请求集成的项目,您需要前往 Git 提供商的界面,将密钥添加到代码库的 Webhook。
为 Git 代码库的 webhook 配置 Secret
对于具有 Git 拉取请求集成的项目,如果您已向 LookML 项目添加部署 webhook Secret,则需要前往 Git 提供商的界面,将该 Secret 添加到代码库的 webhook。下面以 GitHub 为例,说明如何执行此操作:
在 Git 提供商的网站上,前往项目的代码库设置。
提示:如果您已为项目设置 Git 集成,则可以使用 Looker 中项目的 Git 菜单中的在 Git 上查看项目选项。
在代码库的设置中,点击 Webhooks。
找到 LookML 项目的 Webhook,然后点击其修改按钮。
在 Secret 字段中,粘贴您从 Looker 的 Webhook Deploy Secret 部分复制的网络钩子部署密钥。
点击 Update webhook。
现在,您必须提供 webhook Secret 才能将更改部署到项目的正式版。如有需要,您可以更改密文或从项目中移除密文。
更改部署密文
将 webhook 部署 Secret 添加到项目后,如果您是 Looker 管理员,可以按以下步骤更改该 Secret:
- 在项目中,从导航栏中选择设置图标。
- 滚动到 Webhook 部署密钥部分,然后点击重置密钥。Looker 会自动生成新的密令。您可以使用此自动生成的密钥,也可以自行输入新的密钥令牌。
- 无论您是使用自动生成的密文还是创建自己的密文,请复制网络钩子部署密文并将其粘贴到文本文件中,以便在需要将密文添加到代码库的网络钩子时使用。请务必在此处从剪贴板中复制该代码。离开或刷新项目配置页面后,您将无法再访问网络钩子部署 Secret,必须返回并更改或完全移除它。
- 点击 Save Project Configuration(保存项目配置)。
如果您的项目配置了 Git 拉取请求集成,您还需要前往 Git 提供商的界面,更新代码库的 Webhook 密钥。
移除部署密文
将 webhook 部署 Secret 添加到项目后,如果您是 Looker 管理员,可以按以下步骤移除该 Secret:
- 在项目中,从导航栏中选择设置图标。
- 滚动到 Webhook 部署密钥部分,然后点击移除密钥。此时,您可以点击 不移除来取消操作并保留部署密钥。
- 如需从项目中永久移除 webhook 部署密钥,请点击保存项目配置。
您的项目不再需要部署 webhook 的密钥。如果您的项目配置了 Git 拉取请求集成,您现在可以前往 Git 提供商的界面,从代码库中移除 Webhook Secret。Looker 本身将不再检查 Git 提供商端的 Secret,因此即使您的 Git 代码库 Webhook 仍配置了 Secret,也不会有任何影响。如果您确实想从 Git 代码库中移除密钥,请参阅为 Git 代码库的 Webhook 配置密钥,了解如何在 Git 提供商的界面上修改密钥。