Команда из CI сценария gitlab.
Вариант 1 (двойные кавычки):
ssh docker-user@192.168.100.3 "(docker stop $(docker ps -q -f ancestor=docker-ci-cd)) && echo CONTAINER docker-ci-cd STOPPED || echo CONTAINER docker-ci-cd NOT FOUND"
Вариант 2 (одинарные кавычки):
ssh docker-user@192.168.100.3 '(docker stop $(docker ps -q -f ancestor=docker-ci-cd)) && echo CONTAINER docker-ci-cd STOPPED || echo CONTAINER docker-ci-cd NOT FOUND'
Вариант 3 (оригинал из CI файла):
ssh $REMOTE_SERVER_ADDRESS "(docker stop $(docker ps -q -f ancestor=$CI_PROJECT_NAME)) && echo CONTAINER $CI_PROJECT_NAME STOPPED || echo CONTAINER $CI_PROJECT_NAME NOT FOUND"
Вариант 1 выполняет команду докера локально, долго думал что ошибка на хосте с докером.
Не может найти контейнер и падает в ошибку естественно.
Вариант 2 выполняет команду докера удалённо, но не может получить доступ к переменным окружения из Вариант 3.
Как мне подхватить окружение и выполнить команду удалённо?