我正在尝试为我的项目启用 Review Apps,并为分支自动部署到 Heroku。每个部署都应具有以下地址:
https://prefix-<branch-name>.herokuapp.com
Run Code Online (Sandbox Code Playgroud)
Heroku 要求应用程序名称不超过 30 个字符,所以我的工作应该缩短分支名称,如果它太长。
我试图以一种常见的 Unix 方式来做到这一点,如下所示:
variables:
REVIEW_APP_NAME: "prefix-${CI_COMMIT_REF_SLUG:0:23}"
Run Code Online (Sandbox Code Playgroud)
但它解决了“前缀-”。
我还找到了以下解决方案,它允许我在脚本部分使用缩短的分支名称。但它仍然不能用于环境 url 参数。这导致应用程序被部署到 Heroku,但 GitLab 根本没有跟踪(环境列表中没有部署,也没有删除分支的操作)。
variables:
REVIEW_APP_NAME: "prefix-$${CI_COMMIT_REF_SLUG:0:23}"
before_script:
- eval export REVIEW_APP_NAME=${REVIEW_APP_NAME}
Run Code Online (Sandbox Code Playgroud)
还有其他方法可以实现正确的行为吗?