Drools - 克隆 Github 存储库

问题描述

我已经为 KIE WB 和 KIE Server 创建了一个 K8 部署。 对于 KIE WB,我创建了一个配置 Post Commit 挂钩的 Docker 映像,以便将我的存储库推送到 GitHub。

所有这些都很棒。

我的问题是在创建 pod 时恢复存储库。因此,当我的 pod 启动时,我想克隆我的 GitHub 存储库,然后无需手动导入即可恢复它们。

我以为我可以使用 GitHub API 并获取一个 tarball 并将它们放入 .niogit/ 路径中,但这不起作用(我看到 git 中的文件结构不同,它看起来只是 java 源而不是必需的KIE WB 的文件识别出它是一个 repo)。

我知道我必须做一些已经完成的事情,但我没有找到任何东西来实现它。我也不想重新发明轮子:)

有什么想法吗?

解决方法

您需要将 initContainers 与 Kubernetes git-sync https://github.com/kubernetes/git-sync/

请参阅问题How to clone a private git repository into a kubernetes pod using ssh keys in secrets?的答案

因此,Kubernetes git-sync initContainer 会将 git 存储库拉入本地目录,该目录通过 emptyDir 卷挂载与您的 Drools 容器共享。

有关 initContainers 的更多信息,请阅读 https://kubernetes.io/docs/concepts/workloads/pods/init-containers/

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...