Skip to content
corner-down-right

GitHub Action

Writerside doc errors checker

v1 Latest version

Writerside doc errors checker

corner-down-right

Writerside doc errors checker

Inspects documentation for errors

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Writerside doc errors checker

uses: JetBrains/writerside-checker-action@v1

Learn more about this action in JetBrains/writerside-checker-action

Choose a version

JetBrains team project

Writerside documentation test result reporter

This Docker application parses JSON report and fails the pipeline when documentation contains errors.

To test documentation within your pipeline, add the following job to your workflow:

  test:
    # Requires build job results
    needs: build
    runs-on: ubuntu-latest

    steps:
      - name: Download artifacts
        uses: actions/download-artifact@v1
        with:
          name: docs
          path: artifacts

      - name: Test documentation
        uses: JetBrains/writerside-checker-action@v1
        with:
          instance: ${{ env.INSTANCE }}

A complete workflow from building documentation with testing and publishing it on github might look like this:

name: Build documentation

on:
# If specified, the workflow will be triggered automatically once you push to the `main` branch.
# Replace `main` with your branch’s name
    push:
        branches: ["main"]
# Specify to run a workflow manually from the Actions tab on GitHub
    workflow_dispatch:

# Gives the workflow permissions to clone the repo and create a page deployment
permissions:
    id-token: write
    pages: write

env:
    # Name of module and id separated by a slash
    INSTANCE: Writerside/hi
    # Replace HI with the ID of the instance in capital letters
    ARTIFACT: webHelpHI2-all.zip
    # Writerside docker image version
    DOCKER_VERSION: 2.1.1479-p3869
# Add the variable below to upload Algolia indexes
# Replace HI with the ID of the instance in capital letters
    ALGOLIA_ARTIFACT: algolia-indexes-HI.zip

jobs:
    build:
        runs-on: ubuntu-latest

        steps:
        - name: Checkout repository
          uses: actions/checkout@v3

        - name: Build Writerside docs using Docker
          uses: JetBrains/writerside-github-action@v4
          with:
            instance: ${{ env.INSTANCE }}
            artifact: ${{ env.ARTIFACT }}
            docker-version: ${{ env.DOCKER_VERSION }}

        - name: Upload documentation
          uses: actions/upload-artifact@v3
          with:
            name: docs
            path: |
              artifacts/${{ env.ARTIFACT }}
              artifacts/report.json
            retention-days: 7

    # Add the step below to upload Algolia indexes
        - name: Upload algolia-indexes
          uses: actions/upload-artifact@v3
          with:
            name: algolia-indexes
            path: artifacts/${{ env.ALGOLIA_ARTIFACT }}
            retention-days: 7

    test:
        # Requires the build job results
        needs: build
        runs-on: ubuntu-latest

        steps:
          - name: Download artifacts
            uses: actions/download-artifact@v1
            with:
              name: docs
              path: artifacts

          - name: Test documentation
            uses: JetBrains/writerside-checker-action@v1
            with:
              instance: ${{ env.INSTANCE }}

    deploy:
        environment:
            name: github-pages
            url: ${{ steps.deployment.outputs.page_url }}
        # Requires the test job results
        needs: test
        runs-on: ubuntu-latest

        steps:
            - name: Download artifact
              uses: actions/download-artifact@v3
              with:
                name: docs

            - name: Unzip artifact
              uses: montudor/action-zip@v1
              with:
                args: unzip -qq ${{ env.ARTIFACT }} -d dir

            - name: Setup Pages
              uses: actions/configure-pages@v2

            - name: Upload artifact
              uses: actions/upload-pages-artifact@v1
              with:
                path: dir

            - name: Deploy to GitHub Pages
              id: deployment
              uses: actions/deploy-pages@v1