From ac67769140309f239c4181129aa253889fc9fd18 Mon Sep 17 00:00:00 2001 From: "Niraj Chaudhari (Persistent Systems Inc)" Date: Tue, 5 May 2026 11:30:27 +0530 Subject: [PATCH 1/7] Format changes --- .github/workflows/validate-bicep-params.yml | 34 +-- infra/main.parameters.json | 8 +- infra/main.waf.parameters.json | 8 +- scripts/validate_bicep_params.py | 274 ++++++++++++++++++++ 4 files changed, 299 insertions(+), 25 deletions(-) diff --git a/.github/workflows/validate-bicep-params.yml b/.github/workflows/validate-bicep-params.yml index 2769b7e1..459dbe51 100644 --- a/.github/workflows/validate-bicep-params.yml +++ b/.github/workflows/validate-bicep-params.yml @@ -34,9 +34,16 @@ jobs: - name: Validate infra/ parameters id: validate_infra continue-on-error: true + env: + ACCELERATOR_NAME: ${{ env.accelerator_name }} run: | set +e - python scripts/validate_bicep_params.py --dir infra --strict --no-color --json-output infra_results.json 2>&1 | tee infra_output.txt + RUN_URL="https://github.com/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}" + python scripts/validate_bicep_params.py --dir infra --strict --no-color \ + --json-output infra_results.json \ + --html-output email_body.html \ + --accelerator-name "${ACCELERATOR_NAME}" \ + --run-url "${RUN_URL}" 2>&1 | tee infra_output.txt EXIT_CODE=${PIPESTATUS[0]} set -e echo "## Infra Param Validation" >> "$GITHUB_STEP_SUMMARY" @@ -61,44 +68,37 @@ jobs: name: bicep-validation-results path: | infra_results.json + email_body.html retention-days: 30 - name: Send schedule notification on failure - if: github.event_name == 'schedule' && steps.result.outputs.status == 'failure' + if: (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch') && steps.result.outputs.status == 'failure' env: LOGICAPP_URL: ${{ secrets.EMAILNOTIFICATION_LOGICAPP_URL_TA }} - GITHUB_REPOSITORY: ${{ github.repository }} - GITHUB_RUN_ID: ${{ github.run_id }} ACCELERATOR_NAME: ${{ env.accelerator_name }} run: | - RUN_URL="https://github.com/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}" - INFRA_OUTPUT=$(sed 's/&/\&/g; s//\>/g' infra_output.txt) + EMAIL_BODY=$(cat email_body.html) jq -n \ --arg name "${ACCELERATOR_NAME}" \ - --arg infra "$INFRA_OUTPUT" \ - --arg url "$RUN_URL" \ - '{subject: ("Bicep Parameter Validation Report - " + $name + " - Issues Detected"), body: ("

Dear Team,

The scheduled Bicep Parameter Validation for " + $name + " has detected parameter mapping errors.

infra/ Results:

" + $infra + "

Run URL: " + $url + "

Please fix the parameter mapping issues at your earliest convenience.

Best regards,
Your Automation Team

")}' \ + --arg body "$EMAIL_BODY" \ + '{subject: ("Bicep Parameter Validation Report - " + $name + " - Issues Detected"), body: $body}' \ | curl -X POST "${LOGICAPP_URL}" \ -H "Content-Type: application/json" \ -d @- || echo "Failed to send notification" - name: Send schedule notification on success - if: github.event_name == 'schedule' && steps.result.outputs.status == 'success' + if: (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch') && steps.result.outputs.status == 'success' env: LOGICAPP_URL: ${{ secrets.EMAILNOTIFICATION_LOGICAPP_URL_TA }} - GITHUB_REPOSITORY: ${{ github.repository }} - GITHUB_RUN_ID: ${{ github.run_id }} ACCELERATOR_NAME: ${{ env.accelerator_name }} run: | - RUN_URL="https://github.com/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}" - INFRA_OUTPUT=$(sed 's/&/\&/g; s//\>/g' infra_output.txt) + EMAIL_BODY=$(cat email_body.html) jq -n \ --arg name "${ACCELERATOR_NAME}" \ - --arg infra "$INFRA_OUTPUT" \ - --arg url "$RUN_URL" \ - '{subject: ("Bicep Parameter Validation Report - " + $name + " - Passed"), body: ("

Dear Team,

The scheduled Bicep Parameter Validation for " + $name + " has completed successfully. All parameter mappings are valid.

infra/ Results:

" + $infra + "

Run URL: " + $url + "

Best regards,
Your Automation Team

")}' \ + --arg body "$EMAIL_BODY" \ + '{subject: ("Bicep Parameter Validation Report - " + $name + " - Passed"), body: $body}' \ | curl -X POST "${LOGICAPP_URL}" \ -H "Content-Type: application/json" \ -d @- || echo "Failed to send notification" diff --git a/infra/main.parameters.json b/infra/main.parameters.json index b4a1a7cc..e859cbfc 100644 --- a/infra/main.parameters.json +++ b/infra/main.parameters.json @@ -6,18 +6,18 @@ "value": "${AZURE_ENV_NAME}" }, "location": { - "value": "${AZURE_LOCATION}" + "value": "${AZURE_LOCATION2323}" }, "containerRegistryEndpoint": { - "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT}" + "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT23}" }, - "azureAiServiceLocation": { + "azureAiServiceLocation23": { "value": "${AZURE_ENV_AI_SERVICE_LOCATION}" }, "deploymentType": { "value": "${AZURE_ENV_MODEL_DEPLOYMENT_TYPE}" }, - "gptModelName": { + "gptModelName23": { "value": "${AZURE_ENV_GPT_MODEL_NAME}" }, "gptModelVersion": { diff --git a/infra/main.waf.parameters.json b/infra/main.waf.parameters.json index 3ed3de5b..173f1fbd 100644 --- a/infra/main.waf.parameters.json +++ b/infra/main.waf.parameters.json @@ -6,18 +6,18 @@ "value": "${AZURE_ENV_NAME}" }, "location": { - "value": "${AZURE_LOCATION}" + "value": "${AZURE_LOCATION23}" }, "containerRegistryEndpoint": { - "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT}" + "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT231}" }, - "azureAiServiceLocation": { + "azureAiServiceLocation23": { "value": "${AZURE_ENV_AI_SERVICE_LOCATION}" }, "deploymentType": { "value": "${AZURE_ENV_MODEL_DEPLOYMENT_TYPE}" }, - "gptModelName": { + "gptModelName23": { "value": "${AZURE_ENV_GPT_MODEL_NAME}" }, "gptModelVersion": { diff --git a/scripts/validate_bicep_params.py b/scripts/validate_bicep_params.py index 9320633a..da2cdfb5 100644 --- a/scripts/validate_bicep_params.py +++ b/scripts/validate_bicep_params.py @@ -341,6 +341,250 @@ def print_report(results: list[ValidationResult], *, use_color: bool = True) -> print(f"{c['ERROR']}Parameter mapping issues detected!{c['RESET']}") +# --------------------------------------------------------------------------- +# HTML email report +# --------------------------------------------------------------------------- + +def _html_escape(text: str) -> str: + """Escape HTML special characters.""" + return ( + text.replace("&", "&") + .replace("<", "<") + .replace(">", ">") + .replace('"', """) + ) + + +def generate_html_report( + results: list[ValidationResult], + *, + accelerator_name: str = "", + run_url: str = "", + scan_dir: str = "", +) -> str: + """Build a structured HTML email body from validation results.""" + total_errors = sum( + 1 for r in results for i in r.issues if i.severity == "ERROR" + ) + total_warnings = sum( + 1 for r in results for i in r.issues if i.severity == "WARNING" + ) + has_errors = total_errors > 0 + overall_status = "Issues Detected" if has_errors else "Passed" + status_color = "#D32F2F" if has_errors else "#2E7D32" + status_bg = "#FFEBEE" if has_errors else "#E8F5E9" + status_icon = "❌" if has_errors else "✅" + + parts: list[str] = [] + + # --- Document wrapper (Outlook-compatible, no gradient/border-radius/box-shadow) --- + parts.append( + '' + '' + '' + '
' + '' + ) + + # --- Header banner (solid color, Outlook-safe) --- + parts.append( + f'' + ) + + # --- Summary card --- + parts.append( + f'") + + # --- Per-pair detail sections --- + parts.append('") + + # --- Footer with run URL --- + footer_parts: list[str] = [] + if run_url: + footer_parts.append( + f'View Workflow Run' + ) + if has_errors: + footer_parts.append( + '

