From 93fb5682bb26ea7e4c78202101333305473c4785 Mon Sep 17 00:00:00 2001 From: Alexandre Plateau Date: Thu, 20 Nov 2025 12:41:26 +0100 Subject: [PATCH 1/2] feat(ci): adding a link validator job --- .github/workflows/validate-links.yml | 60 ++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 .github/workflows/validate-links.yml diff --git a/.github/workflows/validate-links.yml b/.github/workflows/validate-links.yml new file mode 100644 index 00000000..fa195fa3 --- /dev/null +++ b/.github/workflows/validate-links.yml @@ -0,0 +1,60 @@ +name: Validate Links + +on: + push: + branches: [ dev ] + pull_request: + branches: [ dev ] + schedule: + # Run every Sunday at 00:00 UTC + - cron: '0 0 * * 0' + workflow_dispatch: + +permissions: + contents: read + issues: write + +jobs: + validate: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v5 + + - name: Restore lychee cache + uses: actions/cache@v4 + with: + path: .lycheecache + key: cache-lychee-${{ github.sha }} + restore-keys: cache-lychee- + + - name: Link Checker + uses: lycheeverse/lychee-action@a8c4c7cb88f0c7386610c35eb25108e448569cb0 # v2.7.0 + id: lychee + with: + # Check all markdown files + args: | + --verbose + --root-dir "$(pwd)" + --cache --max-cache-age 1d . + --no-progress + --accept=200,201,202,203,204,205,206,429 + --timeout 20 + --max-retries 3 + --user-agent="Mozilla/5.0 (compatible; arkscript-lang/1.0)" + fail: false + + - name: Save lychee cache + uses: actions/cache/save@v4 + if: always() + with: + path: .lycheecache + key: ${{ steps.restore-cache.outputs.cache-primary-key }} + + - name: Create Issue From File + if: steps.lychee.outputs.exit_code != 0 + uses: peter-evans/create-issue-from-file@v5 + with: + title: Link Checker Report + content-filepath: ./lychee/out.md + labels: report, automated issue From 81041d9268d56e1ccde12513dcf8406627225a0e Mon Sep 17 00:00:00 2001 From: Alexandre Plateau Date: Thu, 20 Nov 2025 12:42:22 +0100 Subject: [PATCH 2/2] chore(ci): update actions Closes #595 Closes #596 Closes #597 --- .github/workflows/ci.yml | 2 +- .github/workflows/docker.yml | 2 +- .github/workflows/release.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 185cafbb..943d2172 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -44,7 +44,7 @@ jobs: steps: - uses: actions/checkout@v5 - name: Run clang-format style check for C/C++/Protobuf programs. - uses: jidicula/clang-format-action@4726374d1aa3c6aecf132e5197e498979588ebc8 # v4.15.0 + uses: jidicula/clang-format-action@6cd220de46c89139a0365edae93eee8eb30ca8fe # v4.16.0 with: clang-format-version: '13' check-path: ${{ matrix.path }} diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 17b7d1e5..69311390 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -26,7 +26,7 @@ jobs: echo "branch=$(echo ${GITHUB_REF#refs/heads/})" >> "$GITHUB_ENV" - name: Set up QEMU - uses: docker/setup-qemu-action@29109295f81e9208d7d86ff1c6c12d2833863392 # v3.6.0 + uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0 - name: Set up Docker Buildx uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1 diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 27eed03a..1a417af3 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -143,7 +143,7 @@ jobs: uses: ffurrer2/extract-release-notes@cae32133495112d23e3569ad04fef240ba4e7bc8 # v2.3.0 - name: Create release - uses: softprops/action-gh-release@6da8fa9354ddfdc4aeace5fc48d7f679b5214090 # v2.4.1 + uses: softprops/action-gh-release@5be0e66d93ac7ed76da52eca8bb058f665c3a5fe # v2.4.2 id: create_release env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}