Skip to content

Commit 8ca5c7b

Browse files
Merge branch 'main' into demo
2 parents ccd781d + d6c3dad commit 8ca5c7b

File tree

153 files changed

+40033
-12158
lines changed

Some content is hidden

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

153 files changed

+40033
-12158
lines changed

.dockerignore

Lines changed: 162 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,162 @@
1+
# Include any files or directories that you don't want to be copied to your
2+
# container here (e.g., local build artifacts, temporary files, etc.).
3+
#
4+
# For more help, visit the .dockerignore file reference guide at
5+
# https://docs.docker.com/engine/reference/builder/#dockerignore-file
6+
7+
**/.DS_Store
8+
**/__pycache__
9+
**/.venv
10+
**/.classpath
11+
**/.dockerignore
12+
**/.env
13+
**/.git
14+
**/.gitignore
15+
**/.project
16+
**/.settings
17+
**/.toolstarget
18+
**/.vs
19+
**/.vscode
20+
**/*.*proj.user
21+
**/*.dbmdl
22+
**/*.jfm
23+
**/bin
24+
**/charts
25+
**/docker-compose*
26+
**/compose*
27+
**/Dockerfile*
28+
**/*.Dockerfile
29+
**/node_modules
30+
**/npm-debug.log
31+
**/obj
32+
**/secrets.dev.yaml
33+
**/values.dev.yaml
34+
LICENSE
35+
README.md
36+
37+
# Byte-compiled / optimized / DLL files
38+
__pycache__/
39+
*.py[cod]
40+
*$py.class
41+
42+
# C extensions
43+
*.so
44+
45+
# Distribution / packaging
46+
.Python
47+
build/
48+
develop-eggs/
49+
dist/
50+
downloads/
51+
eggs/
52+
lib/
53+
lib64/
54+
parts/
55+
sdist/
56+
var/
57+
*.egg-info/
58+
.installed.cfg
59+
*.egg
60+
61+
# PyInstaller
62+
# Usually these files are written by a python script from a template
63+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
64+
*.manifest
65+
*.spec
66+
67+
# Installer logs
68+
pip-log.txt
69+
pip-delete-this-directory.txt
70+
71+
# Unit test / coverage reports
72+
htmlcov/
73+
.tox/
74+
.nox/
75+
.coverage
76+
.coverage.*
77+
.cache
78+
nosetests.xml
79+
coverage.xml
80+
*.cover
81+
*.log
82+
83+
# Translations
84+
*.mo
85+
*.pot
86+
87+
# Django stuff:
88+
*.log
89+
local_settings.py
90+
db.sqlite3
91+
92+
# Flask stuff:
93+
instance/
94+
.webassets-cache
95+
96+
# Scrapy stuff:
97+
.scrapy
98+
99+
# Sphinx documentation
100+
docs/_build/
101+
102+
# PyBuilder
103+
target/
104+
105+
# Jupyter Notebook
106+
.ipynb_checkpoints
107+
108+
# IPython
109+
profile_default/
110+
ipython_config.py
111+
112+
# pyenv
113+
.python-version
114+
115+
# celery beat schedule file
116+
celerybeat-schedule
117+
118+
# SageMath parsed files
119+
*.sage.py
120+
121+
# Environments
122+
.env
123+
.venv
124+
env/
125+
venv/
126+
ENV/
127+
env.bak/
128+
venv.bak/
129+
130+
# Spyder project settings
131+
.spyderproject
132+
.spyproject
133+
134+
# Rope project settings
135+
.ropeproject
136+
137+
# mkdocs documentation
138+
/site
139+
140+
# mypy
141+
.mypy_cache/
142+
.dmypy.json
143+
dmypy.json
144+
145+
# Pyre type checker
146+
.pyre/
147+
148+
# pytype static type analyzer
149+
.pytype/
150+
151+
# Cython debug symbols
152+
cython_debug/
153+
154+
# VS Code
155+
.vscode/
156+
157+
# Ignore other unnecessary files
158+
*.bak
159+
*.swp
160+
.DS_Store
161+
*.pdb
162+
*.sqlite3

