Skip to content

Commit a0aef18

Browse files
Merge pull request #925 from microsoft/main
fix: downmerge from main to demo
2 parents 282d67e + 7302c18 commit a0aef18

148 files changed

Lines changed: 9668 additions & 11960 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.devcontainer/devcontainer.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,11 @@
66
"forwardPorts": [50505],
77
"features": {
88
"ghcr.io/azure/azure-dev/azd:latest": {},
9-
"ghcr.io/devcontainers/features/azure-cli:1": {},
9+
"ghcr.io/devcontainers/features/azure-cli:1": {
10+
"installBicep": true,
11+
"version": "latest",
12+
"bicepVersion": "latest"
13+
},
1014
"ghcr.io/devcontainers/features/docker-in-docker:2": {},
1115
"ghcr.io/jlaundry/devcontainer-features/mssql-odbc-driver:1": {
1216
"version": "18"
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
name: AZD Template Validation
2+
on:
3+
schedule:
4+
- cron: '30 1 * * 4' # Every Thursday at 7:00 AM IST (1:30 AM UTC)
5+
workflow_dispatch:
6+
7+
permissions:
8+
contents: read
9+
id-token: write
10+
pull-requests: write
11+
12+
jobs:
13+
template_validation_job:
14+
runs-on: ubuntu-latest
15+
name: azd template validation
16+
environment: production
17+
steps:
18+
- uses: actions/checkout@v6
19+
20+
- name: Set timestamp
21+
run: echo "HHMM=$(date -u +'%H%M')" >> $GITHUB_ENV
22+
23+
- uses: microsoft/template-validation-action@v0.4.3
24+
with:
25+
validateAzd: ${{ vars.TEMPLATE_VALIDATE_AZD }}
26+
validateTests: ${{ vars.TEMPLATE_VALIDATE_TESTS }}
27+
useDevContainer: ${{ vars.TEMPLATE_USE_DEV_CONTAINER }}
28+
id: validation
29+
env:
30+
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
31+
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
32+
AZURE_SUBSCRIPTION_ID: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
33+
AZURE_ENV_NAME: azd-${{ vars.AZURE_ENV_NAME }}-${{ env.HHMM }}
34+
AZURE_LOCATION: ${{ vars.AZURE_LOCATION }}
35+
AZURE_ENV_AI_SERVICE_LOCATION: ${{ vars.AZURE_ENV_AI_SERVICE_LOCATION || 'eastus2' }}
36+
USE_CASE: ${{ vars.USE_CASE || 'telecom' }}
37+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
38+
AZURE_DEV_COLLECT_TELEMETRY: ${{ vars.AZURE_DEV_COLLECT_TELEMETRY }}
39+
40+
41+
- name: print result
42+
run: cat ${{ steps.validation.outputs.resultFile }}

.github/workflows/azure-dev-validation.yml

Lines changed: 0 additions & 43 deletions
This file was deleted.

.github/workflows/azure-dev.yml

Lines changed: 40 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,58 @@
1-
name: Deploy to Azure
1+
name: Azure Dev Deploy
22

33
on:
44
workflow_dispatch:
5-
# push:
6-
# branches:
7-
# - main
85

9-
# Set up permissions for deploying with secretless Azure federated credentials
10-
# https://learn.microsoft.com/en-us/azure/developer/github/connect-from-azure?tabs=azure-portal%2Clinux#set-up-azure-login-with-openid-connect-authentication
116
permissions:
12-
id-token: write
137
contents: read
8+
id-token: write
149

1510
jobs:
16-
build:
11+
deploy:
1712
runs-on: ubuntu-latest
1813
environment: production
1914
env:
20-
AZURE_CLIENT_ID: ${{ vars.AZURE_CLIENT_ID }}
21-
AZURE_TENANT_ID: ${{ vars.AZURE_TENANT_ID }}
22-
AZURE_SUBSCRIPTION_ID: ${{ vars.AZURE_SUBSCRIPTION_ID }}
23-
AZURE_ENV_NAME: ${{ vars.AZURE_ENV_NAME }}
15+
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
16+
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
17+
AZURE_SUBSCRIPTION_ID: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
2418
AZURE_LOCATION: ${{ vars.AZURE_LOCATION }}
25-
AZURE_ENV_OPENAI_LOCATION: ${{ vars.AZURE_ENV_OPENAI_LOCATION || 'eastus2' }}
26-
AZURE_ENV_USE_CASE: ${{ vars.AZURE_ENV_USE_CASE || 'telecom' }}
19+
AZURE_ENV_AI_SERVICE_LOCATION: ${{ vars.AZURE_ENV_AI_SERVICE_LOCATION || 'eastus2' }}
20+
USE_CASE: ${{ vars.USE_CASE || 'telecom' }}
2721
AZURE_DEV_COLLECT_TELEMETRY: ${{ vars.AZURE_DEV_COLLECT_TELEMETRY }}
2822
steps:
29-
- name: Checkout
30-
uses: actions/checkout@v6
23+
- name: Checkout Code
24+
uses: actions/checkout@v4
25+
26+
- name: Set timestamp and env name
27+
run: |
28+
HHMM=$(date -u +'%H%M')
29+
echo "AZURE_ENV_NAME=azd-${{ vars.AZURE_ENV_NAME }}-${HHMM}" >> $GITHUB_ENV
3130
3231
- name: Install azd
33-
uses: Azure/setup-azd@v2.0.0
32+
uses: Azure/setup-azd@v2
33+
34+
- name: Login to Azure
35+
uses: azure/login@v2
36+
with:
37+
client-id: ${{ secrets.AZURE_CLIENT_ID }}
38+
tenant-id: ${{ secrets.AZURE_TENANT_ID }}
39+
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
40+
41+
- name: Login to AZD
42+
shell: bash
43+
run: |
44+
azd auth login \
45+
--client-id "$AZURE_CLIENT_ID" \
46+
--federated-credential-provider "github" \
47+
--tenant-id "$AZURE_TENANT_ID"
3448
35-
- name: Log in with Azure (Federated Credentials)
49+
- name: Provision and Deploy
50+
shell: bash
3651
run: |
37-
azd auth login `
38-
--client-id "$Env:AZURE_CLIENT_ID" `
39-
--federated-credential-provider "github" `
40-
--tenant-id "$Env:AZURE_TENANT_ID"
41-
shell: pwsh
42-
43-
- name: Provision Infrastructure
44-
run: azd provision --no-prompt
45-
env:
46-
AZD_INITIAL_ENVIRONMENT_CONFIG: ${{ secrets.AZD_INITIAL_ENVIRONMENT_CONFIG }}
47-
48-
- name: Deploy Application
49-
run: azd deploy --no-prompt
52+
if ! azd env select "$AZURE_ENV_NAME"; then
53+
azd env new "$AZURE_ENV_NAME" --subscription "$AZURE_SUBSCRIPTION_ID" --location "$AZURE_LOCATION" --no-prompt
54+
fi
55+
azd config set defaults.subscription "$AZURE_SUBSCRIPTION_ID"
56+
azd env set AZURE_ENV_AI_SERVICE_LOCATION="$AZURE_ENV_AI_SERVICE_LOCATION"
57+
azd env set USE_CASE="$USE_CASE"
58+
azd up --no-prompt

.github/workflows/bicep_deploy.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@ on:
33
push:
44
branches:
55
- ckm-v2
6+
paths:
7+
- 'infra/**/*.bicep'
8+
- 'infra/**/*.json'
9+
- 'infra/scripts/**'
10+
- '.github/workflows/bicep_deploy.yml'
611

712
permissions:
813
contents: read

.github/workflows/deploy-KMGeneric.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ jobs:
130130
az deployment group create \
131131
--resource-group ${{ env.RESOURCE_GROUP_NAME }} \
132132
--template-file infra/main.bicep \
133-
--parameters solutionName=${{env.SOLUTION_PREFIX}} location="${{ env.AZURE_LOCATION }}" contentUnderstandingLocation="swedencentral" secondaryLocation="${{ env.AZURE_LOCATION }}" gptDeploymentCapacity=150 aiServiceLocation="${{ env.AZURE_LOCATION }}" createdBy="Pipeline" tags="{'Purpose':'Deploying and Cleaning Up Resources for Validation','CreatedDate':'$current_date'}"
133+
--parameters solutionName=${{env.SOLUTION_PREFIX}} location="${{ env.AZURE_LOCATION }}" secondaryLocation="${{ env.AZURE_LOCATION }}" gptDeploymentCapacity=150 aiServiceLocation="${{ env.AZURE_LOCATION }}" createdBy="Pipeline" tags="{'Purpose':'Deploying and Cleaning Up Resources for Validation','CreatedDate':'$current_date'}"
134134
135135
136136

.github/workflows/deploy-orchestrator.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,12 @@ on:
4242
required: false
4343
default: 'GoldenPath-Testing'
4444
type: string
45-
azure_env_log_analytics_workspace_id:
45+
azure_env_existing_log_analytics_workspace_rid:
4646
description: 'Log Analytics Workspace ID (Optional)'
4747
required: false
4848
default: ''
4949
type: string
50-
azure_existing_ai_project_resource_id:
50+
azure_existing_aiproject_resource_id:
5151
description: 'AI Project Resource ID (Optional)'
5252
required: false
5353
default: ''
@@ -57,7 +57,7 @@ on:
5757
required: false
5858
default: ''
5959
type: string
60-
azure_env_use_case:
60+
use_case:
6161
description: 'Azure Environment Use Case (telecom or IT_helpdesk)'
6262
required: false
6363
default: 'telecom'
@@ -91,9 +91,9 @@ jobs:
9191
exp: ${{ inputs.exp }}
9292
build_docker_image: ${{ inputs.build_docker_image }}
9393
existing_webapp_url: ${{ inputs.existing_webapp_url }}
94-
azure_env_log_analytics_workspace_id: ${{ inputs.azure_env_log_analytics_workspace_id }}
95-
azure_existing_ai_project_resource_id: ${{ inputs.azure_existing_ai_project_resource_id }}
96-
azure_env_use_case: ${{ inputs.azure_env_use_case }}
94+
azure_env_existing_log_analytics_workspace_rid: ${{ inputs.azure_env_existing_log_analytics_workspace_rid }}
95+
azure_existing_aiproject_resource_id: ${{ inputs.azure_existing_aiproject_resource_id }}
96+
use_case: ${{ inputs.use_case }}
9797
docker_image_tag: ${{ needs.docker-build.outputs.IMAGE_TAG }}
9898
run_e2e_tests: ${{ inputs.run_e2e_tests }}
9999
cleanup_resources: ${{ inputs.cleanup_resources }}
@@ -107,7 +107,7 @@ jobs:
107107
KMGENERIC_URL: ${{ needs.deploy.outputs.WEB_APP_URL || inputs.existing_webapp_url }}
108108
KMGENERIC_URL_API: ${{ needs.deploy.outputs.API_APP_URL || inputs.existing_webapp_url }}
109109
TEST_SUITE: ${{ inputs.trigger_type == 'workflow_dispatch' && inputs.run_e2e_tests || 'GoldenPath-Testing' }}
110-
AZURE_ENV_USE_CASE: ${{ inputs.azure_env_use_case }}
110+
USE_CASE: ${{ inputs.use_case }}
111111
secrets: inherit
112112

113113
cleanup-deployment:
@@ -121,7 +121,7 @@ jobs:
121121
existing_webapp_url: ${{ inputs.existing_webapp_url }}
122122
resource_group_name: ${{ needs.deploy.outputs.RESOURCE_GROUP_NAME }}
123123
azure_location: ${{ needs.deploy.outputs.AZURE_LOCATION }}
124-
azure_env_openai_location: ${{ needs.deploy.outputs.AZURE_ENV_OPENAI_LOCATION }}
124+
azure_env_ai_service_location: ${{ needs.deploy.outputs.AZURE_ENV_AI_SERVICE_LOCATION }}
125125
env_name: ${{ needs.deploy.outputs.ENV_NAME }}
126126
image_tag: ${{ needs.deploy.outputs.IMAGE_TAG }}
127127
secrets: inherit

0 commit comments

Comments
 (0)