Currently, the website is rebuilt on qemu-project.org using a separate container (https://github.com/stefanha/qemu-docs/) cron job hook. We can instead reuse the GitLab's CI artifacts.
To do so, we use the same mechanism that is already in place for qemu-web.git. Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- .gitlab-ci.yml | 23 ++++++++++++++++++++++ tests/docker/dockerfiles/ubuntu2004.docker | 2 ++ 2 files changed, 25 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4532f1718a..729138064c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -6,6 +6,7 @@ stages: - containers-layer2 - build - test + - update include: - local: '/.gitlab-ci.d/edk2.yml' @@ -609,3 +610,25 @@ pages: artifacts: paths: - public + +deploy: + image: $CI_REGISTRY_IMAGE/qemu/ubuntu2004:latest + stage: update + needs: + - job: pages + artifacts: true + before_script: + - eval $(ssh-agent -s) + - cat "$SSH_PRIVATE_KEY_FILE" | tr -d '\r' | ssh-add - + - mkdir -m700 -p ~/.ssh + - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" >> ~/.ssh/config' + script: + - ssh $SSH_DEPLOY_DESTINATION "cd /var/www/qemu-project.org && mkdir new-docs && rsync -az docs/ new-docs" + - rsync -avz --delete public/ $SSH_DEPLOY_DESTINATION:/var/www/qemu-project.org/new-docs + - ssh $SSH_DEPLOY_DESTINATION "cd /var/www/qemu-project.org && rm -rf old-docs && mv docs old-docs && mv new-docs docs" + only: + refs: + - master + variables: + - $SSH_PRIVATE_KEY_FILE + - $SSH_DEPLOY_DESTINATION diff --git a/tests/docker/dockerfiles/ubuntu2004.docker b/tests/docker/dockerfiles/ubuntu2004.docker index ae889d8482..2bb826c376 100644 --- a/tests/docker/dockerfiles/ubuntu2004.docker +++ b/tests/docker/dockerfiles/ubuntu2004.docker @@ -50,6 +50,7 @@ ENV PACKAGES flex bison \ make \ netcat-openbsd \ ninja-build \ + openssh-client \ python3-numpy \ python3-opencv \ python3-pil \ @@ -58,6 +59,7 @@ ENV PACKAGES flex bison \ python3-venv \ python3-yaml \ rpm2cpio \ + rsync \ sparse \ tesseract-ocr \ tesseract-ocr-eng \ -- 2.29.2