From a23c7ebbb98e87db3a20ddebd30713e161335daa Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Sat, 17 Feb 2024 19:09:01 -0600 Subject: [PATCH 1/2] ci: :green_heart: use sparse checkout and cache properly Signed-off-by: Eric Nemchik --- .github/workflows/deploy.yml | 61 ++++++++++++++++++++++++++---------- 1 file changed, 45 insertions(+), 16 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 98da6edd0c..42c35234b5 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,22 +1,38 @@ -name: Build mkdocs and deploy to GitHub Pages +name: Build and Deploy Docs on: [push, pull_request] jobs: + build: name: Build docs runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4.1.1 - - uses: actions/setup-python@v5.0.0 + - name: Checkout repository + uses: actions/checkout@v4.1.1 + with: + fetch-depth: 0 + sparse-checkout: | + docs + - name: Setup python + uses: actions/setup-python@v5.0.0 with: python-version: 3.x - - uses: actions/cache@v4.0.0 + - name: Get pip cache directory + id: pip-cache + run: | + echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT + - name: Cache dependencies + uses: actions/cache@v4.0.0 with: - key: ${{ github.ref }} - path: .cache - - run: pip install -r docs/requirements.txt - - run: mkdocs build + path: ${{ steps.pip-cache.outputs.dir }} + key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} + restore-keys: | + ${{ runner.os }}-pip- + - name: Install dependencies + run: pip install -r docs/requirements.txt + - name: Build documentation + run: mkdocs build deploy: if: github.event_name == 'push' && contains(fromJson('["refs/heads/master", "refs/heads/main"]'), github.ref) @@ -24,15 +40,28 @@ jobs: name: Deploy docs runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4.1.1 + - name: Checkout repository + uses: actions/checkout@v4.1.1 with: - fetch-depth: "0" - - uses: actions/setup-python@v5.0.0 + fetch-depth: 0 + sparse-checkout: | + docs + - name: Setup python + uses: actions/setup-python@v5.0.0 with: python-version: 3.x - - uses: actions/cache@v4.0.0 + - name: Get pip cache directory + id: pip-cache + run: | + echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT + - name: Cache dependencies + uses: actions/cache@v4.0.0 with: - key: ${{ github.ref }} - path: .cache - - run: pip install -r docs/requirements.txt - - run: mkdocs gh-deploy --force + path: ${{ steps.pip-cache.outputs.dir }} + key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} + restore-keys: | + ${{ runner.os }}-pip- + - name: Install dependencies + run: pip install -r docs/requirements.txt + - name: Deploy to GitHub Pages + run: mkdocs gh-deploy --force From 1928ced8fab2e6f96756797b34e688177616369d Mon Sep 17 00:00:00 2001 From: Eric Nemchik Date: Sat, 17 Feb 2024 19:10:34 -0600 Subject: [PATCH 2/2] Update deploy.yml --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 42c35234b5..44e43f8d66 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,4 +1,4 @@ -name: Build and Deploy Docs +name: Build mkdocs and deploy to GitHub Pages on: [push, pull_request]