Gitlab CI/CD 意外行为

Gitlab CI/CD unexpected behavior

我是 gitlab 的 CD 新手,我想做一些测试。 我的 .gitlab-ci.yml 看起来像这样:

image: node:latest
before_script:
  - npm install -g @angular/cli
  - npm install
  - ng build --prod
  - apt-get update
  - apt-get install lftp
build:
  script:
    - lftp -e "set ftp:ssl-allow no;open $FTP_HOST ; user $FTP_USER $FTP_PASSWORD; mirror -X .* -X .*/ --reverse --verbose dist/ $FTP_ROOT; bye"

代码有效,文件已正确发送到服务器。 问题是所有文件都放在脚本创建的子目录下。 该子目录与 gitlab 存储库同名。 服务器根目录不为空(可能是这个问题?)。

我做错了什么? 提前谢谢你

mirror -X .* -X .*/ --reverse --verbose dist/ $FTP_ROOT 更改为 mirror -X .* -X .*/ --reverse --verbose dist/subdirectory $FTP_ROOT 以将您的 angular 应用放在 www.example.com 而不是 www.example。com/subdirectory(假设 $FTP_ROOT 是 FTP 服务器根目录——我实际上没有看到设置的位置。