Cig*_*gol 1 middleman lftp gitlab
我正在尝试使用 Gitlab 及其 CI/CD 设施将我的网站自动部署到远程服务器。我正在使用一个名为 middleman 的静态站点生成器,它将所有文件生成到构建文件夹中。这在本地有效,如果我手动上传文件,它将准确反映我想要的内容。问题是使用以下命令时,尽管它正确生成了所有文件;
$ lftp -c "set ftp:ssl-allow no; open -u $USERNAME,$PASSWORD $HOST; mirror -Rv build/ ./public_html --delete-first --ignore-time --parallel=10 --exclude-glob .git* --exclude .git/"
Run Code Online (Sandbox Code Playgroud)
这就是最终被吐出来的;
Removing old file `stylesheets/styles-bb5541bd.css'
Removing old file `stylesheets/styles-bb5541bd.css.gz'
Transferring file `stylesheets/styles-4deda93b.css'
Transferring file `stylesheets/styles-4deda93b.css.gz'
Run Code Online (Sandbox Code Playgroud)
如您所见,我正在使用资产哈希值,但这里它正在更新样式表哈希值,但没有将其反映在单独的 HTML 文件中,这些文件显然会引用新的哈希值...给出了什么?文件本身已更新,但未上传。
非常感谢对此的任何帮助。
对你来说可能已经太晚了,但问题是“--ignore-time”。如果文件大小保持不变,则不会重新上传。因此,将 html 文件中的“stylesheets/styles-bb5541bd.css”更改为“stylesheets/styles-4deda93b.css”不会改变大小,因此不会被镜像。
更新:由于直接使用 LFTP 存在这些问题,我现在使用 git-ftp。
这是我的 .gitlab-ci.yml
https://gist.github.com/westhouseit/5310a21ca6e6218ebc20ba94530bb0a6
和 .git-ftp-ignore
https://gist.github.com/westhouseit/d3e84f3c26d733b286c0481f957052ef
| 归档时间: |
|
| 查看次数: |
1386 次 |
| 最近记录: |