Skip to content

fix(docs): fixes jobs by combining them build-and-deploy #29

fix(docs): fixes jobs by combining them build-and-deploy

fix(docs): fixes jobs by combining them build-and-deploy #29

Workflow file for this run

name: Build, Test, and Deploy Documentation
on:
push:
branches: ['main'] # Trigger workflow on push to the 'main' branch
workflow_dispatch: # Allow manual triggering of the workflow
env:
INSTANCE: 'Writerside/dcs' # Name of the module (adjust for your project)
ARTIFACT: 'webHelpDCS2-all.zip' # Name of the artifact to be generated
DOCKER_VERSION: '242.21870' # Specific Docker version
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
token: ${{ secrets.GITHUB_TOKEN }} # Ensure access to private repo
fetch-depth: 0
- name: Build docs using Writerside Docker builder
uses: JetBrains/writerside-github-action@v4
with:
instance: ${{ env.INSTANCE }}
artifact: ${{ env.ARTIFACT }}
docker-version: ${{ env.DOCKER_VERSION }}
# List files after the build step to verify the artifact location
- name: List files after build
run: ls -R
# Save the artifact generated after the build
- name: Save artifact with build results
uses: actions/upload-artifact@v4
with:
name: docs
path: |
${{ env.ARTIFACT }}
report.json
retention-days: 7 # Keep artifacts for 7 days
# Unzip artifact and prepare for deployment
- name: Unzip and list artifact
run: |
unzip -O UTF-8 -qq ${{ env.ARTIFACT }} -d dir
ls -R dir # List the contents of the unzipped directory
- name: Configure GitHub Pages
uses: actions/configure-pages@v4
- name: Upload artifact to GitHub Pages
uses: actions/upload-pages-artifact@v3
with:
path: dir
- name: Deploy to GitHub Pages
uses: actions/deploy-pages@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
test:
runs-on: ubuntu-latest
needs: build-and-deploy # Ensure build completes before running tests
steps:
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: docs
path: artifacts
- name: Test documentation using Writerside Checker
uses: JetBrains/writerside-checker-action@v1
with:
instance: ${{ env.INSTANCE }}