deploy-test-stand:
  stage: deploy
  image: harbor.vimpelcom.ru/dockerhub/library/alpine:3.21.2
  variables:
    stand: cloud-stand.vega-dev.cloud.vimpelcom.ru
  rules:
    - if: $CI_COMMIT_BRANCH && $CI_PIPELINE_SOURCE == "merge_request_event"
      when: never
    - if: $CI_PIPELINE_SOURCE == "push"
      when: manual
  before_script:
    - |
      sed -i s%https://dl-cdn.alpinelinux.org/%http://rhrepo.vimpelcom.ru/ext/ya/mirrors/% /etc/apk/repositories && \
      apk --no-cache add tzdata ca-certificates curl openssh-client yq jq && \
      rm -rf /var/cache/apk/*
    - which ssh-agent || (apt-get update -y && apt-get install openssh-client -y)
    - eval $(ssh-agent -s)
    - mkdir -p ~/.ssh
    - echo -n "$TECH_SSH_KEY" | tr -d '\r' > ~/.ssh/id_rsa
    - chmod 700 ~/.ssh
    - chmod 600 ~/.ssh/id_rsa
    - >
      echo "stand: ${stand}"
      ssh-keyscan "${stand}" >> ~/.ssh/known_hosts
    - chmod 644 ~/.ssh/known_hosts
  script:
    - >
      echo -e "Connect to ${stand}..." &&
      scp -o StrictHostKeyChecking=no ci/deploy/deploy.sh "dorootless@${stand}:~/deploy.sh" &&
      ssh "dorootless@${stand}" "export CONTAINER_REGISTRY=$CONTAINER_REGISTRY &&
      export PRODUCT=$PRODUCT &&
      export PRODUCT_VERSION=$PRODUCT_VERSION &&
      export IMAGE_NAME=$IMAGE_NAME &&
      chmod 700 ~/deploy.sh &&
      ~/deploy.sh ${IMAGE_NAME} &&
      rm -f ~/deploy.sh"
  needs:
    - job: build-image
      optional: true
