chore: Dev to Main#637
Conversation
ci: Refactor Docker workflow
…proved quota check fallback logic
Upgrades security-critical packages across ContentProcessor, ContentProcessorWorkflow, and ContentProcessorWeb modules. ContentProcessorWorkflow (Python): - aiohttp: 3.13.5 → 3.14.1 (MEDIUM severity, transitive → direct) - python-multipart: 0.0.27 → 0.0.31 (HIGH severity) - cryptography: 46.0.7 → 48.0.1 (HIGH severity) - pyjwt: 2.12.1 → 2.13.0 (MEDIUM/HIGH severity) - starlette: 1.0.1 → 1.3.1 (HIGH severity, transitive → direct) ContentProcessor (Python): - pyjwt: 2.12.1 → 2.13.0 (MEDIUM/HIGH severity) - Other vulnerable packages upgraded via transitive dependencies: • aiohttp 3.14.1 (via azure-functions-durable) • cryptography 48.0.1 (via azure-identity, msal, pyjwt) • python-multipart 0.0.31 (via fastapi) • starlette 1.3.1 (via fastapi, sse-starlette) ContentProcessorWeb (NPM): Direct dependencies: - axios: 1.15.2 → 1.16.0 (HIGH severity) - react-router-dom: 7.13.2 → 7.15.1 (HIGH/LOW severity) - qs: 6.14.2 → 6.15.2 (MEDIUM severity) - uuid: 11.1.0 → 11.1.1 (MEDIUM severity) - webpack-dev-server: 5.2.1 → 5.2.4 (MEDIUM severity) Transitive dependencies (via lock file): - shell-quote → 1.8.4 (CRITICAL severity) - form-data → 4.0.6 (HIGH severity) - ws → 8.21.0 (HIGH severity) - js-yaml → 4.2.0 (MEDIUM severity) - launch-editor → 2.14.1 (MEDIUM severity) - @babel/core → 7.29.6 (LOW severity) Testing: - All uv sync operations: PASSED - ContentProcessorWeb build: PASSED - No breaking changes - Verified all secure versions present in lock files Resolves ~114 security alerts (71% reduction from 161 → ~47). Note: ContentProcessorAPI excluded per team guidance. Closes #624 Closes #611 Closes #614
fix: Deployment Failure and pipeline failure for CPAsh
…17-cp fix: dependabot package upgrades (June 2026)
… 1.9.0 - Change @babel/core override from >=7.29.6 to ^7.29.6 to prevent Babel 8 which is incompatible with babel-preset-react-app - Upgrade agent-framework from 1.3.0 to 1.9.0 to satisfy agent-framework-orchestrations requiring agent-framework-core>=1.9.0 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR syncs changes from the development branch into main, primarily updating dependency lockfiles (Python + Node), refreshing generated ARM output from Bicep, and adjusting CI/CD workflows for container builds and deployments.
Changes:
- Bump multiple Python dependencies (e.g.,
aiohttp,cryptography,pyjwt,python-multipart,starlette) and updateuv.lock/pyproject.tomlaccordingly. - Update front-end dependencies and pnpm overrides/lockfile (e.g.,
react-router-dom,axios,qs,webpack-dev-server,uuid). - Update infra templates to include
swedencentral, refresh generatedinfra/main.json, and modify GitHub Actions workflows around ACR usage and docker build orchestration.
Reviewed changes
Copilot reviewed 10 out of 13 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/ContentProcessorWorkflow/uv.lock | Updates pinned Python package versions/metadata for the workflow service. |
| src/ContentProcessorWorkflow/pyproject.toml | Aligns direct workflow dependencies with the updated lockfile. |
| src/ContentProcessorWeb/pnpm-lock.yaml | Updates resolved JS dependency graph and override resolutions. |
| src/ContentProcessorWeb/package.json | Pins select dependencies/overrides to newer versions. |
| src/ContentProcessor/uv.lock | Updates pinned Python package versions/metadata for the processor service. |
| src/ContentProcessor/pyproject.toml | Updates direct dependency pin for pyjwt. |
| infra/main.json | Regenerated ARM template output; includes region additions and dependency graph changes. |
| infra/main.bicep | Adds swedencentral support and adjusts module dependsOn for private endpoint. |
| infra/main_custom.bicep | Mirrors main.bicep region + dependency changes for custom deployment path. |
| .github/workflows/job-docker-build.yml | Refactors reusable docker build workflow; switches ACR endpoint sourcing to vars.* and adds manual trigger. |
| .github/workflows/job-deploy-windows.yml | Switches ACR endpoint sourcing to vars.ACR_TEST_LOGIN_SERVER. |
| .github/workflows/job-deploy-linux.yml | Switches ACR endpoint sourcing to vars.ACR_TEST_LOGIN_SERVER. |
| .github/workflows/deploy-orchestrator.yml | Updates how the orchestrator calls the docker build reusable workflow and applies job-level gating. |
Files not reviewed (1)
- src/ContentProcessorWeb/pnpm-lock.yaml: Generated file
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@AjitPadhi1-Microsoft please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.
Contributor License AgreementContribution License AgreementThis Contribution License Agreement (“Agreement”) is agreed to by the party signing below (“You”),
|
chore: Down merge from main to dev
| shell: bash | ||
| run: | | ||
| ACR_NAME=$(echo "${{ secrets.ACR_TEST_LOGIN_SERVER }}") | ||
| ACR_NAME=$(echo "${{ vars.ACR_TEST_LOGIN_SERVER }}") |
| if ($env:BUILD_DOCKER_IMAGE -eq "true") { | ||
| # Extract ACR name from login server and set as environment variable | ||
| $ACR_NAME = "${{ secrets.ACR_TEST_LOGIN_SERVER }}" | ||
| $ACR_NAME = "${{ vars.ACR_TEST_LOGIN_SERVER }}" | ||
| azd env set AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT="$ACR_NAME" | ||
| Write-Host "Set ACR name to: $ACR_NAME" |
| ACR_NAME=$(echo "${{ vars.ACR_TEST_LOGIN_SERVER }}") | ||
| azd env set AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT="$ACR_NAME" | ||
| echo "Set ACR name to: $ACR_NAME" |
Purpose
Workflow and Deployment Improvements:
Standardized the use of
vars.ACR_TEST_LOGIN_SERVERinstead ofsecrets.ACR_TEST_LOGIN_SERVERacross all workflow files for referencing the Azure Container Registry, including in login steps and Docker image tagging. This makes the workflows more consistent and secure. [1] [2] [3] [4] [5] [6] [7] [8]Updated the trigger and input handling in the
job-docker-build.ymlworkflow, removing unnecessary inputs and simplifying the workflow to trigger directly onworkflow_dispatch. [1] [2]Infrastructure and Region Support:
Added support for the
swedencentralAzure region in both Bicep (infra/main.bicep,infra/main_custom.bicep) and generated ARM templates (infra/main.json), including its replica region mapping. [1] [2] [3] [4] [5] [6]Improved module dependencies for private endpoints in Bicep templates to ensure correct deployment order by explicitly depending on
avmAiServices,virtualNetwork, andavmPrivateDnsZones. [1] [2] [3]Dependency Updates:
pyjwtfrom version 2.12.1 to 2.13.0 inpyproject.toml.Template and Generator Updates:
infra/main.jsonand updated template hashes accordingly, reflecting the changes in the infrastructure codebase. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]If you have any questions about these changes or need clarification on how they affect your workflow, let me know!
Does this introduce a breaking change?
Golden Path Validation
Deployment Validation
What to Check
Verify that the following are valid
Other Information