Add Nginx to development stack to host umbrella website #4
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This GitHub Actions workflow creates a production build of the website and deploys it to GitHub Pages. | |
# Reference: https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions | |
name: Build and deploy to GitHub Pages | |
on: | |
push: { branches: [ main ] } | |
workflow_dispatch: { } | |
# Reference: https://docs.github.com/en/actions/using-jobs/using-concurrency | |
concurrency: | |
group: github-pages | |
cancel-in-progress: true | |
jobs: | |
# Use existing workflows to compile the legacy documentation. | |
# Reference: https://docs.github.com/en/actions/using-workflows/reusing-workflows#calling-a-reusable-workflow | |
compile-legacy-nmdc-documentation: | |
name: Compile legacy NMDC documentation | |
uses: ./.github/workflows/compile-legacy-nmdc-documentation.yml | |
compile-legacy-workflow-documentation: | |
name: Compile legacy workflow documentation | |
uses: ./.github/workflows/compile-legacy-workflow-documentation.yml | |
build: | |
name: Compile main website | |
# This job depends upon other jobs succeeding. | |
# Reference: https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#jobsjob_idneeds | |
needs: | |
- compile-legacy-nmdc-documentation | |
- compile-legacy-workflow-documentation | |
runs-on: ubuntu-latest | |
permissions: | |
contents: read | |
steps: | |
- name: Check out commit # Docs: https://github.com/actions/checkout | |
uses: actions/checkout@v4 | |
- name: Download all artifacts | |
uses: actions/download-artifact@v4 # Docs: https://github.com/actions/download-artifact | |
with: | |
path: artifacts | |
- name: Assemble website file tree | |
run: | | |
ls -R artifacts | |
mkdir -p _build/html _build/html/legacy | |
cp -R artifacts/legacy-nmdc-documentation-as-html _build/html/legacy/nmdc-documentation | |
cp -R artifacts/legacy-workflow-documentation-as-html _build/html/legacy/workflow-documentation | |
cp content/index.html _build/html/index.html | |
- name: Save the result for publishing to GitHub Pages # Docs: https://github.com/actions/upload-pages-artifact | |
uses: actions/upload-pages-artifact@v3 | |
with: | |
path: _build/html | |
deploy: | |
name: Deploy website | |
needs: | |
- build | |
runs-on: ubuntu-latest | |
# Reference: https://github.com/actions/deploy-pages | |
permissions: | |
pages: write | |
id-token: write | |
environment: | |
name: github-pages | |
url: ${{ steps.deployment.outputs.page_url }} | |
steps: | |
# Reference: https://github.com/actions/deploy-pages | |
- name: Deploy to GitHub Pages | |
id: deployment | |
uses: actions/deploy-pages@v4 |