Skip to content

feat(npc): restore missing dialogue keywords for the remaining Thais NPCs (part 3/3) #1398

feat(npc): restore missing dialogue keywords for the remaining Thais NPCs (part 3/3)

feat(npc): restore missing dialogue keywords for the remaining Thais NPCs (part 3/3) #1398

Workflow file for this run

---
name: CI
on:
workflow_dispatch:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
paths:
- "src/**"
- "tests/**"
- "data/**"
- "data-canary/**"
- "data-otservbr-global/**"
- "cmake/**"
- "docker/**"
- "docs/lua-api/**"
- "docs/systems/**"
- "tools/**"
- "vcproj/**"
- "vcpkg.json"
- ".mise.toml"
- ".github/requirements-cmake-format.txt"
- "vcpkg-configuration.json"
- "vcpkg-registry/**"
- "CMakeLists.txt"
- "CMakePresets.json"
- ".github/scripts/**"
- ".github/workflows/**"
push:
branches:
- main
paths:
- "src/**"
- "tests/**"
- "data/**"
- "data-canary/**"
- "data-otservbr-global/**"
- "cmake/**"
- "docker/**"
- "docs/lua-api/**"
- "docs/systems/**"
- "tools/**"
- "vcproj/**"
- "vcpkg.json"
- ".mise.toml"
- ".github/requirements-cmake-format.txt"
- "vcpkg-configuration.json"
- "vcpkg-registry/**"
- "CMakeLists.txt"
- "CMakePresets.json"
- ".github/scripts/**"
- ".github/workflows/**"
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
changes:
name: Detect Build Scope
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: read
outputs:
linux: ${{ github.event_name == 'workflow_dispatch' || github.event_name == 'push' || steps.filter.outputs.engine == 'true' || steps.filter.outputs.shared_datapack == 'true' || steps.filter.outputs.canary_datapack == 'true' || steps.filter.outputs.global_datapack == 'true' }}
full_matrix: ${{ github.event_name == 'workflow_dispatch' || github.event_name == 'push' || steps.filter.outputs.engine == 'true' }}
run_canary_smoke: ${{ github.event_name == 'workflow_dispatch' || github.event_name == 'push' || steps.filter.outputs.engine == 'true' || steps.filter.outputs.shared_datapack == 'true' || steps.filter.outputs.canary_datapack == 'true' }}
run_global_smoke: ${{ github.event_name == 'workflow_dispatch' || github.event_name == 'push' || steps.filter.outputs.engine == 'true' || steps.filter.outputs.shared_datapack == 'true' || steps.filter.outputs.global_datapack == 'true' }}
docker: ${{ github.event_name == 'workflow_dispatch' && 'true' || steps.filter.outputs.docker }}
docker_quickstart: ${{ github.event_name == 'workflow_dispatch' && 'true' || steps.filter.outputs.docker_quickstart }}
steps:
- name: Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Detect changed paths
id: filter
if: github.event_name != 'workflow_dispatch'
uses: dorny/paths-filter@v4
with:
filters: |
engine:
- "src/**"
- "tests/**"
- "cmake/**"
- "vcproj/**"
- "vcpkg.json"
- ".mise.toml"
- ".github/requirements-cmake-format.txt"
- ".github/workflows/update_vcpkg_baseline.yml"
- "vcpkg-configuration.json"
- "vcpkg-registry/**"
- "CMakeLists.txt"
- "CMakePresets.json"
- ".github/workflows/ci.yml"
- ".github/workflows/reusable-build-linux.yml"
- ".github/workflows/reusable-build-windows.yml"
- ".github/workflows/reusable-build-macos.yml"
- ".github/scripts/**"
shared_datapack:
- "data/**"
canary_datapack:
- "data-canary/**"
global_datapack:
- "data-otservbr-global/**"
docker:
- "docker/**"
- "src/**"
- "cmake/**"
- "vcpkg.json"
- ".mise.toml"
- "vcpkg-configuration.json"
- "vcpkg-registry/**"
- "CMakeLists.txt"
- "CMakePresets.json"
- ".github/workflows/ci.yml"
- ".github/workflows/update_vcpkg_baseline.yml"
- ".github/workflows/reusable-build-docker.yml"
- ".github/workflows/reusable-docker-quickstart-smoke.yml"
- ".github/scripts/**"
docker_quickstart:
- "docker/docker-compose.yml"
- "docker/.env.dist"
- "docker/quickstart/**"
- "docker/data/01-test_account.sql"
- "docker/data/02-test_account_players.sql"
- ".github/scripts/docker-quickstart-smoke.sh"
- ".github/workflows/ci.yml"
- ".github/workflows/reusable-docker-quickstart-smoke.yml"
# --- Fast Checks ---
checks:
name: Fast Checks
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch' || github.event.pull_request.draft == false
permissions:
contents: write
checks: write
uses: ./.github/workflows/reusable-checks.yml
secrets: inherit
tests-lua:
name: Lua Tests
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch' || github.event.pull_request.draft == false
permissions:
contents: read
uses: ./.github/workflows/reusable-tests-lua.yml
secrets: inherit
# --- Heavy Builds ---
build-linux:
name: Build - Linux
needs: [changes, checks, tests-lua]
if: needs.changes.outputs.linux == 'true' && needs.checks.result == 'success' && needs.tests-lua.result == 'success' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || github.event.pull_request.draft == false)
permissions:
contents: write
packages: write
uses: ./.github/workflows/reusable-build-linux.yml
with:
buildtypes: ${{ needs.changes.outputs.full_matrix == 'true' && '["linux-release","linux-debug"]' || '["linux-release"]' }}
run_canary_smoke: ${{ needs.changes.outputs.run_canary_smoke == 'true' }}
run_global_smoke: ${{ needs.changes.outputs.run_global_smoke == 'true' }}
secrets: inherit
build-windows:
name: Build - Windows
needs: [changes, checks, tests-lua]
if: needs.changes.outputs.full_matrix == 'true' && needs.checks.result == 'success' && needs.tests-lua.result == 'success' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || github.event.pull_request.draft == false)
permissions:
contents: read
packages: write
uses: ./.github/workflows/reusable-build-windows.yml
with:
run_canary_smoke: ${{ needs.changes.outputs.run_canary_smoke == 'true' }}
secrets: inherit
build-macos:
name: Build - macOS
needs: [changes, checks, tests-lua]
if: needs.changes.outputs.full_matrix == 'true' && needs.checks.result == 'success' && needs.tests-lua.result == 'success' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || github.event.pull_request.draft == false)
permissions:
contents: read
packages: write
uses: ./.github/workflows/reusable-build-macos.yml
with:
run_canary_smoke: ${{ needs.changes.outputs.run_canary_smoke == 'true' }}
secrets: inherit
build-docker:
name: Build - Docker
needs: [changes, checks, tests-lua]
if: needs.changes.outputs.docker == 'true' && needs.checks.result == 'success' && needs.tests-lua.result == 'success' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || !github.event.pull_request.draft)
permissions:
contents: read
packages: write
uses: ./.github/workflows/reusable-build-docker.yml
secrets: inherit
docker-quickstart-smoke:
name: Docker Quickstart Smoke
needs: [changes, checks, tests-lua, build-docker]
if: (needs.changes.outputs.docker == 'true' || needs.changes.outputs.docker_quickstart == 'true') && needs.checks.result == 'success' && needs.tests-lua.result == 'success' && needs.build-docker.result == 'success' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch' || !github.event.pull_request.draft)
permissions:
contents: read
uses: ./.github/workflows/reusable-docker-quickstart-smoke.yml