【问题标题】:How to use bitbucket for lazy deployment如何使用 bitbucket 进行延迟部署
【发布时间】:2019-03-18 01:45:00
【问题描述】:

我拥有一些由脚本组成的软件工具(没有编译的二进制文件)。我想将脚本直接存储在 bitbucket 存储库中,然后有一个工具包装器,当用户第一次尝试访问该版本(通过 git SHA 或标签)时,它将自动部署该工具的版本。我们还有其他一些工具可以做到这一点,但我不确定他们是否以最好的方式做到这一点。他们绝对没有处理竞争条件,并且为了简单起见,他们正在部署到每个人都可写的临时目录,这显然不是最安全的事情。

有谁知道做这种惰性部署的任何示例开源代码?我很好奇其他人是如何处理这个问题的。还是这种部署只是人们不做的事情?

【问题讨论】:

    标签: git deployment bitbucket


    【解决方案1】:

    如果将 Git 用作部署过程的一部分,则所述部署可以引用 submodule:默认情况下,Git 存储库将仅存储 URL 和 Git SHA1作为子模块引用的嵌套仓库(在您的情况下是您的脚本 BitBucket 仓库)

    每当用户第一次需要它时,git submodule update --init 就足以获取子模块 repo 的实际内容,并用脚本填充它。

    【讨论】:

    • 我不太明白子模块在这里有什么帮助。我知道您可以更新子模块的 SHA1,但您也可以在没有子模块的情况下执行此操作。我需要在 NFS 上部署多个版本。多个用户会访问这个,不同的用户需要不同的版本。
    • @NathanPeterson 子模块是 URL 和 SHA1 的组合。但是只有一个 SHA1,所以 一个 版本,这似乎不是您的用户所需要的。
    猜你喜欢
    • 2020-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-11
    • 1970-01-01
    • 2020-02-15
    • 2021-10-22
    • 1970-01-01
    相关资源
    最近更新 更多