diff --git a/.github/workflows/cli-ci.yml b/.github/workflows/cli-ci.yml index b59a821d036..fcb9fcd038c 100644 --- a/.github/workflows/cli-ci.yml +++ b/.github/workflows/cli-ci.yml @@ -32,7 +32,8 @@ jobs: node-version: "20" - run: npm install -g cspell@8.13.1 - name: Spell check for go and docs - run: cspell lint '**/*.{go,md}' --config ./cli/azd/.vscode/cspell.yaml --root ./cli/azd --no-progress + working-directory: cli/azd + run: cspell lint '**/*.go' '**/*.md' --exclude 'extensions/**' --config ./.vscode/cspell.yaml --no-progress Copyright-check: runs-on: ubuntu-latest diff --git a/.github/workflows/cspell-ext.yml b/.github/workflows/cspell-ext.yml new file mode 100644 index 00000000000..d436f538c04 --- /dev/null +++ b/.github/workflows/cspell-ext.yml @@ -0,0 +1,35 @@ +name: cspell-ext + +on: + pull_request: + paths: + - "cli/azd/extensions/**/*.go" + - "cli/azd/extensions/**/*.md" + - "cli/azd/extensions/**/cspell.yaml" + - "cli/azd/.vscode/cspell.yaml" + - "cli/azd/.vscode/cspell-azd-dictionary.txt" + - ".github/workflows/cspell-ext.yml" + branches: [main] + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number }} + cancel-in-progress: true + +permissions: + contents: read + +jobs: + cspell-lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 + with: + node-version: "20" + - run: npm install -g cspell@8.13.1 + - name: Spell check for extensions + working-directory: cli/azd + # Each extension has its own cspell.yaml that imports the main config. + # cspell's config cascade auto-discovers per-extension configs for files + # under each extension directory, applying extension-specific overrides. + run: cspell lint 'extensions/**/*.go' 'extensions/**/*.md' --config ./.vscode/cspell.yaml --no-progress diff --git a/cli/azd/.vscode/cspell.yaml b/cli/azd/.vscode/cspell.yaml index ed554c08502..8e55ec6519f 100644 --- a/cli/azd/.vscode/cspell.yaml +++ b/cli/azd/.vscode/cspell.yaml @@ -262,11 +262,6 @@ overrides: - println - myext - Fatalf - - filename: extensions/microsoft.azd.ai.builder/internal/cmd/start.go - words: - - dall - - datasource - - vectorizing - filename: pkg/project/dockerfile_builder.go words: - WORKDIR @@ -312,12 +307,6 @@ overrides: - filename: pkg/extensions/manager.go words: - myext - - filename: extensions/microsoft.azd.extensions/internal/resources/languages/**/.gitignore - words: - - rsuser - - userosscache - - docstates - - dylib - filename: docs/recording-functional-tests-guide.md words: - httptest @@ -353,21 +342,12 @@ overrides: words: - WORKDIR - workdir - - filename: extensions/microsoft.azd.demo/internal/cmd/metadata.go - words: - - invopop - - filename: extensions/microsoft.azd.concurx/internal/cmd/prompt_model.go - words: - - textinput - filename: pkg/azdext/scope_detector.go words: - fakeazure - filename: "{pkg/azapi/permissions.go,pkg/infra/provisioning/bicep/bicep_provider.go}" words: - ABAC - - filename: extensions/azure.ai.models/internal/cmd/custom_create.go - words: - - Qwen - filename: pkg/infra/provisioning/bicep/local_preflight.go words: - actioned diff --git a/cli/azd/extensions/azure.ai.agents/cspell.yaml b/cli/azd/extensions/azure.ai.agents/cspell.yaml index 05b17854c91..9d286f5f537 100644 --- a/cli/azd/extensions/azure.ai.agents/cspell.yaml +++ b/cli/azd/extensions/azure.ai.agents/cspell.yaml @@ -1,3 +1,4 @@ +import: ../../.vscode/cspell.yaml words: # Azure region names - australiaeast diff --git a/cli/azd/extensions/azure.ai.finetune/cspell.yaml b/cli/azd/extensions/azure.ai.finetune/cspell.yaml index 6f2423ef132..5b0b92be211 100644 --- a/cli/azd/extensions/azure.ai.finetune/cspell.yaml +++ b/cli/azd/extensions/azure.ai.finetune/cspell.yaml @@ -1,3 +1,4 @@ +import: ../../.vscode/cspell.yaml words: - azureprovider - finetune diff --git a/cli/azd/extensions/azure.ai.models/cspell.yaml b/cli/azd/extensions/azure.ai.models/cspell.yaml index 99b5b35a7ac..593b7fc23e9 100644 --- a/cli/azd/extensions/azure.ai.models/cspell.yaml +++ b/cli/azd/extensions/azure.ai.models/cspell.yaml @@ -1,3 +1,8 @@ +import: ../../.vscode/cspell.yaml +overrides: + - filename: internal/cmd/custom_create.go + words: + - Qwen words: - azcopy - Kimi diff --git a/cli/azd/extensions/azure.appservice/cspell.yaml b/cli/azd/extensions/azure.appservice/cspell.yaml new file mode 100644 index 00000000000..a01eaa9fab4 --- /dev/null +++ b/cli/azd/extensions/azure.appservice/cspell.yaml @@ -0,0 +1 @@ +import: ../../.vscode/cspell.yaml diff --git a/cli/azd/extensions/azure.coding-agent/cspell.yaml b/cli/azd/extensions/azure.coding-agent/cspell.yaml new file mode 100644 index 00000000000..a01eaa9fab4 --- /dev/null +++ b/cli/azd/extensions/azure.coding-agent/cspell.yaml @@ -0,0 +1 @@ +import: ../../.vscode/cspell.yaml diff --git a/cli/azd/extensions/microsoft.azd.ai.builder/cspell.yaml b/cli/azd/extensions/microsoft.azd.ai.builder/cspell.yaml new file mode 100644 index 00000000000..c0c295bd5ca --- /dev/null +++ b/cli/azd/extensions/microsoft.azd.ai.builder/cspell.yaml @@ -0,0 +1,7 @@ +import: ../../.vscode/cspell.yaml +overrides: + - filename: internal/cmd/start.go + words: + - dall + - datasource + - vectorizing diff --git a/cli/azd/extensions/microsoft.azd.concurx/cspell.yaml b/cli/azd/extensions/microsoft.azd.concurx/cspell.yaml new file mode 100644 index 00000000000..5b94b868a3b --- /dev/null +++ b/cli/azd/extensions/microsoft.azd.concurx/cspell.yaml @@ -0,0 +1,5 @@ +import: ../../.vscode/cspell.yaml +overrides: + - filename: internal/cmd/prompt_model.go + words: + - textinput diff --git a/cli/azd/extensions/microsoft.azd.demo/cspell.yaml b/cli/azd/extensions/microsoft.azd.demo/cspell.yaml index a182b3e72c5..349efcbc745 100644 --- a/cli/azd/extensions/microsoft.azd.demo/cspell.yaml +++ b/cli/azd/extensions/microsoft.azd.demo/cspell.yaml @@ -1,2 +1,7 @@ +import: ../../.vscode/cspell.yaml +overrides: + - filename: internal/cmd/metadata.go + words: + - invopop words: - colours diff --git a/cli/azd/extensions/microsoft.azd.extensions/cspell.yaml b/cli/azd/extensions/microsoft.azd.extensions/cspell.yaml new file mode 100644 index 00000000000..bf8aa741d07 --- /dev/null +++ b/cli/azd/extensions/microsoft.azd.extensions/cspell.yaml @@ -0,0 +1,8 @@ +import: ../../.vscode/cspell.yaml +overrides: + - filename: internal/resources/languages/**/.gitignore + words: + - rsuser + - userosscache + - docstates + - dylib