代码之家  ›  专栏  ›  技术社区  ›  trzczy

让runner执行bash脚本的方法

  •  0
  • trzczy  · 技术社区  · 7 年前

    我设定了一个 GIT_STRATEGY 可变到 none 在一个 .gitlab-ci.yml 文件因此,存储库不会自动构建在部署服务器中。因此,我们避免构建包含所有历史记录的git存储库 git-archive 命令将被使用。

    这样,只需要从GitLab服务器复制所需的文件。

    正如我们所知 gitlab ci。yml 文件实际上正在发送给跑步者。这不是一种将bash脚本发送给runner的方法吗?然后我会做 gitlab ci。yml 文件来启动bash脚本并完成一项工作。

    当然,我可以将这些命令放到yml中,但是由于yml语法的原因,有一些限制。我也可以成为跑步者 scp 但这太复杂了。有什么想法吗?

    使现代化

    让我试着接近我将要实现的目标。有几个bash脚本文件。其中每一个都是部署的特定场景。例如,从GitLab中提取项目文件,删除文件夹中的文件 public 并将项目文件移到其中。

    另一个脚本文件从GitLab中提取项目文件,将文件移动到文件夹并创建备份。

    另一个脚本文件从GitLab中提取项目文件,移动文件,创建备份并执行数据库迁移。等

    有三位主持人:

    1. 管理员的本地PC。

    2. 远程GitLab服务器

    3. 远程部署服务器,用于服务器网站。(它有Nginx或Apache)

    其中一个脚本文件将在部署服务器上执行。有很多脚本文件,所以我们必须不时提供替换脚本文件的服务。

    问题是如何将脚本文件带到部署服务器,以便运行程序可以运行它?

    0 回复  |  直到 7 年前
    推荐文章