【问题标题】:Can you use Git to Deploy Code to a Fleet of devices您可以使用 Git 将代码部署到设备组吗
【发布时间】:2020-01-16 19:21:12
【问题描述】:

我有一堆树莓派正在运行一个托管本地服务器的自定义映像。我无法控制这些设备的最终位置或它们是否连接到外部互联网。

我目前正在使用 git 开发项目,我想知道是否可以使用 git 自动将更新部署到设备。

如果他们每次连接到互联网时都尝试git pull,理论上他们会下载任何新的更新。我可以很容易地编写一个更新脚本,在成功拉取后它会检查新的软件需求并安装它们。

各地可能有数百个这样的设备,我想知道这是否可行,或者是否有人知道这种方法有任何问题。这不应该与许多设备一起使用吗?这有什么安全问题吗?

【问题讨论】:

  • 使用 rsync 会做得更好,它是专门为此任务而构建的。

标签: git deployment raspberry-pi


【解决方案1】:

没有确切的git pull hook,而且,正如noted here,Git 本身并不完全是一个部署工具。

如果您编写“更新”脚本,最好编写一个侦听器,该侦听器可以由存储库托管服务自动调用。
例如,GitHub webhook 就是这样工作的。

由于您有数百个,单个 webhook 是不够的。
相反,您需要编写一个程序(分布在每个设备上),每隔几个小时 polls 进行新提交 (git pull),然后调用您的更新脚本。

【讨论】:

    猜你喜欢
    • 2013-06-23
    • 1970-01-01
    • 2019-03-24
    • 2019-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-27
    • 1970-01-01
    相关资源
    最近更新 更多