variables: # System environment ESP_DOCS_ENV_IMAGE: "$CI_DOCKER_REGISTRY/esp-idf-doc-env-v5.4:1-1" ESP_DOCS_PATH: "$CI_PROJECT_DIR" docs_build: stage: build image: $ESP_DOCS_ENV_IMAGE tags: - build_docs variables: # Set Python buffering for better CI output PYTHONUNBUFFERED: 1 TYPE: "preview" DOCS_BUILD_DIR: "${CI_PROJECT_DIR}/docs/_build/" artifacts: when: always paths: - docs/_build/*/*/*.txt - docs/_build/*/*/html/* expire_in: 4 days before_script: # Install ESP-IDF documentation build tool - pip install -U pip - pip install esp-docs linuxdoc script: - cd docs - build-docs -t esp32 -l en .deploy_docs_template: image: $ESP_DOCS_ENV_IMAGE variables: DOCS_BUILD_DIR: "${CI_PROJECT_DIR}/docs/_build/" PYTHONUNBUFFERED: 1 # ensure all tags are fetched, need to know the latest/stable tag for the docs GIT_STRATEGY: clone GIT_DEPTH: 0 stage: test_deploy tags: - brew - amd64 script: - source ${CI_PROJECT_DIR}/.gitlab/ci/utils.sh # ensure all tags are fetched, need to know the latest/stable tag for the docs - add_doc_server_ssh_keys $DOCS_DEPLOY_PRIVATEKEY $DOCS_DEPLOY_SERVER $DOCS_DEPLOY_SERVER_USER - export GIT_VER=$(git describe --always ${PIPELINE_COMMIT_SHA} --) - pip install esp-docs - deploy-docs deploy_docs_preview: extends: - .deploy_docs_template except: refs: - master needs: - docs_build variables: TYPE: "preview" DOCS_BUILD_DIR: "${CI_PROJECT_DIR}/docs/_build/" DOCS_DEPLOY_PRIVATEKEY: "$DOCS_PREVIEW_PRIVATEKEY" DOCS_DEPLOY_SERVER: "$DOCS_PREVIEW_SERVER" DOCS_DEPLOY_SERVER_USER: "$DOCS_PREVIEW_SERVER_USER" DOCS_DEPLOY_PATH: "$DOCS_PREVIEW_PATH" DOCS_DEPLOY_URL_BASE: "$DOCS_PREVIEW_URL_BASE" deploy_docs_prod: extends: - .deploy_docs_template stage: deploy only: refs: - master needs: - docs_build variables: TYPE: "production" DOCS_DEPLOY_PRIVATEKEY: "$DOCS_PROD_PRIVATEKEY" DOCS_DEPLOY_SERVER: "$DOCS_PROD_SERVER" DOCS_DEPLOY_SERVER_USER: "$DOCS_PROD_SERVER_USER" DOCS_DEPLOY_PATH: "$DOCS_PROD_PATH" DOCS_DEPLOY_URL_BASE: "$DOCS_PROD_URL_BASE"