--- name: "Lychee" on: workflow_dispatch: push: branches: ["main"] paths: [".github/workflows/lychee.yaml"] schedule: - cron: "0 0 * * *" env: LYCHEE_OUTPUT: lychee/out.md WORKFLOW_ISSUE_TITLE: "Link Checker Dashboard 🔗" jobs: lychee: name: Lychee runs-on: ubuntu-latest steps: - name: Scan for broken links uses: lycheeverse/lychee-action@v1 id: lychee with: token: "${{ secrets.GITHUB_TOKEN }}" args: --verbose --no-progress --exclude-mail './**/*.md' output: "${{ env.LYCHEE_OUTPUT }}" debug: true - name: Find Link Checker Issue id: find-issue shell: bash env: GH_TOKEN: "${{ secrets.GITHUB_TOKEN }}" run: | issue_number=$( \ gh issue list \ --search "in:title ${{ env.WORKFLOW_ISSUE_TITLE }}" \ --state open \ --json number \ | jq --raw-output '.[0].number' \ ) echo "issue-number=${issue_number}" >> $GITHUB_OUTPUT echo "${issue_number}" - name: Create or Update Issue uses: peter-evans/create-issue-from-file@v5 with: token: "${{ secrets.GITHUB_TOKEN }}" title: "${{ env.WORKFLOW_ISSUE_TITLE }}" issue-number: "${{ steps.find-issue.outputs.issue-number || '' }}" content-filepath: "${{ env.LYCHEE_OUTPUT }}"