Skip to content

Commit 5d6aa39

Browse files
Merge pull request #984 from microsoft/main
chore: Down merge from main
2 parents 0332771 + bcec9db commit 5d6aa39

323 files changed

Lines changed: 84888 additions & 15965 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.

.azdo/pipelines/azure-dev.yml

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,20 @@
11
# Run when commits are pushed to mainline branch (main or master)
22
# Set this to the mainline branch you are using
33
trigger:
4-
- main
4+
branches:
5+
include:
6+
- main
7+
paths:
8+
include:
9+
- src/*
10+
- infra/*
11+
- azure.yaml
12+
- azure_custom.yaml
13+
- .azdo/pipelines/azure-dev.yml
14+
exclude:
15+
- '*.md'
16+
- docs/*
17+
- data/*
518

619
# Azure Pipelines workflow to deploy to Azure using azd
720
# To configure required secrets and service connection for connecting to Azure, simply run `azd pipeline config --provider azdo`

.coveragerc

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
[run]
2+
source = .
3+
omit =
4+
src/mcp_server/*
5+
src/backend/tests/*
6+
src/tests/mcp_server/*
7+
src/tests/agents/*
8+
src/**/__init__.py
9+
tests/e2e-test/*
10+
*/venv/*
11+
*/env/*
12+
*/.pytest_cache/*
13+
*/node_modules/*
14+
src/backend/v4/api/router.py
15+
16+
[paths]
17+
source =
18+
src/backend
19+
*/site-packages
20+
21+
[report]
22+
exclude_lines =
23+
pragma: no cover
24+
def __repr__
25+
raise AssertionError
26+
raise NotImplementedError

.devcontainer/Dockerfile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
FROM mcr.microsoft.com/devcontainers/python:3.11-bullseye
2+
3+
# Remove Yarn repository to avoid GPG key expiration issue
4+
RUN rm -f /etc/apt/sources.list.d/yarn.list

.devcontainer/devcontainer.json

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,17 @@
11
{
22
"name": "Multi Agent Custom Automation Engine Solution Accelerator",
3-
"image": "mcr.microsoft.com/devcontainers/python:3.11-bullseye",
3+
"build": {
4+
"dockerfile": "Dockerfile"
5+
},
46
"features": {
57
"ghcr.io/devcontainers/features/docker-in-docker:2": {"version": "latest"},
68
"ghcr.io/azure/azure-dev/azd:latest": {},
79
"ghcr.io/devcontainers/features/node:1": {},
8-
"ghcr.io/devcontainers/features/azure-cli:1": {},
10+
"ghcr.io/devcontainers/features/azure-cli:1": {
11+
"installBicep": true,
12+
"version": "latest",
13+
"bicepVersion": "latest"
14+
},
915
"ghcr.io/jsburckhardt/devcontainer-features/uv:1": {"shellautocompletion": true,
1016
"version": "latest"}
1117
},

.devcontainer/setupEnv.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@ set -e
88

99
echo "Setting up Backend..."
1010
cd ./src/backend
11-
uv sync --frozen
11+
uv sync --frozen --extra dev
1212
cd ../../
1313

1414
echo "Setting up Frontend..."
15-
cd ./src/frontend
15+
cd ./src/App
1616
npm install
1717
pip install -r requirements.txt
1818
cd ../../

.github/dependabot.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ updates:
3232
- "*"
3333

3434
- package-ecosystem: "pip"
35-
directory: "/src/frontend"
35+
directory: "/src/App"
3636
schedule:
3737
interval: "monthly"
3838
commit-message:

.github/workflows/agnext-biab-02-containerimage.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
packages: write
1717
steps:
1818
- name: Checkout repository
19-
uses: actions/checkout@v4
19+
uses: actions/checkout@v6
2020
# - name: Download deps
2121
# run: |
2222
# curl -fsSL ${{ vars.AUTOGEN_WHL_URL }} -o agnext-biab-02/autogen_core-0.3.dev0-py3-none-any.whl
@@ -28,14 +28,14 @@ jobs:
2828
password: ${{ secrets.GITHUB_TOKEN }}
2929
- name: Extract metadata (tags, labels) for Docker
3030
id: meta
31-
uses: docker/metadata-action@v5
31+
uses: docker/metadata-action@v6
3232
with:
3333
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
3434
tags: |
3535
type=ref,event=branch
3636
type=sha
3737
- name: Build and push Docker image
38-
uses: docker/build-push-action@v6
38+
uses: docker/build-push-action@v7
3939
with:
4040
context: agnext-biab-02/
4141
file: agnext-biab-02/Dockerfile
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
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:
14+
runs-on: ubuntu-latest
15+
name: azd template validation
16+
environment: production
17+
steps:
18+
- uses: actions/checkout@v4
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_AI_DEPLOYMENT_LOCATION }}
36+
AZURE_ENV_GPT_MODEL_CAPACITY: 1
37+
AZURE_ENV_MODEL_4_1_CAPACITY: 1 # keep low to avoid potential quota issues
38+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
39+
40+
- name: print result
41+
run: cat ${{ steps.validation.outputs.resultFile }}

.github/workflows/azure-dev.yml

Lines changed: 48 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,59 @@
1-
name: Azure Template Validation
1+
name: Azure Dev Deploy
2+
23
on:
34
workflow_dispatch:
45

56
permissions:
67
contents: read
78
id-token: write
8-
pull-requests: write
99

