From 659625cca431feac0eb757b5341456fb07302745 Mon Sep 17 00:00:00 2001 From: RomualdLemesle Date: Tue, 20 Jan 2026 10:49:32 +0100 Subject: [PATCH 01/13] [docs] chore(workflows): Check MkDocs URIs --- .github/workflows/check-mkdocs-uris.yml | 45 +++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 .github/workflows/check-mkdocs-uris.yml diff --git a/.github/workflows/check-mkdocs-uris.yml b/.github/workflows/check-mkdocs-uris.yml new file mode 100644 index 00000000..56b53abc --- /dev/null +++ b/.github/workflows/check-mkdocs-uris.yml @@ -0,0 +1,45 @@ +name: Check MkDocs URIs + +on: + pull_request: + push: + branches: + - main + +jobs: + check-mkdocs-uris: + name: Validate MkDocs URIs + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install -r requirements.txt + + - name: Disable git-committers plugin in CI + # The git-committers plugin is not CI-safe: + # it performs GitHub API calls even without an explicit token, + # which causes 403 rate-limit errors in GitHub Actions. + # We remove the plugin block entirely for CI builds. + run: | + sed -i '/- git-committers:/,/^[[:space:]]*-[[:space:]]/d' mkdocs.yml + + - name: Check for underscores in MkDocs URIs + run: | + echo "Checking mkdocs.yml for URIs (use '-' instead of '_')" + + INVALID_PATHS=$(grep ".md" mkdocs.yml | grep "_") + + if [ -n "$INVALID_PATHS" ]; then + echo "❌ Invalid MkDocs URIs detected (use '-' instead of '_'):" + echo "$INVALID_PATHS" | sed 's/^/ - /' + echo "Required format:" + echo "usage/scenarios_and_simulations.md -> usage/scenarios-and-simulations.md" + exit 1 + else + echo "✅ All MkDocs URIs are clean (no underscores)." + fi From 811257f4fbf5984674f29558be0e5e8283ff7afd Mon Sep 17 00:00:00 2001 From: Marine LM Date: Wed, 21 Jan 2026 08:34:18 +0100 Subject: [PATCH 02/13] [docs] fix: replace underscore by hyphens --- .../{users_and_rbac.md => users-and-rbac.md} | 0 docs/deployment/installation.md | 2 +- ...ld_from_source.md => build-from-source.md} | 4 ++-- ...onment_ubuntu.md => environment-ubuntu.md} | 0 ...ment_windows.md => environment-windows.md} | 0 docs/usage/components/channels.md | 4 ++-- .../{media_pressure.md => media-pressure.md} | 0 ..._asset_rules.md => default-asset-rules.md} | 0 docs/usage/getting-started.md | 2 +- ...tations.md => injects-and-expectations.md} | 0 ...{injects_builtin.md => injects-builtin.md} | 0 ...{scenario_import.md => scenario-import.md} | 0 docs/usage/scenario.md | 2 +- docs/usage/scenario/security-coverage.md | 2 +- ...ations.md => scenarios-and-simulations.md} | 0 ...ation_reports.md => simulation-reports.md} | 0 mkdocs.yml | 22 +++++++++---------- 17 files changed, 19 insertions(+), 19 deletions(-) rename docs/administration/{users_and_rbac.md => users-and-rbac.md} (100%) rename docs/development/{build_from_source.md => build-from-source.md} (97%) rename docs/development/{environment_ubuntu.md => environment-ubuntu.md} (100%) rename docs/development/{environment_windows.md => environment-windows.md} (100%) rename docs/usage/components/{media_pressure.md => media-pressure.md} (100%) rename docs/usage/{default_asset_rules.md => default-asset-rules.md} (100%) rename docs/usage/{injects_and_expectations.md => injects-and-expectations.md} (100%) rename docs/usage/{injects_builtin.md => injects-builtin.md} (100%) rename docs/usage/{scenario_import.md => scenario-import.md} (100%) rename docs/usage/{scenarios_and_simulations.md => scenarios-and-simulations.md} (100%) rename docs/usage/{simulation_reports.md => simulation-reports.md} (100%) diff --git a/docs/administration/users_and_rbac.md b/docs/administration/users-and-rbac.md similarity index 100% rename from docs/administration/users_and_rbac.md rename to docs/administration/users-and-rbac.md diff --git a/docs/deployment/installation.md b/docs/deployment/installation.md index f758d297..777225de 100644 --- a/docs/deployment/installation.md +++ b/docs/deployment/installation.md @@ -88,7 +88,7 @@ docker compose up -d This section provides instructions to install and run a pre-built OpenAEV server with its dependencies. Note that this does not cover building from source, -which you will find in the [Development section](../development/build_from_source.md) instead. +which you will find in the [Development section](../development/build-from-source.md) instead. ### Prepare the installation diff --git a/docs/development/build_from_source.md b/docs/development/build-from-source.md similarity index 97% rename from docs/development/build_from_source.md rename to docs/development/build-from-source.md index ec1f1dc4..2a392e5c 100644 --- a/docs/development/build_from_source.md +++ b/docs/development/build-from-source.md @@ -3,8 +3,8 @@ Ensure you have followed the steps for installing prerequisites according to your development platform of choice: - * [Linux (Ubuntu used as example)](environment_ubuntu.md) - * [Windows](environment_windows.md) + * [Linux (Ubuntu used as example)](environment-ubuntu.md) + * [Windows](environment-windows.md) * MacOS (TBD) # Building and running from source diff --git a/docs/development/environment_ubuntu.md b/docs/development/environment-ubuntu.md similarity index 100% rename from docs/development/environment_ubuntu.md rename to docs/development/environment-ubuntu.md diff --git a/docs/development/environment_windows.md b/docs/development/environment-windows.md similarity index 100% rename from docs/development/environment_windows.md rename to docs/development/environment-windows.md diff --git a/docs/usage/components/channels.md b/docs/usage/components/channels.md index b5a9375c..a197d31e 100644 --- a/docs/usage/components/channels.md +++ b/docs/usage/components/channels.md @@ -1,6 +1,6 @@ # Channels -In OpenAEV, Channels represent communication medias with a particular look. They are used to present [web articles or other media contents](media_pressure.md) to Players in a specific way. +In OpenAEV, Channels represent communication medias with a particular look. They are used to present [web articles or other media contents](media-pressure.md) to Players in a specific way. It helps give shape to your Scenario context and events. @@ -20,6 +20,6 @@ On the right, a mock up of the overview is displayed to give you the look and fi A Channel will then be used in Scenario and in Simulation definition. When you create an Article, you have to choose the Channel that will give it an adequate shape. -See [Media pressure](media_pressure.md) page to know how to create and add Articles to your Scenarios. +See [Media pressure](media-pressure.md) page to know how to create and add Articles to your Scenarios. ![Channel selection during Article creation](../assets/channel_selection_during_creation.png) diff --git a/docs/usage/components/media_pressure.md b/docs/usage/components/media-pressure.md similarity index 100% rename from docs/usage/components/media_pressure.md rename to docs/usage/components/media-pressure.md diff --git a/docs/usage/default_asset_rules.md b/docs/usage/default-asset-rules.md similarity index 100% rename from docs/usage/default_asset_rules.md rename to docs/usage/default-asset-rules.md diff --git a/docs/usage/getting-started.md b/docs/usage/getting-started.md index 546e63d0..4d4025ec 100644 --- a/docs/usage/getting-started.md +++ b/docs/usage/getting-started.md @@ -67,7 +67,7 @@ You can: Once defined, a scenario can be turned into a [simulation](simulation.md): a live execution in your environment, either one-shot or scheduled regularly. -During simulations, [expectations](injects_and_expectations.md) are validated: +During simulations, [expectations](injects-and-expectations.md) are validated: - **Automatically**, via integrations with your stack - **Manually**, by observers validating human reactions diff --git a/docs/usage/injects_and_expectations.md b/docs/usage/injects-and-expectations.md similarity index 100% rename from docs/usage/injects_and_expectations.md rename to docs/usage/injects-and-expectations.md diff --git a/docs/usage/injects_builtin.md b/docs/usage/injects-builtin.md similarity index 100% rename from docs/usage/injects_builtin.md rename to docs/usage/injects-builtin.md diff --git a/docs/usage/scenario_import.md b/docs/usage/scenario-import.md similarity index 100% rename from docs/usage/scenario_import.md rename to docs/usage/scenario-import.md diff --git a/docs/usage/scenario.md b/docs/usage/scenario.md index 5d7db6ab..589e5e48 100644 --- a/docs/usage/scenario.md +++ b/docs/usage/scenario.md @@ -54,7 +54,7 @@ In the "Definition" tab, you can add various elements to construct events: - [Teams and Players](people.md) involved in the scenario, - [Custom variables](components/variables.md) for simplifying injects' customization, -- Articles that you might use to simulate [media pressure](components/media_pressure.md), +- Articles that you might use to simulate [media pressure](components/media-pressure.md), - [Challenges](components/challenges.md) designed for including Capture The Flag elements in your scenario. diff --git a/docs/usage/scenario/security-coverage.md b/docs/usage/scenario/security-coverage.md index d18a8e62..401d9fb0 100644 --- a/docs/usage/scenario/security-coverage.md +++ b/docs/usage/scenario/security-coverage.md @@ -113,7 +113,7 @@ After injects are generated: - Review and customize the **Scenario** to match your organization’s needs. - Assign appropriate **Asset groups** to each inject. - Optionally, configure default **Asset Groups** for scenarios created from OpenCTI using - the [Default Asset Groups](../default_asset_rules.md) page. + the [Default Asset Groups](../default-asset-rules.md) page. ![Inject Asset Groups](assets/inject-asset-group.png) diff --git a/docs/usage/scenarios_and_simulations.md b/docs/usage/scenarios-and-simulations.md similarity index 100% rename from docs/usage/scenarios_and_simulations.md rename to docs/usage/scenarios-and-simulations.md diff --git a/docs/usage/simulation_reports.md b/docs/usage/simulation-reports.md similarity index 100% rename from docs/usage/simulation_reports.md rename to docs/usage/simulation-reports.md diff --git a/mkdocs.yml b/mkdocs.yml index 16a2d8f9..d968a97d 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -140,8 +140,8 @@ nav: - User Guide: - Getting started: usage/getting-started.md - Foundations: - - Scenario and Simulations: usage/scenarios_and_simulations.md - - Injects and Expectations: usage/injects_and_expectations.md + - Scenario and Simulations: usage/scenarios-and-simulations.md + - Injects and Expectations: usage/injects-and-expectations.md - Evaluate your Security posture: - Overview: usage/evaluate/overview.md - Simulation: usage/simulation.md @@ -163,25 +163,25 @@ nav: - Build your own Threat Scenario: - Scenario: usage/scenario.md - Scenario Generation from OpenCTI Security Coverage: usage/scenario/security-coverage.md - - Default Asset Rules: usage/default_asset_rules.md - - Importing injects into a Scenario: usage/scenario_import.md + - Default Asset Rules: usage/default-asset-rules.md + - Importing injects into a Scenario: usage/scenario-import.md - Assets: usage/assets.md - People: usage/people.md - Components: - Documents: usage/components/documents.md - Custom variables: usage/components/variables.md - Channels: usage/components/channels.md - - Media pressure: usage/components/media_pressure.md + - Media pressure: usage/components/media-pressure.md - Challenges: usage/components/challenges.md - Lessons: usage/components/lessons.md - Payloads: usage/payloads/payloads.md - Share and export: - - Simulations: usage/simulation_reports.md + - Simulations: usage/simulation-reports.md - Notifications: usage/notifications.md - Interact with your environment: - Injectors: - Overview: usage/injectors.md - - Built-In Injector: usage/injects_builtin.md + - Built-In Injector: usage/injects-builtin.md - Caldera Injector: usage/inject-caldera.md - Collectors: - Overview: usage/collectors.md @@ -194,7 +194,7 @@ nav: - Parameters: administration/parameters.md - Security: - Policies: administration/policies.md - - Users and RBAC: administration/users_and_rbac.md + - Users and RBAC: administration/users-and-rbac.md - Taxonomies: administration/taxonomies.md - XTM Hub: administration/hub.md # Warning: page is linked in XTM Hub documentation - Reference: @@ -204,9 +204,9 @@ nav: - Telemetry: reference/deployment/telemetry.md - Development: - Prerequisites: - - Ubuntu: development/environment_ubuntu.md - - Windows: development/environment_windows.md - - Building and running from source: development/build_from_source.md + - Ubuntu: development/environment-ubuntu.md + - Windows: development/environment-windows.md + - Building and running from source: development/build-from-source.md - Platform: development/platform.md - Collectors: development/collectors.md - Injectors: development/injectors.md From 227b0972e81291181906081f13c243fbc681de19 Mon Sep 17 00:00:00 2001 From: RomualdLemesle Date: Wed, 21 Jan 2026 08:52:05 +0100 Subject: [PATCH 03/13] [docs] chore(workflows): Check MkDocs URIs --- .github/workflows/check-mkdocs-uris.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-mkdocs-uris.yml b/.github/workflows/check-mkdocs-uris.yml index 56b53abc..90f990df 100644 --- a/.github/workflows/check-mkdocs-uris.yml +++ b/.github/workflows/check-mkdocs-uris.yml @@ -32,7 +32,7 @@ jobs: run: | echo "Checking mkdocs.yml for URIs (use '-' instead of '_')" - INVALID_PATHS=$(grep ".md" mkdocs.yml | grep "_") + INVALID_PATHS=$(grep -E "\.md$" mkdocs.yml | grep "_") if [ -n "$INVALID_PATHS" ]; then echo "❌ Invalid MkDocs URIs detected (use '-' instead of '_'):" From f8d61deaedbc448f5b8bc58ec71bffe49ee0ae3b Mon Sep 17 00:00:00 2001 From: RomualdLemesle Date: Wed, 21 Jan 2026 08:55:01 +0100 Subject: [PATCH 04/13] [docs] chore(workflows): Check MkDocs URIs --- .github/workflows/check-mkdocs-uris.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-mkdocs-uris.yml b/.github/workflows/check-mkdocs-uris.yml index 90f990df..3bc497dc 100644 --- a/.github/workflows/check-mkdocs-uris.yml +++ b/.github/workflows/check-mkdocs-uris.yml @@ -32,7 +32,7 @@ jobs: run: | echo "Checking mkdocs.yml for URIs (use '-' instead of '_')" - INVALID_PATHS=$(grep -E "\.md$" mkdocs.yml | grep "_") + INVALID_PATHS=$(grep -E '\.md$' mkdocs.yml | grep '_') if [ -n "$INVALID_PATHS" ]; then echo "❌ Invalid MkDocs URIs detected (use '-' instead of '_'):" From 381cbf09becad91bc53987739a131727ad052e75 Mon Sep 17 00:00:00 2001 From: RomualdLemesle Date: Wed, 21 Jan 2026 09:00:00 +0100 Subject: [PATCH 05/13] [docs] chore(workflows): Check MkDocs URIs --- .github/workflows/check-mkdocs-uris.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-mkdocs-uris.yml b/.github/workflows/check-mkdocs-uris.yml index 3bc497dc..827a18ca 100644 --- a/.github/workflows/check-mkdocs-uris.yml +++ b/.github/workflows/check-mkdocs-uris.yml @@ -32,7 +32,7 @@ jobs: run: | echo "Checking mkdocs.yml for URIs (use '-' instead of '_')" - INVALID_PATHS=$(grep -E '\.md$' mkdocs.yml | grep '_') + INVALID_PATHS=$(grep "\.md" mkdocs.yml | grep "_") if [ -n "$INVALID_PATHS" ]; then echo "❌ Invalid MkDocs URIs detected (use '-' instead of '_'):" From 818e99ca3bbe140a83e6d64efedb591815002d97 Mon Sep 17 00:00:00 2001 From: RomualdLemesle Date: Wed, 21 Jan 2026 09:05:30 +0100 Subject: [PATCH 06/13] [docs] chore(workflows): Check MkDocs URIs --- .github/workflows/check-mkdocs-uris.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check-mkdocs-uris.yml b/.github/workflows/check-mkdocs-uris.yml index 827a18ca..c66c74b0 100644 --- a/.github/workflows/check-mkdocs-uris.yml +++ b/.github/workflows/check-mkdocs-uris.yml @@ -32,8 +32,10 @@ jobs: run: | echo "Checking mkdocs.yml for URIs (use '-' instead of '_')" - INVALID_PATHS=$(grep "\.md" mkdocs.yml | grep "_") - + INVALID_PATHS=$(sed -n '/^nav:/,$p' mkdocs.yml \ + | grep '\.md' \ + | grep '_') + if [ -n "$INVALID_PATHS" ]; then echo "❌ Invalid MkDocs URIs detected (use '-' instead of '_'):" echo "$INVALID_PATHS" | sed 's/^/ - /' From 20b6746e9d9bfc87debf342e5753e55af63292cd Mon Sep 17 00:00:00 2001 From: RomualdLemesle Date: Wed, 21 Jan 2026 09:07:01 +0100 Subject: [PATCH 07/13] [docs] chore(workflows): Check MkDocs URIs --- .github/workflows/check-mkdocs-uris.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/check-mkdocs-uris.yml b/.github/workflows/check-mkdocs-uris.yml index c66c74b0..389f553d 100644 --- a/.github/workflows/check-mkdocs-uris.yml +++ b/.github/workflows/check-mkdocs-uris.yml @@ -32,9 +32,7 @@ jobs: run: | echo "Checking mkdocs.yml for URIs (use '-' instead of '_')" - INVALID_PATHS=$(sed -n '/^nav:/,$p' mkdocs.yml \ - | grep '\.md' \ - | grep '_') + INVALID_PATHS=$(grep "\.md" mkdocs.yml | grep "_") if [ -n "$INVALID_PATHS" ]; then echo "❌ Invalid MkDocs URIs detected (use '-' instead of '_'):" From 5d0d7ced3e80347947ea973428079c26346863b9 Mon Sep 17 00:00:00 2001 From: RomualdLemesle Date: Wed, 21 Jan 2026 09:08:57 +0100 Subject: [PATCH 08/13] [docs] chore(workflows): Check MkDocs URIs --- .github/workflows/check-mkdocs-uris.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-mkdocs-uris.yml b/.github/workflows/check-mkdocs-uris.yml index 389f553d..b149c5b3 100644 --- a/.github/workflows/check-mkdocs-uris.yml +++ b/.github/workflows/check-mkdocs-uris.yml @@ -32,7 +32,7 @@ jobs: run: | echo "Checking mkdocs.yml for URIs (use '-' instead of '_')" - INVALID_PATHS=$(grep "\.md" mkdocs.yml | grep "_") + INVALID_PATHS=$(grep '\.md' mkdocs.yml | grep '_') if [ -n "$INVALID_PATHS" ]; then echo "❌ Invalid MkDocs URIs detected (use '-' instead of '_'):" From b8fd975d0d1cb6d1403f7b254880d4e262546474 Mon Sep 17 00:00:00 2001 From: RomualdLemesle Date: Wed, 21 Jan 2026 09:10:27 +0100 Subject: [PATCH 09/13] [docs] chore(workflows): Check MkDocs URIs --- .github/workflows/check-mkdocs-uris.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-mkdocs-uris.yml b/.github/workflows/check-mkdocs-uris.yml index b149c5b3..a4b59af1 100644 --- a/.github/workflows/check-mkdocs-uris.yml +++ b/.github/workflows/check-mkdocs-uris.yml @@ -32,7 +32,7 @@ jobs: run: | echo "Checking mkdocs.yml for URIs (use '-' instead of '_')" - INVALID_PATHS=$(grep '\.md' mkdocs.yml | grep '_') + INVALID_PATHS=$(grep '.md' mkdocs.yml | grep '_') if [ -n "$INVALID_PATHS" ]; then echo "❌ Invalid MkDocs URIs detected (use '-' instead of '_'):" From c8098b2eef937716588176a523d5982836b6da8e Mon Sep 17 00:00:00 2001 From: RomualdLemesle Date: Wed, 21 Jan 2026 09:12:21 +0100 Subject: [PATCH 10/13] [docs] chore(workflows): Check MkDocs URIs --- .github/workflows/check-mkdocs-uris.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-mkdocs-uris.yml b/.github/workflows/check-mkdocs-uris.yml index a4b59af1..c1bb6f9c 100644 --- a/.github/workflows/check-mkdocs-uris.yml +++ b/.github/workflows/check-mkdocs-uris.yml @@ -32,7 +32,7 @@ jobs: run: | echo "Checking mkdocs.yml for URIs (use '-' instead of '_')" - INVALID_PATHS=$(grep '.md' mkdocs.yml | grep '_') + INVALID_PATHS=$(grep '\.md$' mkdocs.yml | grep '_') if [ -n "$INVALID_PATHS" ]; then echo "❌ Invalid MkDocs URIs detected (use '-' instead of '_'):" From a6bff3bdc0ed5b5cc1369079269ac6743dd744d9 Mon Sep 17 00:00:00 2001 From: RomualdLemesle Date: Wed, 21 Jan 2026 09:19:33 +0100 Subject: [PATCH 11/13] [docs] chore(workflows): Check MkDocs URIs --- .github/workflows/check-mkdocs-uris.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-mkdocs-uris.yml b/.github/workflows/check-mkdocs-uris.yml index c1bb6f9c..997dc25d 100644 --- a/.github/workflows/check-mkdocs-uris.yml +++ b/.github/workflows/check-mkdocs-uris.yml @@ -32,7 +32,7 @@ jobs: run: | echo "Checking mkdocs.yml for URIs (use '-' instead of '_')" - INVALID_PATHS=$(grep '\.md$' mkdocs.yml | grep '_') + INVALID_PATHS=$(grep '.md' mkdocs.yml | grep '_' | grep -v 'pymdownx.superfences') if [ -n "$INVALID_PATHS" ]; then echo "❌ Invalid MkDocs URIs detected (use '-' instead of '_'):" From 615f0d4a3ca14fe072f0becedaa2f3ff9bbc209a Mon Sep 17 00:00:00 2001 From: RomualdLemesle Date: Wed, 21 Jan 2026 09:21:43 +0100 Subject: [PATCH 12/13] [docs] chore(workflows): Check MkDocs URIs --- .github/workflows/check-mkdocs-uris.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check-mkdocs-uris.yml b/.github/workflows/check-mkdocs-uris.yml index 997dc25d..0463efb5 100644 --- a/.github/workflows/check-mkdocs-uris.yml +++ b/.github/workflows/check-mkdocs-uris.yml @@ -32,8 +32,8 @@ jobs: run: | echo "Checking mkdocs.yml for URIs (use '-' instead of '_')" - INVALID_PATHS=$(grep '.md' mkdocs.yml | grep '_' | grep -v 'pymdownx.superfences') - + INVALID_PATHS=$(grep '.md' mkdocs.yml | grep '_' | grep -Ev 'pymdownx\.superfences|md_in_html') + if [ -n "$INVALID_PATHS" ]; then echo "❌ Invalid MkDocs URIs detected (use '-' instead of '_'):" echo "$INVALID_PATHS" | sed 's/^/ - /' From c08f6974b73809463c17939fa21e47c805c5f2d4 Mon Sep 17 00:00:00 2001 From: RomualdLemesle Date: Wed, 21 Jan 2026 09:23:24 +0100 Subject: [PATCH 13/13] [docs] chore(workflows): Check MkDocs URIs --- .github/workflows/check-mkdocs-uris.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check-mkdocs-uris.yml b/.github/workflows/check-mkdocs-uris.yml index 0463efb5..219fcbcc 100644 --- a/.github/workflows/check-mkdocs-uris.yml +++ b/.github/workflows/check-mkdocs-uris.yml @@ -32,7 +32,7 @@ jobs: run: | echo "Checking mkdocs.yml for URIs (use '-' instead of '_')" - INVALID_PATHS=$(grep '.md' mkdocs.yml | grep '_' | grep -Ev 'pymdownx\.superfences|md_in_html') + INVALID_PATHS=$(grep '.md' mkdocs.yml | grep '_' | grep -Ev 'pymdownx\.superfences|md_in_html' || true) if [ -n "$INVALID_PATHS" ]; then echo "❌ Invalid MkDocs URIs detected (use '-' instead of '_'):"