即使 .cpanel.yml 文件存在,cPanel 也不会部署

gla*_*des 5 git deployment web-hosting push cpanel

我的存储库是通过网络托管商上的 cPanel 进行管理的。根据各种文档,您需要在存储库的顶部目录中有一个 .cpanel.yml 文件,以将文件部署到生产目录中。但这不起作用。

以下是 .cpanel.yml 的内容(顺便说一句,位于存储库的顶级目录中):

---
deployment:
      tasks:
        - export DEPLOYPATH=/home/glades/public_html
        - /bin/cp -r * $DEPLOYPATH
Run Code Online (Sandbox Code Playgroud)

而“glades”是我的用户名。据我所知,它应该将存储库中的所有文件部署到生产目录中,在本例中为 public_html 。但是当我用文件管理器查看 public_html 文件夹时,找不到任何文件。

文件管理器显示 public_html 文件夹如下

应该有 README.md 和 index.php 文件。但是index.php没有被改变(它是旧的)并且README.md甚至不存在。

现在,当我进入 cPanels“Git Version Control”的“Pull or Deploy”选项卡时,会出现此错误消息。但我可以向您保证,有一个有效的 .cpanel.yml 文件(因为当我删除本地存储库并再次克隆它时,主目录中会下载一个 .cpanel.yml 文件)。另外,签出的分支是主分支,我是目前唯一在处理它的分支,所以它应该是最新的。我不太明白。有人看到我哪里出错了吗?赞赏!

小智 2

对我来说解决这个问题的方法是在第一个路径上使用更多上下文,这是文件将从. 对于您的情况,请尝试以下操作:

---
deployment:
      tasks:
        - export DEPLOYPATH=/home/glades/public_html
        - /bin/cp -r /home/glades/<repositories>/<repo>/* $DEPLOYPATH
Run Code Online (Sandbox Code Playgroud)

当然,请替换<repositories>/<repo>为您的网络服务器上的存储库和存储库的位置。

  • 经过几个小时的搜索,这就是有效的方法。知道为什么有时需要绝对路径会很有趣,因为我看到许多其他人使用短/相对路径。 (2认同)