This is an automated email from the ASF dual-hosted git repository. imbajin pushed a commit to branch feat/oink-core-platform in repository https://gitbox.apache.org/repos/asf/hugegraph-doc.git
commit fe7edbf6d32e2da0e7b50a73d81757e8bcbfe212 Author: dark <[email protected]> AuthorDate: Fri Sep 4 21:12:05 2026 +0800 fix(ci): provision avatar validators - install cwebp and dwebp before source validation - verify both tools are available in the prepare job - keep the Hugo and WebP setup order under a static contract --- .github/workflows/hugo.yml | 6 ++++++ tests/e2e/workflow-contract.test.cjs | 10 ++++++++++ 2 files changed, 16 insertions(+) diff --git a/.github/workflows/hugo.yml b/.github/workflows/hugo.yml index b34fffec9..670404fdc 100644 --- a/.github/workflows/hugo.yml +++ b/.github/workflows/hugo.yml @@ -70,6 +70,12 @@ jobs: with: hugo-version: ${{ env.HUGO_VERSION }} extended: true + - name: Install WebP validators + run: | + sudo apt-get update + sudo apt-get install --yes --no-install-recommends webp + command -v cwebp + command -v dwebp - name: Resolve trusted event plan id: plan diff --git a/tests/e2e/workflow-contract.test.cjs b/tests/e2e/workflow-contract.test.cjs index ef43141f1..dcccf8731 100644 --- a/tests/e2e/workflow-contract.test.cjs +++ b/tests/e2e/workflow-contract.test.cjs @@ -31,3 +31,13 @@ test("event plan fixes origins, branches, confirmations, and five-version order" assert.match(workflow, /production:asf-site\|staging:asf-staging-oink/); assert.doesNotMatch(workflow, /permissions:\s*write-all/); }); + +test("prepare pins Hugo and WebP tools before source validators", () => { + const setupHugo = workflow.indexOf("name: Setup Hugo Extended"); + const setupWebp = workflow.indexOf("name: Install WebP validators"); + const validators = workflow.indexOf("name: Validate source and version tooling"); + assert.ok(setupHugo >= 0 && setupHugo < validators); + assert.ok(setupWebp >= 0 && setupWebp < validators); + assert.match(workflow, /apt-get install --yes --no-install-recommends webp/); + assert.match(workflow, /command -v cwebp[\s\S]*command -v dwebp/); +});
