Skip to content

run-htmltest-external #26

run-htmltest-external

run-htmltest-external #26

Workflow file for this run

# .github/workflows/run-htmltest.yml
# (c) 2021 Robb Romans
#
# Run htmltest link checker on generated HTML output in dist/
# https://github.com/wjdp/htmltest
#
name: run-htmltest-external
on:
schedule:
# 10am UTC on weekdays
- cron: '0 10 * * 1,2,3,4,5'
jobs:
htmltest:
runs-on: ubuntu-large
container:
image: ghcr.io/viamrobotics/canon:amd64
steps:
- name: Check out repository
uses: actions/checkout@v3
with:
submodules: true # Fetch Hugo themes
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
- name: Set up Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: "latest"
extended: true
- name: Build
run: make build-dist
- name: Test HTML
# https://github.com/wjdp/htmltest-action/
# Don't fail the build on broken links
id: test-html
continue-on-error: false
uses: wjdp/htmltest-action@master
with:
# For consistency, use the same config file as for local builds
config: .htmltest.yml
- name: Archive htmltest results
uses: actions/upload-artifact@v3
# Note: Set ACTIONS_RUNTIME_TOKEN env variable to test with nektos/act
with:
name: htmltest-report
path: tmp/.htmltest/htmltest.log
retention-days: 7 # Default is 90 days
- name: Login to Jira
if: failure()
uses: atlassian/gajira-login@v3
env:
JIRA_BASE_URL: ${{ secrets.JIRA_BASE_URL }}
JIRA_USER_EMAIL: ${{ secrets.JIRA_USER_EMAIL }}
JIRA_API_TOKEN: ${{ secrets.JIRA_API_TOKEN }}
- name: Create Jira ticket
if: failure()
id: create
uses: atlassian/gajira-create@v3
env:
GITHUB_RUN_ID: ${{ github.run_id }}
with:
project: DOCS
issuetype: Bug
summary: Broken link detected
description: "For more info see https://github.com/viamrobotics/docs/actions/runs/${{ env.GITHUB_RUN_ID }}."
- name: Log created Jira issue
if: failure()
run: echo "Issue ${{ steps.create.outputs.issue }} was created"