' + 'Please fix the parameter mapping issues at your earliest convenience.

' + ) + footer_parts.append( + '

' + 'Best regards,
Your Automation Team

' + ) + parts.append( + f'' + ) + + # --- Close wrapper --- + parts.append("
' + f'

' + f'Bicep Parameter Validation Report

' + f'

' + f'{_html_escape(accelerator_name) if accelerator_name else "Accelerator"}' + f' — Automated Check

' + f'
' + f'' + f'' + f'
' + f'' + f'{status_icon} Overall Status: {overall_status}' + f'
' + f'' + ) + # Accelerator name pill + if accelerator_name: + parts.append( + f'' + ) + # Scan directory pill + if scan_dir: + parts.append( + f'' + ) + # Error count pill + err_pill_color = "#D32F2F" if total_errors > 0 else "#2E7D32" + parts.append( + f'' + ) + # Warning count pill + warn_pill_color = "#F57C00" if total_warnings > 0 else "#2E7D32" + parts.append( + f'' + ) + parts.append("
' + f'Accelerator
' + f'{_html_escape(accelerator_name)}' + f'
' + f'Scan Directory
' + f'{_html_escape(scan_dir)}/' + f'
' + f'Errors
' + f'' + f'{total_errors}
' + f'Warnings
' + f'' + f'{total_warnings}
') + for r in results: + errors = [i for i in r.issues if i.severity == "ERROR"] + warnings = [i for i in r.issues if i.severity == "WARNING"] + + if not r.issues: + badge = ( + 'PASS' + ) + elif errors: + badge = ( + 'FAIL' + ) + else: + badge = ( + 'WARN' + ) + + parts.append( + f'' + f'' + ) + + if r.issues: + # --- Errors sub-section --- + if errors: + parts.append( + '' + '") + + # --- Warnings sub-section --- + if warnings: + parts.append( + '' + '") + else: + parts.append( + '' + ) + + parts.append("
' + f'{badge} ' + f'' + f'{_html_escape(r.pair)}' + f'' + f'{len(errors)} error(s), {len(warnings)} warning(s)' + f'
' + '' + '● Errors
' + '' + '' + '' + '' + ) + for idx, issue in enumerate(errors): + bg = "#ffffff" if idx % 2 == 0 else "#fff5f5" + parts.append( + f'' + f'' + f'' + f'' + ) + parts.append("
ParameterDetails
' + f'{_html_escape(issue.param_name)}{_html_escape(issue.message)}
' + '' + '● Warnings
' + '' + '' + '' + '' + ) + for idx, issue in enumerate(warnings): + bg = "#ffffff" if idx % 2 == 0 else "#fffaf0" + parts.append( + f'' + f'' + f'' + f'' + ) + parts.append("
ParameterDetails
' + f'{_html_escape(issue.param_name)}{_html_escape(issue.message)}
All parameters validated successfully.' + '
") + + parts.append("
' + f'{"".join(footer_parts)}
") + return "".join(parts) + + # --------------------------------------------------------------------------- # CLI # --------------------------------------------------------------------------- @@ -379,6 +623,23 @@ def main() -> int: type=Path, help="Write results as JSON to the given file path.", ) + parser.add_argument( + "--html-output", + type=Path, + help="Write a structured HTML email report to the given file path.", + ) + parser.add_argument( + "--accelerator-name", + type=str, + default="", + help="Accelerator display name for the HTML report header.", + ) + parser.add_argument( + "--run-url", + type=str, + default="", + help="Workflow run URL to include in the HTML report footer.", + ) args = parser.parse_args() results: list[ValidationResult] = [] @@ -415,6 +676,19 @@ def main() -> int: ) print(f"\nJSON report written to {args.json_output}") + # Optional HTML email report + if args.html_output: + scan_dir = str(args.dir) if args.dir else "" + html = generate_html_report( + results, + accelerator_name=args.accelerator_name, + run_url=args.run_url, + scan_dir=scan_dir, + ) + args.html_output.parent.mkdir(parents=True, exist_ok=True) + args.html_output.write_text(html, encoding="utf-8") + print(f"HTML report written to {args.html_output}") + has_errors = any(r.has_errors for r in results) return 1 if args.strict and has_errors else 0 From 1594df3f6e3c7bd485150933fa9bab96686aadb5 Mon Sep 17 00:00:00 2001 From: "Niraj Chaudhari (Persistent Systems Inc)" Date: Tue, 5 May 2026 12:13:49 +0530 Subject: [PATCH 2/7] Format changes 2 --- infra/main.parameters.json | 12 ++++++------ infra/main.waf.parameters.json | 10 +++++----- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/infra/main.parameters.json b/infra/main.parameters.json index e859cbfc..754dae81 100644 --- a/infra/main.parameters.json +++ b/infra/main.parameters.json @@ -5,19 +5,19 @@ "solutionName": { "value": "${AZURE_ENV_NAME}" }, - "location": { - "value": "${AZURE_LOCATION2323}" + "location1212": { + "value": "${AZURE_LOCATION}" }, - "containerRegistryEndpoint": { - "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT23}" + "containerRegistryEndpoint123": { + "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT}" }, - "azureAiServiceLocation23": { + "azureAiServiceLocation": { "value": "${AZURE_ENV_AI_SERVICE_LOCATION}" }, "deploymentType": { "value": "${AZURE_ENV_MODEL_DEPLOYMENT_TYPE}" }, - "gptModelName23": { + "gptModelName": { "value": "${AZURE_ENV_GPT_MODEL_NAME}" }, "gptModelVersion": { diff --git a/infra/main.waf.parameters.json b/infra/main.waf.parameters.json index 173f1fbd..4afd5437 100644 --- a/infra/main.waf.parameters.json +++ b/infra/main.waf.parameters.json @@ -6,18 +6,18 @@ "value": "${AZURE_ENV_NAME}" }, "location": { - "value": "${AZURE_LOCATION23}" + "value": "${AZURE_LOCATION}" }, "containerRegistryEndpoint": { - "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT231}" + "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT}" }, - "azureAiServiceLocation23": { + "azureAiServiceLocation2323": { "value": "${AZURE_ENV_AI_SERVICE_LOCATION}" }, - "deploymentType": { + "deploymentTyp2323e": { "value": "${AZURE_ENV_MODEL_DEPLOYMENT_TYPE}" }, - "gptModelName23": { + "gptModelName": { "value": "${AZURE_ENV_GPT_MODEL_NAME}" }, "gptModelVersion": { From e1907d9bb0a36cb17c94dfc153b216def18a3094 Mon Sep 17 00:00:00 2001 From: "Niraj Chaudhari (Persistent Systems Inc)" Date: Tue, 5 May 2026 12:15:15 +0530 Subject: [PATCH 3/7] Format changes 2 --- infra/main.parameters.json | 4 ++-- infra/main.waf.parameters.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/infra/main.parameters.json b/infra/main.parameters.json index 754dae81..28a68161 100644 --- a/infra/main.parameters.json +++ b/infra/main.parameters.json @@ -5,10 +5,10 @@ "solutionName": { "value": "${AZURE_ENV_NAME}" }, - "location1212": { + "location": { "value": "${AZURE_LOCATION}" }, - "containerRegistryEndpoint123": { + "containerRegistryEndpoint23f2": { "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT}" }, "azureAiServiceLocation": { diff --git a/infra/main.waf.parameters.json b/infra/main.waf.parameters.json index 4afd5437..2c9c8111 100644 --- a/infra/main.waf.parameters.json +++ b/infra/main.waf.parameters.json @@ -11,10 +11,10 @@ "containerRegistryEndpoint": { "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT}" }, - "azureAiServiceLocation2323": { + "azureAiServiceLocation233": { "value": "${AZURE_ENV_AI_SERVICE_LOCATION}" }, - "deploymentTyp2323e": { + "deploymentType": { "value": "${AZURE_ENV_MODEL_DEPLOYMENT_TYPE}" }, "gptModelName": { From 1cd7ee11f586d9299fb7af6cfaef0f3148d5a85c Mon Sep 17 00:00:00 2001 From: "Niraj Chaudhari (Persistent Systems Inc)" Date: Tue, 5 May 2026 12:16:26 +0530 Subject: [PATCH 4/7] Format changes 3 --- infra/main.waf.parameters.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/infra/main.waf.parameters.json b/infra/main.waf.parameters.json index 2c9c8111..d20064ee 100644 --- a/infra/main.waf.parameters.json +++ b/infra/main.waf.parameters.json @@ -11,7 +11,7 @@ "containerRegistryEndpoint": { "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT}" }, - "azureAiServiceLocation233": { + "azureAiServiceLocation": { "value": "${AZURE_ENV_AI_SERVICE_LOCATION}" }, "deploymentType": { @@ -20,7 +20,7 @@ "gptModelName": { "value": "${AZURE_ENV_GPT_MODEL_NAME}" }, - "gptModelVersion": { + "gptModelVersion2323": { "value": "${AZURE_ENV_GPT_MODEL_VERSION}" }, "gptDeploymentCapacity": { From f78da57e1e2573ddd732fea85a96ece09e4eb399 Mon Sep 17 00:00:00 2001 From: "Niraj Chaudhari (Persistent Systems Inc)" Date: Thu, 7 May 2026 13:41:56 +0530 Subject: [PATCH 5/7] Update email format 7 --- .github/workflows/validate-bicep-params.yml | 4 +- infra/main.parameters.json | 41 +++++++++++++-------- infra/main.waf.parameters.json | 38 +++++++++++-------- 3 files changed, 49 insertions(+), 34 deletions(-) diff --git a/.github/workflows/validate-bicep-params.yml b/.github/workflows/validate-bicep-params.yml index 459dbe51..d51e478a 100644 --- a/.github/workflows/validate-bicep-params.yml +++ b/.github/workflows/validate-bicep-params.yml @@ -72,7 +72,7 @@ jobs: retention-days: 30 - name: Send schedule notification on failure - if: (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch') && steps.result.outputs.status == 'failure' + if: github.event_name == 'schedule' && steps.result.outputs.status == 'failure' env: LOGICAPP_URL: ${{ secrets.EMAILNOTIFICATION_LOGICAPP_URL_TA }} ACCELERATOR_NAME: ${{ env.accelerator_name }} @@ -88,7 +88,7 @@ jobs: -d @- || echo "Failed to send notification" - name: Send schedule notification on success - if: (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch') && steps.result.outputs.status == 'success' + if: github.event_name == 'schedule' && steps.result.outputs.status == 'success' env: LOGICAPP_URL: ${{ secrets.EMAILNOTIFICATION_LOGICAPP_URL_TA }} ACCELERATOR_NAME: ${{ env.accelerator_name }} diff --git a/infra/main.parameters.json b/infra/main.parameters.json index 28a68161..a8c7edde 100644 --- a/infra/main.parameters.json +++ b/infra/main.parameters.json @@ -8,29 +8,38 @@ "location": { "value": "${AZURE_LOCATION}" }, - "containerRegistryEndpoint23f2": { - "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT}" + "containerRegistryHost": { + "value": "${AZURE_CONTAINER_REGISTRY_HOST}" }, "azureAiServiceLocation": { - "value": "${AZURE_ENV_AI_SERVICE_LOCATION}" + "value": "${AZURE_AI_SERVICE_LOCATION}" }, - "deploymentType": { - "value": "${AZURE_ENV_MODEL_DEPLOYMENT_TYPE}" + "aiDeploymentLocation": { + "value": "${AZURE_AI_DEPLOYMENT_LOCATION}" }, - "gptModelName": { - "value": "${AZURE_ENV_GPT_MODEL_NAME}" + "azureAiServiceLocation": { + "value": "${AZURE_AI_SERVICE_LOCATION}" + }, + "aiDeploymentType": { + "value": "${AZURE_AI_DEPLOYMENT_TYPE}" + }, + "aiModelName": { + "value": "${AZURE_AI_MODEL_NAME}" + }, + "aiModelVersion": { + "value": "${AZURE_AI_MODEL_VERSION}" }, - "gptModelVersion": { - "value": "${AZURE_ENV_GPT_MODEL_VERSION}" + "aiModelCapacity": { + "value": "${AZURE_AI_MODEL_CAPACITY}" }, - "gptDeploymentCapacity": { - "value": "${AZURE_ENV_GPT_MODEL_CAPACITY}" + "enableTelemetry": { + "value": true }, "existingLogAnalyticsWorkspaceId": { - "value": "${AZURE_ENV_EXISTING_LOG_ANALYTICS_WORKSPACE_RID}" + "value": "${AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID}" }, - "existingFoundryProjectResourceId": { - "value": "${AZURE_EXISTING_AIPROJECT_RESOURCE_ID}" + "existingFoundryProjectResourceId":{ + "value": "${AZURE_EXISTING_AI_PROJECT_RESOURCE_ID}" }, "vmAdminUsername": { "value": "${AZURE_ENV_VM_ADMIN_USERNAME}" @@ -39,7 +48,7 @@ "value": "${AZURE_ENV_VM_ADMIN_PASSWORD}" }, "imageTag": { - "value": "${AZURE_ENV_IMAGE_TAG}" + "value": "${AZURE_ENV_IMAGETAG}" } } -} +} \ No newline at end of file diff --git a/infra/main.waf.parameters.json b/infra/main.waf.parameters.json index d20064ee..ce2f3f4c 100644 --- a/infra/main.waf.parameters.json +++ b/infra/main.waf.parameters.json @@ -8,23 +8,29 @@ "location": { "value": "${AZURE_LOCATION}" }, - "containerRegistryEndpoint": { - "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT}" + "containerRegistryHost": { + "value": "${AZURE_CONTAINER_REGISTRY_HOST}" }, "azureAiServiceLocation": { - "value": "${AZURE_ENV_AI_SERVICE_LOCATION}" + "value": "${AZURE_AI_SERVICE_LOCATION}" }, - "deploymentType": { - "value": "${AZURE_ENV_MODEL_DEPLOYMENT_TYPE}" + "aiDeploymentLocation": { + "value": "${AZURE_AI_DEPLOYMENT_LOCATION}" }, - "gptModelName": { - "value": "${AZURE_ENV_GPT_MODEL_NAME}" + "azureAiServiceLocation": { + "value": "${AZURE_AI_SERVICE_LOCATION}" + }, + "aiDeploymentType": { + "value": "${AZURE_AI_DEPLOYMENT_TYPE}" + }, + "aiModelName": { + "value": "${AZURE_AI_MODEL_NAME}" }, - "gptModelVersion2323": { - "value": "${AZURE_ENV_GPT_MODEL_VERSION}" + "aiModelVersion": { + "value": "${AZURE_AI_MODEL_VERSION}" }, - "gptDeploymentCapacity": { - "value": "${AZURE_ENV_GPT_MODEL_CAPACITY}" + "aiModelCapacity": { + "value": "${AZURE_AI_MODEL_CAPACITY}" }, "enableTelemetry": { "value": true @@ -45,16 +51,16 @@ "value": "${AZURE_ENV_VM_ADMIN_PASSWORD}" }, "existingLogAnalyticsWorkspaceId": { - "value": "${AZURE_ENV_EXISTING_LOG_ANALYTICS_WORKSPACE_RID}" + "value": "${AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID}" }, - "existingFoundryProjectResourceId": { - "value": "${AZURE_EXISTING_AIPROJECT_RESOURCE_ID}" + "existingFoundryProjectResourceId":{ + "value": "${AZURE_EXISTING_AI_PROJECT_RESOURCE_ID}" }, "imageTag": { - "value": "${AZURE_ENV_IMAGE_TAG}" + "value": "${AZURE_ENV_IMAGETAG}" }, "vmSize": { "value": "${AZURE_ENV_VM_SIZE}" } } -} +} \ No newline at end of file From f4405cd6865e23cf7ebdc67ad6ba533db1df0d6e Mon Sep 17 00:00:00 2001 From: "Niraj Chaudhari (Persistent Systems Inc)" Date: Thu, 7 May 2026 14:10:32 +0530 Subject: [PATCH 6/7] Update email format 5 --- infra/main.parameters.json | 39 +++++++++++++--------------------- infra/main.waf.parameters.json | 36 +++++++++++++------------------ 2 files changed, 30 insertions(+), 45 deletions(-) diff --git a/infra/main.parameters.json b/infra/main.parameters.json index a8c7edde..0b75f31f 100644 --- a/infra/main.parameters.json +++ b/infra/main.parameters.json @@ -8,38 +8,29 @@ "location": { "value": "${AZURE_LOCATION}" }, - "containerRegistryHost": { - "value": "${AZURE_CONTAINER_REGISTRY_HOST}" + "containerRegistryEndpoint": { + "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT}" }, "azureAiServiceLocation": { - "value": "${AZURE_AI_SERVICE_LOCATION}" + "value": "${AZURE_ENV_AI_SERVICE_LOCATION}" }, - "aiDeploymentLocation": { - "value": "${AZURE_AI_DEPLOYMENT_LOCATION}" + "deploymentType": { + "value": "${AZURE_ENV_MODEL_DEPLOYMENT_TYPE}" }, - "azureAiServiceLocation": { - "value": "${AZURE_AI_SERVICE_LOCATION}" - }, - "aiDeploymentType": { - "value": "${AZURE_AI_DEPLOYMENT_TYPE}" - }, - "aiModelName": { - "value": "${AZURE_AI_MODEL_NAME}" - }, - "aiModelVersion": { - "value": "${AZURE_AI_MODEL_VERSION}" + "gptModelName": { + "value": "${AZURE_ENV_GPT_MODEL_NAME}" }, - "aiModelCapacity": { - "value": "${AZURE_AI_MODEL_CAPACITY}" + "gptModelVersion": { + "value": "${AZURE_ENV_GPT_MODEL_VERSION}" }, - "enableTelemetry": { - "value": true + "gptDeploymentCapacity": { + "value": "${AZURE_ENV_GPT_MODEL_CAPACITY}" }, "existingLogAnalyticsWorkspaceId": { - "value": "${AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID}" + "value": "${AZURE_ENV_EXISTING_LOG_ANALYTICS_WORKSPACE_RID}" }, - "existingFoundryProjectResourceId":{ - "value": "${AZURE_EXISTING_AI_PROJECT_RESOURCE_ID}" + "existingFoundryProjectResourceId": { + "value": "${AZURE_EXISTING_AIPROJECT_RESOURCE_ID}" }, "vmAdminUsername": { "value": "${AZURE_ENV_VM_ADMIN_USERNAME}" @@ -48,7 +39,7 @@ "value": "${AZURE_ENV_VM_ADMIN_PASSWORD}" }, "imageTag": { - "value": "${AZURE_ENV_IMAGETAG}" + "value": "${AZURE_ENV_IMAGE_TAG}" } } } \ No newline at end of file diff --git a/infra/main.waf.parameters.json b/infra/main.waf.parameters.json index ce2f3f4c..a2a4c2cb 100644 --- a/infra/main.waf.parameters.json +++ b/infra/main.waf.parameters.json @@ -8,29 +8,23 @@ "location": { "value": "${AZURE_LOCATION}" }, - "containerRegistryHost": { - "value": "${AZURE_CONTAINER_REGISTRY_HOST}" + "containerRegistryEndpoint": { + "value": "${AZURE_ENV_CONTAINER_REGISTRY_ENDPOINT}" }, "azureAiServiceLocation": { - "value": "${AZURE_AI_SERVICE_LOCATION}" + "value": "${AZURE_ENV_AI_SERVICE_LOCATION}" }, - "aiDeploymentLocation": { - "value": "${AZURE_AI_DEPLOYMENT_LOCATION}" + "deploymentType": { + "value": "${AZURE_ENV_MODEL_DEPLOYMENT_TYPE}" }, - "azureAiServiceLocation": { - "value": "${AZURE_AI_SERVICE_LOCATION}" - }, - "aiDeploymentType": { - "value": "${AZURE_AI_DEPLOYMENT_TYPE}" - }, - "aiModelName": { - "value": "${AZURE_AI_MODEL_NAME}" + "gptModelName": { + "value": "${AZURE_ENV_GPT_MODEL_NAME}" }, - "aiModelVersion": { - "value": "${AZURE_AI_MODEL_VERSION}" + "gptModelVersion": { + "value": "${AZURE_ENV_GPT_MODEL_VERSION}" }, - "aiModelCapacity": { - "value": "${AZURE_AI_MODEL_CAPACITY}" + "gptDeploymentCapacity": { + "value": "${AZURE_ENV_GPT_MODEL_CAPACITY}" }, "enableTelemetry": { "value": true @@ -51,13 +45,13 @@ "value": "${AZURE_ENV_VM_ADMIN_PASSWORD}" }, "existingLogAnalyticsWorkspaceId": { - "value": "${AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID}" + "value": "${AZURE_ENV_EXISTING_LOG_ANALYTICS_WORKSPACE_RID}" }, - "existingFoundryProjectResourceId":{ - "value": "${AZURE_EXISTING_AI_PROJECT_RESOURCE_ID}" + "existingFoundryProjectResourceId": { + "value": "${AZURE_EXISTING_AIPROJECT_RESOURCE_ID}" }, "imageTag": { - "value": "${AZURE_ENV_IMAGETAG}" + "value": "${AZURE_ENV_IMAGE_TAG}" }, "vmSize": { "value": "${AZURE_ENV_VM_SIZE}" From c4ac79379d35469fd4f9fa21eee8779d8af9224d Mon Sep 17 00:00:00 2001 From: "Niraj Chaudhari (Persistent Systems Inc)" Date: Thu, 7 May 2026 14:11:16 +0530 Subject: [PATCH 7/7] Update email format 8 --- infra/main.parameters.json | 2 +- infra/main.waf.parameters.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/infra/main.parameters.json b/infra/main.parameters.json index 0b75f31f..b4a1a7cc 100644 --- a/infra/main.parameters.json +++ b/infra/main.parameters.json @@ -42,4 +42,4 @@ "value": "${AZURE_ENV_IMAGE_TAG}" } } -} \ No newline at end of file +} diff --git a/infra/main.waf.parameters.json b/infra/main.waf.parameters.json index a2a4c2cb..3ed3de5b 100644 --- a/infra/main.waf.parameters.json +++ b/infra/main.waf.parameters.json @@ -57,4 +57,4 @@ "value": "${AZURE_ENV_VM_SIZE}" } } -} \ No newline at end of file +}