我在GIT_STRATEGY
文件中将none
变量设置为.gitlab-ci.yml
。因此,不会自动在部署服务器中构建存储库。因此,我们避免使用所有历史记录等构建git存储库。将使用git-archive
命令代替。
这样,仅需要的文件将从GitLab服务器复制。
现在,我正在寻找将bash脚本发送给跑步者的方法。
我们知道,.gitlab-ci.yml
文件实际上是发送给跑步者的。这不是将bash脚本发送给跑步者的一种方法吗?然后,我将制作.gitlab-ci.yml
文件只是为了启动bash脚本并完成工作。
当然,我可以将命令放入yml,但是由于yml语法的原因,因此存在一些限制。我也可以将运行程序scp
用作文件,但这太复杂了。有什么想法吗?
让我尝试解决我将要实现的目标。有几个bash脚本文件。它们每个都是部署的特定方案。例如,有人从GitLab提取项目文件,删除文件夹public
中的文件,然后将项目文件移到其中。
另一个脚本文件从GitLab提取项目文件,将文件移动到文件夹并创建备份。
另一个脚本文件从GitLab提取项目文件,移动文件,创建备份并执行数据库迁移。等等
有三位主持人:
管理员的本地PC。
远程GitLab服务器
该服务器网站的远程部署服务器。 (具有Nginx或Apache)
其中一个脚本文件将在部署服务器上执行。脚本文件很多,因此我们必须不时提供替换脚本文件。
问题是如何将脚本文件带到部署服务器,以便运行程序可以运行它?