deps: update azure-mgmt-containerservice requirement from <32,>=31.0 to >=31.0,<42 #20
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: dependency-sanity | |
| on: | |
| pull_request: | |
| permissions: | |
| contents: read | |
| pull-requests: read | |
| jobs: | |
| dependency-sanity: | |
| if: github.event.pull_request.user.login == 'dependabot[bot]' | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.11" | |
| - name: Install dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -e .[dev] | |
| - name: Detect dependency families touched in pyproject | |
| id: deps | |
| run: | | |
| set -eu | |
| git diff --name-only "${{ github.event.pull_request.base.sha }}" "${{ github.sha }}" > /tmp/changed-files.txt | |
| if ! grep -qx "pyproject.toml" /tmp/changed-files.txt; then | |
| echo "pyproject_changed=false" >> "$GITHUB_OUTPUT" | |
| exit 0 | |
| fi | |
| echo "pyproject_changed=true" >> "$GITHUB_OUTPUT" | |
| git diff "${{ github.event.pull_request.base.sha }}" "${{ github.sha }}" -- pyproject.toml > /tmp/pyproject.diff | |
| cat /tmp/pyproject.diff | |
| mark_if_present() { | |
| local output_name="$1" | |
| local pattern="$2" | |
| if grep -Eq "$pattern" /tmp/pyproject.diff; then | |
| echo "${output_name}=true" >> "$GITHUB_OUTPUT" | |
| fi | |
| } | |
| mark_if_present resource 'azure-mgmt-resource|azure-identity' | |
| mark_if_present network 'azure-mgmt-network' | |
| mark_if_present keyvault 'azure-mgmt-keyvault|azure-keyvault-secrets' | |
| mark_if_present storage 'azure-mgmt-storage' | |
| mark_if_present web 'azure-mgmt-web' | |
| mark_if_present compute 'azure-mgmt-compute' | |
| mark_if_present authorization 'azure-mgmt-authorization' | |
| mark_if_present apimgmt 'azure-mgmt-apimanagement' | |
| mark_if_present acr 'azure-mgmt-containerregistry' | |
| mark_if_present aks 'azure-mgmt-containerservice' | |
| mark_if_present databases 'azure-mgmt-sql|azure-mgmt-postgresqlflexibleservers|azure-mgmt-mysqlflexibleservers' | |
| mark_if_present automation 'azure-mgmt-automation' | |
| mark_if_present devonly 'pytest|pytest-cov|ruff|mypy|build' | |
| - name: Note when dependency sanity is not needed | |
| if: steps.deps.outputs.pyproject_changed != 'true' | |
| run: echo "No pyproject.toml dependency change detected." | |
| - name: Resource sanity | |
| if: steps.deps.outputs.resource == 'true' | |
| run: | | |
| pytest tests/test_collectors.py -k "collect_inventory or collect_arm_deployments or collect_dns" | |
| pytest tests/test_terminal_ux.py -k "arm_deployments or dns" | |
| - name: Network sanity | |
| if: steps.deps.outputs.network == 'true' | |
| run: | | |
| pytest tests/test_collectors.py -k "collect_dns or collect_nics or collect_endpoints or collect_network_ports" | |
| pytest tests/test_terminal_ux.py -k "dns or nics or endpoints or network_ports" | |
| - name: Key Vault sanity | |
| if: steps.deps.outputs.keyvault == 'true' | |
| run: | | |
| pytest tests/test_collectors.py -k "collect_keyvault or collect_tokens_credentials" | |
| pytest tests/test_terminal_ux.py -k "keyvault or keyvault_note" | |
| pytest tests/test_cli_smoke.py -k "credential_path" | |
| pytest tests/test_visibility_tiers.py | |
| pytest tests/test_credential_path_registry.py | |
| - name: Storage sanity | |
| if: steps.deps.outputs.storage == 'true' | |
| run: | | |
| pytest tests/test_collectors.py -k "collect_storage or collect_resource_trusts" | |
| pytest tests/test_terminal_ux.py -k "storage" | |
| - name: Web sanity | |
| if: steps.deps.outputs.web == 'true' | |
| run: | | |
| pytest tests/test_collectors.py -k "collect_app_services or collect_functions or collect_workloads" | |
| pytest tests/test_terminal_ux.py -k "app_services or functions or workloads" | |
| pytest tests/test_cli_smoke.py -k "credential_path" | |
| - name: Compute sanity | |
| if: steps.deps.outputs.compute == 'true' | |
| run: | | |
| pytest tests/test_collectors.py -k "collect_vms or collect_vmss or collect_snapshots_disks" | |
| pytest tests/test_terminal_ux.py -k "vms or vmss or snapshots_disks" | |
| - name: Authorization sanity | |
| if: steps.deps.outputs.authorization == 'true' | |
| run: | | |
| pytest tests/test_collectors.py -k "collect_privesc or collect_managed_identities" | |
| pytest tests/test_terminal_ux.py -k "privesc or managed_identities" | |
| pytest tests/test_visibility_tiers.py -k "managed_identities" | |
| - name: API Management sanity | |
| if: steps.deps.outputs.apimgmt == 'true' | |
| run: | | |
| pytest tests/test_collectors.py -k "collect_api_mgmt" | |
| pytest tests/test_terminal_ux.py -k "api_mgmt" | |
| - name: ACR sanity | |
| if: steps.deps.outputs.acr == 'true' | |
| run: | | |
| pytest tests/test_collectors.py -k "collect_acr" | |
| pytest tests/test_terminal_ux.py -k "acr" | |
| - name: AKS sanity | |
| if: steps.deps.outputs.aks == 'true' | |
| run: | | |
| pytest tests/test_collectors.py -k "collect_aks" | |
| pytest tests/test_terminal_ux.py -k "aks" | |
| - name: Database sanity | |
| if: steps.deps.outputs.databases == 'true' | |
| run: | | |
| pytest tests/test_collectors.py -k "collect_databases" | |
| pytest tests/test_terminal_ux.py -k "databases" | |
| - name: Automation sanity | |
| if: steps.deps.outputs.automation == 'true' | |
| run: | | |
| pytest tests/test_collectors.py -k "collect_automation" | |
| pytest tests/test_terminal_ux.py -k "automation" | |
| - name: Note dev-only dependency changes | |
| if: steps.deps.outputs.devonly == 'true' | |
| run: echo "Dev-only dependency bump detected; baseline CI remains the merge gate." |