Skip to content

Commit ff5d7df

Browse files
Merge branch 'dev-v4' into dependabotchanges
2 parents 0dcee3e + 55c24cd commit ff5d7df

607 files changed

Lines changed: 140692 additions & 9762 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: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# Run when commits are pushed to mainline branch (main or master)
2+
# Set this to the mainline branch you are using
3+
trigger:
4+
- main
5+
6+
# Azure Pipelines workflow to deploy to Azure using azd
7+
# To configure required secrets and service connection for connecting to Azure, simply run `azd pipeline config --provider azdo`
8+
# Task "Install azd" needs to install setup-azd extension for azdo - https://marketplace.visualstudio.com/items?itemName=ms-azuretools.azd
9+
# See below for alternative task to install azd if you can't install above task in your organization
10+
11+
pool:
12+
vmImage: ubuntu-latest
13+
14+
steps:
15+
- task: setup-azd@0
16+
displayName: Install azd
17+
18+
# If you can't install above task in your organization, you can comment it and uncomment below task to install azd
19+
# - task: Bash@3
20+
# displayName: Install azd
21+
# inputs:
22+
# targetType: 'inline'
23+
# script: |
24+
# curl -fsSL https://aka.ms/install-azd.sh | bash
25+
26+
# azd delegate auth to az to use service connection with AzureCLI@2
27+
- pwsh: |
28+
azd config set auth.useAzCliAuth "true"
29+
displayName: Configure AZD to Use AZ CLI Authentication.
30+
31+
- task: AzureCLI@2
32+
displayName: Provision Infrastructure
33+
inputs:
34+
azureSubscription: azconnection
35+
scriptType: bash
36+
scriptLocation: inlineScript
37+
inlineScript: |
38+
azd provision --no-prompt
39+
env:
40+
41+
AZURE_SUBSCRIPTION_ID: $(AZURE_SUBSCRIPTION_ID)
42+
AZURE_ENV_NAME: $(AZURE_ENV_NAME)
43+
AZURE_LOCATION: $(AZURE_LOCATION)
44+
# Project specific environment variables
45+
# AZURE_RESOURCE_GROUP: $(AZURE_RESOURCE_GROUP)
46+
# AZURE_AIHUB_NAME: $(AZURE_AIHUB_NAME)
47+
# AZURE_AIPROJECT_NAME: $(AZURE_AIPROJECT_NAME)
48+
# AZURE_AISERVICES_NAME: $(AZURE_AISERVICES_NAME)
49+
# AZURE_SEARCH_SERVICE_NAME: $(AZURE_SEARCH_SERVICE_NAME)
50+
# AZURE_APPLICATION_INSIGHTS_NAME: $(AZURE_APPLICATION_INSIGHTS_NAME)
51+
# AZURE_CONTAINER_REGISTRY_NAME: $(AZURE_CONTAINER_REGISTRY_NAME)
52+
# AZURE_KEYVAULT_NAME: $(AZURE_KEYVAULT_NAME)
53+
# AZURE_STORAGE_ACCOUNT_NAME: $(AZURE_STORAGE_ACCOUNT_NAME)
54+
# AZURE_LOG_ANALYTICS_WORKSPACE_NAME: $(AZURE_LOG_ANALYTICS_WORKSPACE_NAME)
55+
# USE_CONTAINER_REGISTRY: $(USE_CONTAINER_REGISTRY)
56+
# USE_APPLICATION_INSIGHTS: $(USE_APPLICATION_INSIGHTS)
57+
# USE_SEARCH_SERVICE: $(USE_SEARCH_SERVICE)
58+
# AZURE_AI_CHAT_DEPLOYMENT_NAME: $(AZURE_AI_CHAT_DEPLOYMENT_NAME)
59+
# AZURE_AI_CHAT_DEPLOYMENT_SKU: $(AZURE_AI_CHAT_DEPLOYMENT_SKU)
60+
# AZURE_AI_CHAT_DEPLOYMENT_CAPACITY: $(AZURE_AI_CHAT_DEPLOYMENT_CAPACITY)
61+
# AZURE_AI_CHAT_MODEL_FORMAT: $(AZURE_AI_CHAT_MODEL_FORMAT)
62+
# AZURE_AI_CHAT_MODEL_NAME: $(AZURE_AI_CHAT_MODEL)
63+
# AZURE_AI_CHAT_MODEL_VERSION: $(AZURE_AI_CHAT_MODEL_VERSION)
64+
# AZURE_AI_EMBED_DEPLOYMENT_NAME: $(AZURE_AI_EMBED_DEPLOYMENT_NAME)
65+
# AZURE_AI_EMBED_DEPLOYMENT_SKU: $(AZURE_AI_EMBED_DEPLOYMENT_SKU)
66+
# AZURE_AI_EMBED_DEPLOYMENT_CAPACITY: $(AZURE_AI_EMBED_DEPLOYMENT_CAPACITY)
67+
# AZURE_AI_EMBED_MODEL_FORMAT: $(AZURE_AI_EMBED_MODEL_FORMAT)
68+
# AZURE_AI_EMBED_MODEL_NAME: $(AZURE_AI_EMBED_MODEL_NAME)
69+
# AZURE_AI_EMBED_MODEL_VERSION: $(AZURE_AI_EMBED_MODEL_VERSION)
70+
# AZURE_EXISTING_AIPROJECT_CONNECTION_STRING: $(AZURE_EXISTING_AIPROJECT_CONNECTION_STRING)
71+
- task: AzureCLI@2
72+
displayName: Deploy Application
73+
inputs:
74+
azureSubscription: azconnection
75+
scriptType: bash
76+
scriptLocation: inlineScript
77+
inlineScript: |
78+
azd deploy --no-prompt
79+
env:
80+
AZURE_SUBSCRIPTION_ID: $(AZURE_SUBSCRIPTION_ID)
81+
AZURE_ENV_NAME: $(AZURE_ENV_NAME)
82+
AZURE_LOCATION: $(AZURE_LOCATION)

