在gitlab-ci文件中,我们有一些像这样的变量:
variables:
...
LOCAL_IMAGE_PHP: $CI_REGISTRY_IMAGE/php:$CI_COMMIT_BRANCH
...
我们将其用作另一个阶段的图像文件:
.build-php:
...
image: $LOCAL_IMAGE_PHP
...
然后我们有一个标签为master
,staging
和develop
的docker镜像。因此,会根据当前正在构建的分支自动选择正确的映像。
但是,我们也想用它来在功能分支上构建和运行自动测试。但是,不存在php:feature/something
张图片。
是否可以根据$CI_COMMIT_BRANCH
的值有条件地分配另一个变量?类似于DOCKER_TAG: $CI_COMMIT_BRANCH if ($CI_COMMIT_BRANCH in ['master', 'staging', 'develop']) else 'develop'
。因此,如果DOCKER_TAG
是一个功能分支,则会回退到develop
。
因此,应以某种方式在分支master
,staging
和develop
上选择相应的docker映像,但回退到其他任何分支上的develop
。
有可能这样吗?还是有其他方法来处理这种情况?
谢谢!