2.7. 准备 Git hook


在编写环境中,您可以在 Business Central 中项目的源代码改变时,使用 Git hook 执行自定义操作。Git hook 的典型用途是与上游存储库交互。

要启用 Git hook 使用 SSH 身份验证与上游存储库交互,还必须提供一个 secret 密钥和一个已知主机文件来与存储库进行身份验证。

如果您不想配置 Git hook,请跳过这个过程。

流程

  1. 创建 Git hook 文件。具体步骤请查看 Git hook 参考文档

    注意

    Business Central 不支持 pre-commit 脚本。使用 提交后 脚本。

  2. 使用文件创建配置映射(ConfigMap)或持久性卷。

    • 如果 Git hook 由一个或多个固定的脚本文件组成,请使用 oc 命令创建配置映射。例如:

      oc create configmap git-hooks --from-file=post-commit=post-commit
    • 如果 Git hook 由长文件或依赖二进制文件(如可执行文件或 JAR 文件)组成,请使用持久性卷。您必须创建一个持久性卷,创建一个持久性卷声明,并将卷与声明相关联,并将文件传送到卷。

      有关持久性卷和持久性卷声明的说明,请参阅 Red Hat OpenShift Container Platform 文档中的 存储。有关将文件复制到持久性卷的说明,请参阅 从容器中传输文件和移出 文件。

  3. 如果 Git hook 脚本必须使用 SSH 身份验证与上游存储库交互,请使用必要的文件准备 secret:

    1. 使用与存储库中存储的公钥匹配的私钥准备 id_rsa 文件。
    2. 使用存储库的正确名称、地址和公钥准备 known_hosts 文件。
    3. 使用 oc 命令创建带有两个文件的 secret,例如:

      oc create secret git-hooks-secret --from-file=id_rsa=id_rsa --from-file=known_hosts=known_hosts
      注意

      当部署使用此 secret 时,它会将 id_rsaknown_hosts 文件挂载到 Business Central Pod 上的 /home/jboss/.ssh 目录中。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.