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> --- v1->v2: use same image and before_script as qemu-web.git .gitlab-ci.yml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index fd0162ad29..d9afc79b30 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' @@ -627,3 +628,26 @@ pages: artifacts: paths: - public + +deploy: + image: centos:8 + stage: update + needs: + - job: pages + artifacts: true + before_script: + - dnf install -y openssh-clients rsync + - 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 -- 2.29.2