.env.sample

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@ AZURE_SEARCH_FIELDS_TAG=tag
1414
AZURE_SEARCH_FIELDS_METADATA=metadata
1515
AZURE_SEARCH_FILENAME_COLUMN=filepath
1616
AZURE_SEARCH_TITLE_COLUMN=title
17+
AZURE_SEARCH_SOURCE_COLUMN=source
18+
AZURE_SEARCH_TEXT_COLUMN=text
19+
AZURE_SEARCH_LAYOUT_TEXT_COLUMN=layoutText
1720
AZURE_SEARCH_URL_COLUMN=url
1821
AZURE_SEARCH_CONVERSATIONS_LOG_INDEX=conversations-log
1922
AZURE_SEARCH_USE_INTEGRATED_VECTORIZATION=false
@@ -60,10 +63,13 @@ AZURE_SPEECH_SERVICE_REGION=
6063
AZURE_AUTH_TYPE=keys
6164
USE_KEY_VAULT=true
6265
AZURE_KEY_VAULT_ENDPOINT=
66+
# Application environment (e.g., dev, prod)
67+
APP_ENV="dev"
6368
# Chat conversation type to decide between custom or byod (bring your own data) conversation type
6469
CONVERSATION_FLOW=
6570
# Chat History CosmosDB Integration Settings
6671
AZURE_COSMOSDB_ACCOUNT_NAME=
72+
AZURE_COSMOSDB_ACCOUNT_KEY=
6773
AZURE_COSMOSDB_DATABASE_NAME=
6874
AZURE_COSMOSDB_CONVERSATIONS_CONTAINER_NAME=
6975
AZURE_COSMOSDB_ENABLE_FEEDBACK=

.github/CODEOWNERS

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 @Fr4nc3
5+
* @Avijit-Microsoft @Roopan-Microsoft @Prajwal-Microsoft @Fr4nc3 @Vinay-Microsoft @aniaroramsft

.github/dependabot.yml

Lines changed: 28 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,46 +3,63 @@
33
# Please see the documentation for all configuration options:
44
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
55
version: 2
6+
67
updates:
8+
# Grouped GitHub Actions updates
79
- package-ecosystem: "github-actions"
810
directory: "/"
911
schedule:
1012
interval: "monthly"
11-
1213
commit-message:
1314
prefix: "build"
1415
target-branch: "dependabotchanges"
16+
open-pull-requests-limit: 10
17+
groups:
18+
all-actions:
19+
patterns:
20+
- "*"
21+
22+
# Grouped Python dependencies
1523
- package-ecosystem: "pip"
1624
directory: "/"
1725
schedule:
1826
interval: "monthly"
19-
20-
2127
commit-message:
2228
prefix: "build"
29+
target-branch: "dependabotchanges"
30+
open-pull-requests-limit: 10
2331
groups:
2432
langchain:
2533
patterns:
2634
- "langchain*"
27-
open-pull-requests-limit: 100
28-
target-branch: "dependabotchanges"
35+
all-backend-deps:
36+
patterns:
37+
- "*"
38+
39+
# Grouped frontend npm dependencies (main app)
2940
- package-ecosystem: "npm"
3041
directory: "/code/frontend"
3142
schedule:
3243
interval: "monthly"
33-
34-
3544
commit-message:
3645
prefix: "build"
37-
open-pull-requests-limit: 100
3846
target-branch: "dependabotchanges"
47+
open-pull-requests-limit: 10
48+
groups:
49+
frontend-deps:
50+
patterns:
51+
- "*"
52+
53+
# Grouped frontend npm dependencies (UI tests)
3954
- package-ecosystem: "npm"
4055
directory: "/tests/integration/ui"
4156
schedule:
4257
interval: "monthly"
43-
44-
4558
commit-message:
4659
prefix: "build"
47-
open-pull-requests-limit: 100
4860
target-branch: "dependabotchanges"
61+
open-pull-requests-limit: 10
62+
groups:
63+
frontend-deps:
64+
patterns:
65+
- "*"
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: Broken Link Checker
2+
3+
on:
4+
pull_request:
5+
paths:
6+
- '**/*.md'
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
markdown-link-check:
14+
name: Check Markdown Broken Links
15+
runs-on: ubuntu-latest
16+
17+
steps:
18+
- name: Checkout Repo
19+
uses: actions/checkout@v4
20+
with:
21+
fetch-depth: 0
22+
23+
# For PR : Get only changed markdown files
24+
- name: Get changed markdown files (PR only)
25+
id: changed-markdown-files
26+
if: github.event_name == 'pull_request'
27+
uses: tj-actions/changed-files@ed68ef82c095e0d48ec87eccea555d944a631a4c # v46
28+
with:
29+
files: |
30+
**/*.md
31+
32+
33+
# For PR: Check broken links only in changed files
34+
- name: Check Broken Links in Changed Markdown Files
35+
id: lychee-check-pr
36+
if: github.event_name == 'pull_request' && steps.changed-markdown-files.outputs.any_changed == 'true'
37+
uses: lycheeverse/[email protected]
38+
with:
39+
args: >
40+
--verbose --exclude-mail --no-progress --exclude ^https?://
41+
${{ steps.changed-markdown-files.outputs.all_changed_files }}
42+
failIfEmpty: false
43+
env:
44+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
45+
46+
# For manual trigger: Check all markdown files in repo
47+
- name: Check Broken Links in All Markdown Files in Entire Repo (Manual Trigger)
48+
id: lychee-check-manual
49+
if: github.event_name == 'workflow_dispatch'
50+
uses: lycheeverse/[email protected]
51+
with:
52+
args: >
53+
--verbose --exclude-mail --no-progress --exclude ^https?://
54+
'**/*.md'
55+
failIfEmpty: false
56+
env:
57+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/build-docker-images.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,7 @@ jobs:
3232
dockerfile: docker/Frontend.Dockerfile
3333
uses: ./.github/workflows/build-docker.yml
3434
with:
35-
old_registry: ${{ github.ref_name == 'main' && 'fruoccopublic.azurecr.io' }}
3635
new_registry: 'cwydcontainerreg.azurecr.io'
37-
old_username: ${{ github.ref_name == 'main' && 'fruoccopublic' }}
3836
new_username: 'cwydcontainerreg'
3937
app_name: ${{ matrix.app_name }}
4038
dockerfile: ${{ matrix.dockerfile }}