1010
jobs:
11-
template_validation_job:
11+
deploy:
1212
runs-on: ubuntu-latest
1313
environment: production
14-
name: template validation
14+
env:
15+
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
16+
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
17+
AZURE_SUBSCRIPTION_ID: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
18+
AZURE_LOCATION: ${{ vars.AZURE_LOCATION }}
19+
AZURE_ENV_AI_SERVICE_LOCATION: ${{ vars.AZURE_AI_DEPLOYMENT_LOCATION }}
20+
AZURE_ENV_GPT_MODEL_CAPACITY: 1
21+
AZURE_ENV_MODEL_4_1_CAPACITY: 1
22+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
23+
AZURE_DEV_COLLECT_TELEMETRY: ${{ vars.AZURE_DEV_COLLECT_TELEMETRY }}
1524
steps:
16-
# Step 1: Checkout the code from your repository
17-
- name: Checkout code
18-
uses: actions/checkout@v4
19-
# Step 2: Validate the Azure template using microsoft/template-validation-action
20-
- name: Validate Azure Template
21-
uses: microsoft/template-validation-action@bae4895d0a8abd4f0d5aad68ae8647b3027f4c91
22-
with:
23-
validateAzd: true
24-
useDevContainer: false
25-
id: validation
26-
env:
27-
AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }}
28-
AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
29-
AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }}
30-
AZURE_SUBSCRIPTION_ID: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
31-
AZURE_ENV_NAME: ${{ secrets.AZURE_ENV_NAME }}
32-
AZURE_LOCATION: ${{ secrets.AZURE_LOCATION }}
33-
AZURE_ENV_OPENAI_LOCATION : ${{ secrets.AZURE_AI_DEPLOYMENT_LOCATION }}
34-
AZURE_ENV_MODEL_CAPACITY: 1
35-
AZURE_ENV_MODEL_4_1_CAPACITY: 1
36-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
37-
AZURE_DEV_COLLECT_TELEMETRY: ${{ vars.AZURE_DEV_COLLECT_TELEMETRY }}
38-
39-
# Step 3: Print the result of the validation
40-
- name: print result
41-
run: cat ${{ steps.validation.outputs.resultFile }}
25+
- name: Checkout Code
26+
uses: actions/checkout@v4
27+
28+
- name: Set timestamp and env name
29+
run: |
30+
HHMM=$(date -u +'%H%M')
31+
echo "AZURE_ENV_NAME=azd-${{ vars.AZURE_ENV_NAME }}-${HHMM}" >> $GITHUB_ENV
32+
33+
- name: Install azd
34+
uses: Azure/setup-azd@v2
35+
36+
- name: Login to Azure
37+
uses: azure/login@v2
38+
with:
39+
client-id: ${{ secrets.AZURE_CLIENT_ID }}
40+
tenant-id: ${{ secrets.AZURE_TENANT_ID }}
41+
subscription-id: ${{ secrets.AZURE_SUBSCRIPTION_ID }}
42+
43+
- name: Login to AZD
44+
shell: bash
45+
run: |
46+
azd auth login \
47+
--client-id "$AZURE_CLIENT_ID" \
48+
--federated-credential-provider "github" \
49+
--tenant-id "$AZURE_TENANT_ID"
50+
51+
- name: Provision and Deploy
52+
shell: bash
53+
run: |
54+
if ! azd env select "$AZURE_ENV_NAME"; then
55+
azd env new "$AZURE_ENV_NAME" --subscription "$AZURE_SUBSCRIPTION_ID" --location "$AZURE_LOCATION" --no-prompt
56+
fi
57+
azd config set defaults.subscription "$AZURE_SUBSCRIPTION_ID"
58+
azd env set AZURE_ENV_AI_SERVICE_LOCATION="$AZURE_ENV_AI_SERVICE_LOCATION"
59+
azd up --no-prompt

.github/workflows/broken-links-checker.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,15 @@ jobs:
1616

1717
steps:
1818
- name: Checkout Repo
19-
uses: actions/checkout@v4
19+
uses: actions/checkout@v6
2020
with:
2121
fetch-depth: 0
2222

2323
# For PR : Get only changed markdown files
2424
- name: Get changed markdown files (PR only)
2525
id: changed-markdown-files
2626
if: github.event_name == 'pull_request'
27-
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46
27+
uses: tj-actions/changed-files@22103cc46bda19c2b464ffe86db46df6922fd323 # v47.0.5
2828
with:
2929
files: |
3030
**/*.md
@@ -34,10 +34,10 @@ jobs:
3434
- name: Check Broken Links in Changed Markdown Files
3535
id: lychee-check-pr
3636
if: github.event_name == 'pull_request' && steps.changed-markdown-files.outputs.any_changed == 'true'
37-
uses: lycheeverse/lychee-action@v2.4.1
37+
uses: lycheeverse/lychee-action@v2.8.0
3838
with:
3939
args: >
40-
--verbose --exclude-mail --no-progress --exclude ^https?://
40+
--verbose --no-progress --exclude ^https?://
4141
${{ steps.changed-markdown-files.outputs.all_changed_files }}
4242
failIfEmpty: false
4343
env:
@@ -47,10 +47,10 @@ jobs:
4747
- name: Check Broken Links in All Markdown Files in Entire Repo (Manual Trigger)
4848
id: lychee-check-manual
4949
if: github.event_name == 'workflow_dispatch'
50-
uses: lycheeverse/lychee-action@v2.4.1
50+
uses: lycheeverse/lychee-action@v2.8.0
5151
with:
5252
args: >
53-
--verbose --exclude-mail --no-progress --exclude ^https?://
53+
--verbose --no-progress --exclude ^https?://
5454
'**/*.md'
5555
failIfEmpty: false
5656
env:

0 commit comments

Comments
 (0)