Github CI/CD/分支到外部服务器?

Github CI/CD/分支到外部服务器?

我们在严格的开发环境中有一个仓库,并且私有的网络服务器位于/var/www/dev/repo我们希望任何创建的分支都能自动创建并添加到/var/www/branches/feature-coolfeature并自动基于主分支(或“基于分支”)。这样,我们可以非常轻松地将新分支加载到我们的/var/www/dev/repo并向客户和产品所有者演示我们的新分支功能。

想象一下我们平台中的“分支切换器”,它将在开发分支之间切换。此外,我们希望能够提交到/var/www/branches/feature-coolfeature,既可以直接在服务器上给定的文件夹中,也可以通过 Github Desktop 等进行。

我们明白我们可能在这方面做得很差,并感谢任何关于我们可以如何进行此流程的指示,甚至尝试完全不同的流程。到目前为止,我们已经设法通过 Github webhook 创建文件夹结构并从原始存储库复制所有内容,但它不明白它实际上是一个分支(认为它是主分支),我们只是看到几个迹象表明我们从一个非常非常糟糕的角度来处理这个问题。既与 github 有关,也与权限有关。我们是试图学习 DevOps 的开发人员。

非常感激所有建议。

答案1

好吧,第三个愿望只是一坨屎——你必须重新考虑一下你现在和未来的工作流程,以免在不久的将来哭泣(我可以理解你的需求背景,但你必须记住: “每个问题至少有一个明显的简单的错误的解决方案”)

  1. 任何纯开发者不可能(也永远不会)正确的 DevOps。因为 DevOps 需要另一种更广泛的思维方式,不仅限于“我可以编码”......你必须踩到了耙子,高兴地去运行他们
  2. 今天你的团队至少要有以下人员 (开发人员除外):
    • 好的使用的 WWW 服务器的管理员 (好的因为他必须知道这是在好的和用过的因为不同的服务器......嗯......不同:在 Apache 中构建动态 vhost 对我来说不是问题,但如果没有事先在 Boa、Tomcat、IIS、lighttpd、Nginx... 中 RTFM,我就会失败)
    • 先进的Git 用户(git-hooks 在“准备生产”状态下不会那么明显,普通的 git-boys 不擅长技术细节,与狂热的说教相反)
    • 好的NetworkAdmin(如果您选择使用远程系统 - 您的主机和 GitHub,单点只是更简单和透明的方式 - 见下文)

GitHub,作为 1) 远程系统 2) 你不拥有并且无法 100% 管理,并不是一个合理的明智选择:你总是会受到远程托管解决方案的限制和额外的复杂性(远程通信 GitHub - 开发环境)以及额外的故障点。现在有很多可用的以 Git 为中心的解决方案(从仅提供存储库到完整的 ALM 周期),可以部署在本地系统

附言:好的,您已经用完了我的免费咨询的限制,但可以不免费聘请我(任何时候,任何规模)

相关内容