name: Build Docs on: workflow_call: inputs: schemas_artifact: description: "Name of the artifact that has updated schemas, set to `null` to not update" default: 'null' required: false type: string push: branches: [main] paths: - docs/** - NewHorizons/Schemas/*.xsd env: URL_PREFIX: '/' PIPENV_VENV_IN_PROJECT: 1 jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: szenius/set-timezone@v1.0 with: timezoneLinux: "America/New York" - run: mkdir ./.venv - run: cp -r docs/** . - name: Cache Dependencies uses: actions/cache@v2 id: cache-dependencies with: path: ./.venv key: ${{ runner.os }}-pip-${{ hashFiles('**/Pipfile.lock') }} restore-keys: | ${{ runner.os }}-pipenv - name: Install dependecies uses: VaultVulp/action-pipenv@v2.0.1 with: command: install --dev - name: Download Schemas if: ${{ inputs.schemas_artifact != 'null' }} uses: actions/download-artifact@v3 with: name: ${{ inputs.schemas_artifact }} path: NewHorizons/Schemas - name: Copy Schemas run: cp -rf NewHorizons/Schemas content/pages/ - name: Build Site uses: VaultVulp/action-pipenv@v2.0.1 with: command: run menagerie generate - name: Upload Artifact if: success() && github.ref == 'refs/heads/main' uses: actions/upload-pages-artifact@v1 with: path: out/ - name: Deploy To Pages if: success() && github.ref == 'refs/heads/main' uses: actions/deploy-pages@v1