stages: - build build_frontend: stage: build tags: - docker image: registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-build before_script: - eval $(ssh-agent -s) - ssh-add <(echo "${DEPLOY_ENV_KEY}") - mkdir -p ~/.ssh - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config' - cp -r Frontend/src/ /workdir/src/ - cp -r Frontend/public/ /workdir/public/ script: - pwd - ls -la - cd /workdir - npm run build - ls -la /workdir/build - ssh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET "mkdir -p /home/$DEPLOY_ENV_USER/serve" - ssh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET "rm -rf /home/$DEPLOY_ENV_USER/serve/*" - ssh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET "mkdir -p /home/$DEPLOY_ENV_USER/serve/$CI_COMMIT_REF_NAME" - rsync --progress -av -e ssh /workdir/build/* $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET:/home/$DEPLOY_ENV_USER/serve/ environment: name: deploy url: https://$DEPLOY_ENV_TARGET build_docker_host: stage: build tags: - docker-builder before_script: - eval $(ssh-agent -s) - ssh-add <(echo "${DEPLOY_ENV_KEY}") - mkdir -p ~/.ssh - echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config - docker info - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY script: - docker build -f Docker/Dockerfile_FE_Host -t registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-serve . - docker push registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-serve - ls -la Docker/config/restart-host.sh - rsync --progress -av -e ssh Docker/config/restart-host.sh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET:/home/$DEPLOY_ENV_USER/restart-host.sh - ssh $DEPLOY_ENV_USER@$DEPLOY_ENV_TARGET "./restart-host.sh" when: manual build_docker_builder: stage: build tags: - docker-builder before_script: - docker info - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY script: - docker build -f Docker/Dockerfile_FE_Builder -t registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-build . - docker push registry.gitlab.com/fia72-dev/eva_lernsituation/frontend-build when: manual