From 0cba3f8f27068cb4e86488a1cc51799243f089c1 Mon Sep 17 00:00:00 2001 From: Mainak Kundu Date: Thu, 9 Mar 2023 16:21:08 -0500 Subject: [PATCH] CI to build+deploy release doc --- .github/workflows/ci.yml | 10 --- .github/workflows/nightly-dev-doc-build.yml | 10 +-- .github/workflows/release-doc-build.yml | 81 +++++++++++++++++++++ 3 files changed, 82 insertions(+), 19 deletions(-) create mode 100644 .github/workflows/release-doc-build.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 83e68162e3b4..c28daef112b0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -197,16 +197,6 @@ jobs: path: HTML-Documentation-tag-${{ env.DOC_DEPLOYMENT_IMAGE_TAG }}.zip retention-days: 7 -# - name: Deploy stable documentation -# uses: pyansys/actions/doc-deploy-stable@v3 -# if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && !contains(github.ref, 'dev') -# with: -# doc-artifact-name: 'HTML-Documentation-tag-${{ env.DOC_DEPLOYMENT_IMAGE_TAG }}' -# decompress_artifact: true -# cname: ${{ env.DOCUMENTATION_CNAME }} -# token: ${{ secrets.GITHUB_TOKEN }} - - build: name: Build needs: test-import diff --git a/.github/workflows/nightly-dev-doc-build.yml b/.github/workflows/nightly-dev-doc-build.yml index 13035f7e93f8..72a3096a2750 100644 --- a/.github/workflows/nightly-dev-doc-build.yml +++ b/.github/workflows/nightly-dev-doc-build.yml @@ -20,18 +20,10 @@ jobs: steps: - uses: actions/checkout@v3 - # used for documentation deployment - - name: Get Bot Application Token - id: get_workflow_token - uses: peter-murray/workflow-application-token-action@v2 - with: - application_id: ${{ secrets.BOT_APPLICATION_ID }} - application_private_key: ${{ secrets.BOT_APPLICATION_PRIVATE_KEY }} - - name: Setup Python uses: actions/setup-python@v4 with: - python-version: 3.9 + python-version: '3.10' - name: Install OS packages run: | diff --git a/.github/workflows/release-doc-build.yml b/.github/workflows/release-doc-build.yml new file mode 100644 index 000000000000..c50baa194a3a --- /dev/null +++ b/.github/workflows/release-doc-build.yml @@ -0,0 +1,81 @@ +name: Release Documentation Build + +on: + workflow_dispatch: + push: + tags: + - 'v*' + - '!*dev*' + +env: + DOCUMENTATION_CNAME: 'fluent.docs.pyansys.com' + DOC_DEPLOYMENT_IMAGE_TAG: v23.1.0 + +jobs: + nightly_docs_build: + runs-on: [self-hosted, pyfluent] + + steps: + - uses: actions/checkout@v3 + + - name: Setup Python + uses: actions/setup-python@v4 + with: + python-version: '3.10' + + - name: Install OS packages + run: | + sudo apt update + sudo apt-get install pandoc libegl1 make xvfb libfontconfig1 libxrender1 libxkbcommon-x11-0 -y + + - name: Install pyfluent + run: make install + + - name: Login to GitHub Container Registry + uses: docker/login-action@v2 + with: + registry: ghcr.io + username: ${{ secrets.GH_USERNAME }} + password: ${{ secrets.REPO_DOWNLOAD_PAT }} + + - name: Pull Fluent docker image + run: make docker-pull + env: + FLUENT_IMAGE_TAG: ${{ env.DOC_DEPLOYMENT_IMAGE_TAG }} + + - name: Run API codegen + run: make api-codegen + env: + ANSYSLMD_LICENSE_FILE: ${{ format('1055@{0}', secrets.LICENSE_SERVER) }} + PYFLUENT_START_INSTANCE: 0 + PYFLUENT_LAUNCH_CONTAINER: 1 + FLUENT_IMAGE_TAG: ${{ env.DOC_DEPLOYMENT_IMAGE_TAG }} + + - name: Build All Documentation + run: make build-all-docs + env: + ANSYSLMD_LICENSE_FILE: ${{ format('1055@{0}', secrets.LICENSE_SERVER) }} + PYFLUENT_START_INSTANCE: 0 + FLUENT_IMAGE_TAG: ${{ env.DOC_DEPLOYMENT_IMAGE_TAG }} + + - name: Zip HTML Documentation before upload + run: | + sudo apt install zip -y + pushd doc/_build/html + zip -r ../../../HTML-Documentation-tag-${{ env.DOC_DEPLOYMENT_IMAGE_TAG }}.zip . + popd + + - name: Upload HTML Documentation + uses: actions/upload-artifact@v3 + with: + name: HTML-Documentation-tag-${{ env.DOC_DEPLOYMENT_IMAGE_TAG }} + path: HTML-Documentation-tag-${{ env.DOC_DEPLOYMENT_IMAGE_TAG }}.zip + retention-days: 7 + + - name: "Deploy release documentation" + uses: pyansys/actions/doc-deploy-stable@v3 + with: + doc-artifact-name: 'HTML-Documentation-tag-${{ env.DOC_DEPLOYMENT_IMAGE_TAG }}' + decompress_artifact: true + cname: ${{ env.DOCUMENTATION_CNAME }} + token: ${{ secrets.GITHUB_TOKEN }}