Skip to content
Merged
Show file tree
Hide file tree
Changes from 16 commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
8090ef3
Remove unused parameters and definitions from main.parameters.json an…
Harmanpreet-Microsoft Mar 17, 2026
f916056
Refactor parameter names for consistency and clarity across Bicep and…
Harmanpreet-Microsoft Mar 19, 2026
2071908
fix bug and Managed identity changes
Mar 23, 2026
57a8de4
Merge remote-tracking branch 'origin/dev' into psl-bicep-param
Harmanpreet-Microsoft Mar 27, 2026
48ec242
Refactor Azure resource ID variables in workflow files for consistency
Vamshi-Microsoft Mar 27, 2026
2d7a5bd
Rename parameters for existing Log Analytics Workspace and AI Foundry…
Harmanpreet-Microsoft Apr 1, 2026
63ef3e7
Merge remote-tracking branch 'origin/dev' into psl-bicep-param
Harmanpreet-Microsoft Apr 3, 2026
69d02f6
fix: update variable references for log analytics workspace and AI pr…
Harmanpreet-Microsoft Apr 3, 2026
760c6fe
refactor: rename log analytics workspace resource ID variable to exis…
Harmanpreet-Microsoft Apr 3, 2026
f4a1665
add Bicep parameter validation workflow and script
Harsh-Microsoft Apr 3, 2026
8ac02eb
remove push trigger and refine notification conditions in Bicep valid…
Harsh-Microsoft Apr 3, 2026
8ec823f
update docstrings for parameter parsing functions in validate_bicep_p…
Harsh-Microsoft Apr 3, 2026
5b5ee92
Filter the paths for pipeline run
Prekshith-Microsoft Apr 6, 2026
0a9e076
update vite and picomatch versions
Ayaz-Microsoft Apr 7, 2026
4defd4e
Merge pull request #397 from microsoft/dependabot-ayaz
Roopan-Microsoft Apr 8, 2026
06069ee
fix: add bicep version requirement (>= 0.33.0) to azure.yaml
Roopan-Microsoft Apr 9, 2026
73c461c
fix: Remove Create-Release.yml path filter changes
Prekshith-Microsoft Apr 9, 2026
64111e2
fix: add bicep version requirement (>= 0.33.0) to azure.yaml
Avijit-Microsoft Apr 9, 2026
56ca532
Merge remote-tracking branch 'origin/dev' into psl-bicep-param
Harmanpreet-Microsoft Apr 9, 2026
22932f1
Merge pull request #391 from microsoft/hb-psl-38859
Roopan-Microsoft Apr 9, 2026
e8bab67
modified process page
Shreyas-Microsoft Apr 9, 2026
d89741a
Update src/frontend/src/pages/modernizationPage.tsx
Shreyas-Microsoft Apr 9, 2026
72a30d0
Update README
Thanusree-Microsoft Apr 9, 2026
9d16b7e
Update Deployment Guide
Thanusree-Microsoft Apr 9, 2026
8aab26e
Delete src/frontend/.dockerignore
Shreyas-Microsoft Apr 9, 2026
d44675e
fix: standardize environment variable names for imageTag and containe…
Harmanpreet-Microsoft Apr 9, 2026
e08f742
copilot comment resolving
Shreyas-Microsoft Apr 9, 2026
290d52c
Merge branch 'psl-fix-gp-bug' of https://github.com/microsoft/Moderni…
Shreyas-Microsoft Apr 9, 2026
f518de4
resolve pylint
Shreyas-Microsoft Apr 9, 2026
7aa2173
Merge pull request #375 from microsoft/psl-fix-gp-bug
Roopan-Microsoft Apr 9, 2026
3879ce9
fix: update environment variable names for image tag and AI project r…
Harmanpreet-Microsoft Apr 9, 2026
d1b8c50
feat: add aiModelDeployments parameter to main.parameters.json and ma…
Harmanpreet-Microsoft Apr 9, 2026
2373d4d
feat: add aiModelDeployments parameter for quota validation scripts
Harmanpreet-Microsoft Apr 9, 2026
fff4aa8
fix: update environment variable names for log analytics workspace ID…
Harmanpreet-Microsoft Apr 9, 2026
53d8363
Merge pull request #371 from microsoft/psl-bicep-param
Roopan-Microsoft Apr 9, 2026
f9f14bd
Merge pull request #393 from microsoft/psl-path-filter
Roopan-Microsoft Apr 9, 2026
66d8572
Merge pull request #402 from microsoft/psl-changesfi
Roopan-Microsoft Apr 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
107 changes: 107 additions & 0 deletions .github/workflows/validate-bicep-params.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
name: Validate Bicep Parameters

