Мои текущие настройки - это то, что я установил мой готический репозиторий git в своем VPS, назовите его staging
.Каков наилучший способ запуска теста в докере перед развертыванием
Так что, когда я делаю:
git push staging staging
Я повторно мой докер с смонтированным каталогом обратитесь к GIT-workdirs.
Теперь я хотел бы также добавить запуск теста внутри этого докера, а если что-то не удается, верните его назад к предыдущей (рабочей) фиксации. [1]
, что это лучший способ сделать [1]
моих текущих крючками выглядит следующим образом:
$worktree = /my/work/directory
$gitdir = /my/repo/dir.git
$containername = mycontainer
git --work-tree=$worktree --git-dir=$gitdir checkout staging -f
cd $worktree
docker stop $containername || true
docker kill $containername || true
docker rm $containername || true
docker run -d -p $port1:$port2 --name $containername -v $worktree:/root/src -it $imagename bash -c $runscript