Один из способов «решить» это то, что триггер ImageChange прослушивает что-то другое, а не конкретный идентификатор фиксации. Некоторое логическое имя, которое не существует как тег в докере. Скажите «по умолчанию».
Если вы сделаете это, то в вашем скрипте единственное, что вам нужно сделать, это
- oc tag registry.gitlab.com/myproject/backend:$CI_COMMIT_SHORT_SHA backend:default
OpenShift позаботится об обновлении образа в DeploymentConfig и развертывании нового развертывания дляВы.
ОП спросили причину, почему не используете последнюю версию. Последнее является своего рода «волшебным» в том смысле, что если вы нажмете на изображение в реестре без тега, он будет называть этот тег последним. Это позволяет очень легко перезаписать его случайно.
Допустим, вы используете «последний» в качестве тега, который вы слушаете в ImageStream. Что произойдет, если кто-то импортирует imageStream? Он выберет последний тег, перезаписав то, что вы пометили вручную.
Если вы хотите, чтобы этот тип управления был в вашем конвейере, используйте имя ImageStreamTag, которого нет в вашем реестре докеров, как я уже говорил выше.