.coveragerc

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
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+
15+
[paths]
16+
source =
17+
src/backend
18+
*/site-packages
19+
20+
[report]
21+
exclude_lines =
22+
pragma: no cover
23+
def __repr__
24+
raise AssertionError
25+
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: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
{
2+
"name": "Multi Agent Custom Automation Engine Solution Accelerator",
3+
"build": {
4+
"dockerfile": "Dockerfile"
5+
},
6+
"features": {
7+
"ghcr.io/devcontainers/features/docker-in-docker:2": {"version": "latest"},
8+
"ghcr.io/azure/azure-dev/azd:latest": {},
9+
"ghcr.io/devcontainers/features/node:1": {},
10+
"ghcr.io/devcontainers/features/azure-cli:1": {},
11+
"ghcr.io/jsburckhardt/devcontainer-features/uv:1": {"shellautocompletion": true,
12+
"version": "latest"}
13+
},
14+
"customizations": {
15+
"vscode": {
16+
"extensions": [
17+
"dbaeumer.vscode-eslint",
18+
"esbenp.prettier-vscode",
19+
"GitHub.vscode-github-actions",
20+
"ms-azuretools.azure-dev",
21+
"ms-azuretools.vscode-azurefunctions",
22+
"ms-azuretools.vscode-bicep",
23+
"ms-azuretools.vscode-docker",
24+
"ms-vscode.js-debug",
25+
"ms-vscode.vscode-node-azure-pack",
26+
"charliermarsh.ruff",
27+
"exiasr.hadolint",
28+
"kevinrose.vsc-python-indent",
29+
"mosapride.zenkaku",
30+
"ms-python.python",
31+
"njpwerner.autodocstring",
32+
"redhat.vscode-yaml",
33+
"shardulm94.trailing-spaces",
34+
"tamasfe.even-better-toml",
35+
"yzhang.markdown-all-in-one",
36+
"ms-vscode.azure-account"
37+
]
38+
}
39+
},
40+
"postCreateCommand": "bash ./.devcontainer/setupEnv.sh",
41+
"containerEnv": {
42+
"DISPLAY": "dummy",
43+
"PYTHONUNBUFFERED": "True",
44+
"UV_LINK_MODE": "copy",
45+
"UV_PROJECT_ENVIRONMENT": "/home/vscode/.venv"
46+
},
47+
"remoteUser": "vscode",
48+
"hostRequirements": {
49+
"memory": "8gb"
50+
}
51+
}

.devcontainer/setupEnv.sh

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
#!/bin/sh
2+
3+
echo "Pull latest code for the current branch"
4+
git fetch
5+
git pull
6+
7+
set -e
8+
9+
echo "Setting up Backend..."
10+
cd ./src/backend
11+
uv sync --frozen
12+
cd ../../
13+
14+
echo "Setting up Frontend..."
15+
cd ./src/frontend
16+
npm install
17+
pip install -r requirements.txt
18+
cd ../../
19+
20+
echo "Setting up MCP..."
21+
cd ./src/mcp_server
22+
uv sync --frozen
23+
cd ../../
24+
25+
echo "Setup complete! 🎉"

.flake8

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
[flake8]
2+
max-line-length = 88
3+
extend-ignore = E501
4+
exclude =
5+
.venv,
6+
frontend,
7+
src/frontend,
8+
src/backend/tests,
9+
*.tsx,
10+
*.ts,
11+
*.jsx,
12+
*.js
13+
ignore = E203, W503, G004, G200, E402
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
# Each line is a file pattern followed by one or more owners.
33

44
# These owners will be the default owners for everything in the repo.
5-
* @Avijit-Microsoft @Roopan-Microsoft @Prajwal-Microsoft @marktayl1 @Fr4nc3
5+
* @Avijit-Microsoft @Roopan-Microsoft @Prajwal-Microsoft @marktayl1 @Fr4nc3 @Vinay-Microsoft @aniaroramsft @toherman-msft @nchandhi @dgp10801

.github/CODE_OF_CONDUCT.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Microsoft Open Source Code of Conduct
2+
3+
This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
4+
5+
Resources:
6+
7+
- [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/)
8+
- [Microsoft Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/)
9+
- Contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with questions or concerns
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: bug
6+
assignees: ''
7+
8+
---
9+
10+
# Describe the bug
11+
A clear and concise description of what the bug is.
12+
13+
# Expected behavior
14+
A clear and concise description of what you expected to happen.
15+
16+
# How does this bug make you feel?
17+
_Share a gif from [giphy](https://giphy.com/) to tells us how you'd feel_
18+
19+
---
20+
21+
# Debugging information
22+
23+
## Steps to reproduce
24+
Steps to reproduce the behavior:
25+
1. Go to '...'
26+
2. Click on '....'
27+
3. Scroll down to '....'
28+
4. See error
29+
30+
## Screenshots
31+
If applicable, add screenshots to help explain your problem.
32+
33+
## Logs
34+
35+
If applicable, add logs to help the engineer debug the problem.
36+
37+
---
38+
39+
# Tasks
40+
41+
_To be filled in by the engineer picking up the issue_
42+
43+
- [ ] Task 1
44+
- [ ] Task 2
45+
- [ ] ...
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: enhancement
6+
assignees: ''
7+
8+
---
9+
10+
# Motivation
11+
12+
A clear and concise description of why this feature would be useful and the value it would bring.
13+
Explain any alternatives considered and why they are not sufficient.
14+
15+
# How would you feel if this feature request was implemented?
16+
17+
_Share a gif from [giphy](https://giphy.com/) to tells us how you'd feel. Format: ![alt_text](https://media.giphy.com/media/xxx/giphy.gif)_
18+
19+
# Requirements
20+
21+
A list of requirements to consider this feature delivered
22+
- Requirement 1
23+
- Requirement 2
24+
- ...
25+
26+
# Tasks
27+
28+
_To be filled in by the engineer picking up the issue_
29+
30+
- [ ] Task 1
31+
- [ ] Task 2
32+
- [ ] ...

0 commit comments

Comments
 (0)