.github/workflows/build-docker.yml

Lines changed: 1 addition & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,6 @@ name: Reusable Docker build and push workflow
33
on:
44
workflow_call:
55
inputs:
6-
old_registry:
7-
required: true
8-
type: string
9-
old_username:
10-
required: true
11-
type: string
126
new_registry:
137
required: true
148
type: string
@@ -37,15 +31,6 @@ jobs:
3731
- name: Checkout
3832
uses: actions/checkout@v4
3933

40-
# Login for 'main' branch to both registries
41-
- name: Docker Login to fruoccopublic (Main)
42-
if: ${{ inputs.push == true && github.ref_name == 'main' }}
43-
uses: docker/login-action@v3
44-
with:
45-
registry: ${{ inputs.old_registry }}
46-
username: ${{ inputs.old_username }}
47-
password: ${{ secrets.DOCKER_PASSWORD }}
48-
4934
- name: Docker Login to cwydcontainerreg (Main)
5035
if: ${{ inputs.push == true && github.ref_name == 'main' }}
5136
uses: docker/login-action@v3
@@ -56,7 +41,7 @@ jobs:
5641

5742
# Login for 'dev' and 'demo' branches to cwydcontainerreg only
5843
- name: Docker Login to cwydcontainerreg (Dev/Demo)
59-
if: ${{ inputs.push == true && (github.ref_name == 'dev' || github.ref_name == 'demo') }}
44+
if: ${{ inputs.push == true && (github.ref_name == 'dev' || github.ref_name == 'demo' || github.ref_name == 'dependabotchanges') }}
6045
uses: docker/login-action@v3
6146
with:
6247
registry: ${{ inputs.new_registry }}
@@ -70,18 +55,6 @@ jobs:
7055
id: date
7156
run: echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT
7257

73-
- name: Build Docker Image and optionally push (Old Registry)
74-
if: ${{ github.ref_name == 'main' }}
75-
uses: docker/build-push-action@v6
76-
with:
77-
context: .
78-
file: ${{ inputs.dockerfile }}
79-
push: ${{ inputs.push }}
80-
cache-from: type=registry,ref=${{ inputs.old_registry }}/${{ inputs.app_name }}:${{ github.ref_name == 'main' && 'latest' || github.head_ref || github.ref_name }}
81-
tags: |
82-
${{ inputs.old_registry }}/${{ inputs.app_name }}:${{ github.ref_name == 'main' && 'latest' || github.head_ref || 'default' }}
83-
${{ inputs.old_registry }}/${{ inputs.app_name }}:${{ steps.date.outputs.date }}_${{ github.run_number }}
84-
8558
- name: Build Docker Image and optionally push (New Registry)
8659
if: ${{ github.ref_name == 'main' || github.ref_name == 'dev' || github.ref_name == 'demo'|| github.ref_name == 'dependabotchanges' }}
8760
uses: docker/build-push-action@v6

0 commit comments

Comments
 (0)