permissions:
contents: read

on:
schedule:
- cron: '30 6 * * 3' # Wednesday 12:00 PM IST (6:30 AM UTC)
pull_request:
branches:
- main
- dev
paths:
- 'infra/**/*.bicep'
- 'infra/**/*.parameters.json'
workflow_dispatch:

env:
accelerator_name: "CodeMod"

jobs:
validate:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'

- name: Validate infra/ parameters
id: validate_infra
continue-on-error: true
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
EXIT_CODE=${PIPESTATUS[0]}
set -e
echo "## Infra Param Validation" >> "$GITHUB_STEP_SUMMARY"
echo '```' >> "$GITHUB_STEP_SUMMARY"
cat infra_output.txt >> "$GITHUB_STEP_SUMMARY"
echo '```' >> "$GITHUB_STEP_SUMMARY"
exit $EXIT_CODE

- name: Set overall result
id: result
run: |
if [[ "${{ steps.validate_infra.outcome }}" == "failure" ]]; then
echo "status=failure" >> "$GITHUB_OUTPUT"
else
echo "status=success" >> "$GITHUB_OUTPUT"
fi

- name: Upload validation results
if: always()
uses: actions/upload-artifact@v4
with:
name: bicep-validation-results
path: |
infra_results.json
retention-days: 30

- name: Send schedule notification on failure
if: github.event_name == 'schedule' && 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/&/\&amp;/g; s/</\&lt;/g; s/>/\&gt;/g' infra_output.txt)

jq -n \
--arg name "${ACCELERATOR_NAME}" \
--arg infra "$INFRA_OUTPUT" \
--arg url "$RUN_URL" \
'{subject: ("Bicep Parameter Validation Report - " + $name + " - Issues Detected"), body: ("<p>Dear Team,</p><p>The scheduled <strong>Bicep Parameter Validation</strong> for <strong>" + $name + "</strong> has detected parameter mapping errors.</p><p><strong>infra/ Results:</strong></p><pre>" + $infra + "</pre><p><strong>Run URL:</strong> <a href=\"" + $url + "\">" + $url + "</a></p><p>Please fix the parameter mapping issues at your earliest convenience.</p><p>Best regards,<br>Your Automation Team</p>")}' \
| 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'
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/&/\&amp;/g; s/</\&lt;/g; s/>/\&gt;/g' infra_output.txt)

jq -n \
--arg name "${ACCELERATOR_NAME}" \
--arg infra "$INFRA_OUTPUT" \
--arg url "$RUN_URL" \
'{subject: ("Bicep Parameter Validation Report - " + $name + " - Passed"), body: ("<p>Dear Team,</p><p>The scheduled <strong>Bicep Parameter Validation</strong> for <strong>" + $name + "</strong> has completed successfully. All parameter mappings are valid.</p><p><strong>infra/ Results:</strong></p><pre>" + $infra + "</pre><p><strong>Run URL:</strong> <a href=\"" + $url + "\">" + $url + "</a></p><p>Best regards,<br>Your Automation Team</p>")}' \
| curl -X POST "${LOGICAPP_URL}" \
-H "Content-Type: application/json" \
-d @- || echo "Failed to send notification"

- name: Fail if errors found
if: steps.result.outputs.status == 'failure'
run: exit 1
1 change: 1 addition & 0 deletions azure.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ metadata:

requiredVersions:
azd: '>= 1.18.0 != 1.23.9'
bicep: '>= 0.33.0'

parameters:
AzureAiServiceLocation:
Expand Down
Loading
Loading