Skip to content

chore: Dev Merge to Main#600

Open
Shreyas-Microsoft wants to merge 12 commits into
mainfrom
dev
Open

chore: Dev Merge to Main#600
Shreyas-Microsoft wants to merge 12 commits into
mainfrom
dev

Conversation

@Shreyas-Microsoft
Copy link
Copy Markdown
Collaborator

Purpose

This pull request introduces a new "Enable Scalability" option (intended for WAF deployments only) across all major deployment workflows, along with improvements to resource group ownership tagging and various input description clarifications. The main focus is on making scalability an opt-in feature for WAF deployments, ensuring validation and propagation of this flag throughout the workflows, and improving resource group traceability.

Key changes:

Scalability Option for WAF Deployments

  • Added an enableScalability or ENABLE_SCALABILITY input to all deployment workflows (deploy-v2.yml, deploy-windows.yml, deploy-orchestrator.yml, job-deploy.yml, job-deploy-linux.yml, job-deploy-windows.yml), including validation logic to ensure it is only effective when WAF is enabled. The flag is propagated through job environments and parameters as appropriate. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20]

  • For WAF deployments, the enableScalability parameter is injected into the ARM parameters file (main.parameters.json) using jq. For non-WAF deployments, the flag is ignored with a log message. [1] [2]

Resource Group Ownership Tagging

  • Added logic to tag Azure resource groups with an Owner (the GitHub actor) at creation time, and to merge/update the tag for existing groups, improving traceability of deployments. [1] [2] [3]

Input and Output Improvements

  • Improved input descriptions for clarity (e.g., region/AI project/resource group cleanup descriptions) and made some naming more consistent across workflows. [1] [2] [3]

  • Ensured that all new and updated inputs are correctly validated (including error messages and notes about when options are ignored) and passed through to jobs and steps as needed. [1] [2]

These changes collectively make deployments more robust, auditable, and flexible for users who need to enable scalability features in WAF-protected environments.

Does this introduce a breaking change?

  • Yes
  • No

Golden Path Validation

  • I have tested the primary workflows (the "golden path") to ensure they function correctly without errors.

Deployment Validation

  • I have validated the deployment process successfully and all services are running as expected with this change.

What to Check

Verify that the following are valid

  • ...

Other Information

@github-actions
Copy link
Copy Markdown

Coverage

Coverage Report •
FileStmtsMissCoverMissing
TOTAL121716186% 
report-only-changed-files is enabled. No files were changed during this commit :)

Tests Skipped Failures Errors Time
244 0 💤 0 ❌ 0 🔥 4.874s ⏱️

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the solution’s deployment automation and infrastructure templates to add an opt-in “Enable Scalability” flag for WAF deployments, improve Azure Resource Group traceability via ownership tagging, and apply several dependency + infra hardening updates.

Changes:

  • Added enableScalability / ENABLE_SCALABILITY inputs across major deployment workflows and propagated the flag into ARM parameters for WAF deployments.
  • Added/merged an Owner tag on deployment Resource Groups (create + update paths) for better auditability.
  • Updated infra templates and dependencies (e.g., Log Analytics naming, DCR config updates, storage/container-app hardening, Python + Web package bumps) and revamped email notification formatting.

Reviewed changes

Copilot reviewed 16 out of 20 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
src/ContentProcessorWorkflow/pyproject.toml Bumps python-multipart dependency version.
src/ContentProcessorWeb/pnpm-lock.yaml Locks updated dependency graph (postcss + additional overrides).
src/ContentProcessorWeb/package.json Updates postcss version and pins additional pnpm overrides.
src/ContentProcessorAPI/uv.lock Updates locked Python deps (python-multipart, urllib3).
src/ContentProcessorAPI/requirements.txt Bumps python-multipart and urllib3 pinned versions.
src/ContentProcessorAPI/pyproject.toml Bumps python-multipart and urllib3 constraints.
src/ContentProcessor/uv.lock Updates locked Python deps (python-multipart, urllib3).
src/ContentProcessor/requirements.txt Bumps urllib3 pinned version.
infra/main.json Regenerated ARM output reflecting infra/template changes.
infra/main.bicep Updates monitoring/DCR config, standardizes LA naming, and adds hardening flags (storage/container apps).
infra/main_custom.bicep Mirrors main.bicep changes for the custom deployment path.
.github/workflows/job-send-notification.yml Reworks notification emails to richer HTML formatting and status “pills”.
.github/workflows/job-deploy.yml Adds enableScalability input + propagates flag; adds Owner tag create/update logic.
.github/workflows/job-deploy-windows.yml Adds ENABLE_SCALABILITY input and injects it into parameters.json for WAF.
.github/workflows/job-deploy-linux.yml Adds ENABLE_SCALABILITY input and injects it into parameters.json for WAF.
.github/workflows/deploy.yml Adds Owner tagging for RG creation and merges Owner tag on existing RGs.
.github/workflows/deploy-windows.yml Adds enableScalability input and validation/propagation to orchestrated jobs.
.github/workflows/deploy-v2.yml Adds enableScalability input + validation/propagation; clarifies input descriptions.
.github/workflows/deploy-orchestrator.yml Adds enableScalability input and passes it through to downstream workflows.
Files not reviewed (1)
  • src/ContentProcessorWeb/pnpm-lock.yaml: Language not supported

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +222 to +224
RUN_URL="https://github.com/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}"
RESOURCE_GROUP="$INPUT_RESOURCE_GROUP_NAME"

EMAIL_BODY=$(cat <<EOF
{
"body": "<p>Dear Team,</p><p>We would like to inform you that the ${ACCELERATOR_NAME} deployment has failed.</p><p><strong>Status Summary:</strong><br><table border='1' cellpadding='5' cellspacing='0'><tr><th>Stage</th><th>Status</th></tr><tr><td>Deployment</td><td>❌ FAILED (Deployment Issue)</td></tr><tr><td>E2E Tests</td><td>⏭️ SKIPPED</td></tr><tr><td>Cleanup</td><td>${CLEANUP_STATUS}</td></tr></table></p><p><strong>Deployment Details:</strong><br>• Resource Group: ${RESOURCE_GROUP}</p><p><strong>Configuration:</strong> ${CONFIG_LABEL}</p><p><strong>Run URL:</strong> <a href='${RUN_URL}'>${RUN_URL}</a></p><p>Please investigate the deployment failure at your earliest convenience.</p><p>Best regards,<br>Your Automation Team</p>",
"subject": "❌[CI/CD-Automation] [${ACCELERATOR_NAME}] Deployment-Failed"
}
EOF
PILL_BASE="display:inline-block; min-width:70px; text-align:center; padding:4px 12px; border-radius:20px; font-size:12px; font-weight:600; line-height:1.4;"
Comment on lines +257 to +261
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${RESOURCE_GROUP}</td></tr>
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Triggered By</td>
<td style="padding:8px 0; font-size:13px; color:#111827;">${{ github.actor }}</td></tr>
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Branch</td>
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${{ env.BRANCH_NAME }}</td></tr>
Comment on lines +180 to +183
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280; width:140px;">Triggered By</td>
<td style="padding:8px 0; font-size:13px; color:#111827;">${{ github.actor }}</td></tr>
<tr><td style="padding:8px 0; font-size:13px; color:#6b7280;">Branch</td>
<td style="padding:8px 0; font-size:13px; color:#111827; font-family:'Cascadia Code','Courier New',monospace;">${{ env.BRANCH_NAME }}</td></tr>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants