-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
15 changed files
with
283 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
|
||
Microsoft Visual Studio Solution File, Format Version 12.00 | ||
# Visual Studio Version 17 | ||
VisualStudioVersion = 17.5.002.0 | ||
MinimumVisualStudioVersion = 10.0.40219.1 | ||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "AksChatBot", "src\AksChatBot.csproj", "{054E6CFD-3E6D-49F2-8E52-43E302056DC1}" | ||
EndProject | ||
Global | ||
GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||
Debug|Any CPU = Debug|Any CPU | ||
Release|Any CPU = Release|Any CPU | ||
EndGlobalSection | ||
GlobalSection(ProjectConfigurationPlatforms) = postSolution | ||
{054E6CFD-3E6D-49F2-8E52-43E302056DC1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
{054E6CFD-3E6D-49F2-8E52-43E302056DC1}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
{054E6CFD-3E6D-49F2-8E52-43E302056DC1}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
{054E6CFD-3E6D-49F2-8E52-43E302056DC1}.Release|Any CPU.Build.0 = Release|Any CPU | ||
EndGlobalSection | ||
GlobalSection(SolutionProperties) = preSolution | ||
HideSolutionNode = FALSE | ||
EndGlobalSection | ||
GlobalSection(ExtensibilityGlobals) = postSolution | ||
SolutionGuid = {03C59C30-345F-4D4B-923D-CC3E563B6A00} | ||
EndGlobalSection | ||
EndGlobal |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
name: gbb-aks-llm-chat-bot | ||
metadata: | ||
template: [email protected] | ||
services: | ||
api: | ||
project: ./src | ||
language: dotnet | ||
host: appservice |
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
metadata description = 'Updates app settings for an Azure App Service.' | ||
@description('The name of the app service resource within the current resource group scope') | ||
param name string | ||
|
||
@description('The app settings to be applied to the app service') | ||
@secure() | ||
param appSettings object | ||
|
||
resource appService 'Microsoft.Web/sites@2022-03-01' existing = { | ||
name: name | ||
} | ||
|
||
resource settings 'Microsoft.Web/sites/config@2022-03-01' = { | ||
name: 'appsettings' | ||
parent: appService | ||
properties: appSettings | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
metadata description = 'Creates an Azure App Service plan.' | ||
param name string | ||
param location string = resourceGroup().location | ||
param tags object = {} | ||
|
||
param kind string = '' | ||
param reserved bool = true | ||
param sku object | ||
|
||
resource appServicePlan 'Microsoft.Web/serverfarms@2022-03-01' = { | ||
name: name | ||
location: location | ||
tags: tags | ||
sku: sku | ||
kind: kind | ||
properties: { | ||
reserved: reserved | ||
} | ||
} | ||
|
||
output id string = appServicePlan.id | ||
output name string = appServicePlan.name |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,118 @@ | ||
metadata description = 'Creates an Azure App Service in an existing Azure App Service plan.' | ||
param name string | ||
param location string = resourceGroup().location | ||
param tags object = {} | ||
|
||
// Reference Properties | ||
param applicationInsightsName string = '' | ||
param appServicePlanId string | ||
param keyVaultName string = '' | ||
param managedIdentity bool = !empty(keyVaultName) | ||
|
||
// Runtime Properties | ||
@allowed([ | ||
'dotnet', 'dotnetcore', 'dotnet-isolated', 'node', 'python', 'java', 'powershell', 'custom' | ||
]) | ||
param runtimeName string | ||
param runtimeNameAndVersion string = '${runtimeName}|${runtimeVersion}' | ||
param runtimeVersion string | ||
|
||
// Microsoft.Web/sites Properties | ||
param kind string = 'app,linux' | ||
|
||
// Microsoft.Web/sites/config | ||
param allowedOrigins array = [] | ||
param alwaysOn bool = true | ||
param appCommandLine string = '' | ||
@secure() | ||
param appSettings object = {} | ||
param clientAffinityEnabled bool = false | ||
param enableOryxBuild bool = contains(kind, 'linux') | ||
param functionAppScaleLimit int = -1 | ||
param linuxFxVersion string = runtimeNameAndVersion | ||
param minimumElasticInstanceCount int = -1 | ||
param numberOfWorkers int = -1 | ||
param scmDoBuildDuringDeployment bool = false | ||
param use32BitWorkerProcess bool = false | ||
param ftpsState string = 'FtpsOnly' | ||
param healthCheckPath string = '' | ||
|
||
resource appService 'Microsoft.Web/sites@2022-03-01' = { | ||
name: name | ||
location: location | ||
tags: tags | ||
kind: kind | ||
properties: { | ||
serverFarmId: appServicePlanId | ||
siteConfig: { | ||
linuxFxVersion: linuxFxVersion | ||
alwaysOn: alwaysOn | ||
ftpsState: ftpsState | ||
minTlsVersion: '1.2' | ||
appCommandLine: appCommandLine | ||
numberOfWorkers: numberOfWorkers != -1 ? numberOfWorkers : null | ||
minimumElasticInstanceCount: minimumElasticInstanceCount != -1 ? minimumElasticInstanceCount : null | ||
use32BitWorkerProcess: use32BitWorkerProcess | ||
functionAppScaleLimit: functionAppScaleLimit != -1 ? functionAppScaleLimit : null | ||
healthCheckPath: healthCheckPath | ||
cors: { | ||
allowedOrigins: union([ 'https://portal.azure.com', 'https://ms.portal.azure.com' ], allowedOrigins) | ||
} | ||
} | ||
clientAffinityEnabled: clientAffinityEnabled | ||
httpsOnly: true | ||
} | ||
|
||
identity: { type: managedIdentity ? 'SystemAssigned' : 'None' } | ||
|
||
resource configLogs 'config' = { | ||
name: 'logs' | ||
properties: { | ||
applicationLogs: { fileSystem: { level: 'Verbose' } } | ||
detailedErrorMessages: { enabled: true } | ||
failedRequestsTracing: { enabled: true } | ||
httpLogs: { fileSystem: { enabled: true, retentionInDays: 1, retentionInMb: 35 } } | ||
} | ||
} | ||
|
||
resource basicPublishingCredentialsPoliciesFtp 'basicPublishingCredentialsPolicies' = { | ||
name: 'ftp' | ||
properties: { | ||
allow: false | ||
} | ||
} | ||
|
||
resource basicPublishingCredentialsPoliciesScm 'basicPublishingCredentialsPolicies' = { | ||
name: 'scm' | ||
properties: { | ||
allow: false | ||
} | ||
} | ||
} | ||
|
||
module config './app-service-app-settings.bicep' = if (!empty(appSettings)) { | ||
name: '${name}-appSettings' | ||
params: { | ||
name: appService.name | ||
appSettings: union(appSettings, | ||
{ | ||
SCM_DO_BUILD_DURING_DEPLOYMENT: string(scmDoBuildDuringDeployment) | ||
ENABLE_ORYX_BUILD: string(enableOryxBuild) | ||
}, | ||
runtimeName == 'python' && appCommandLine == '' ? { PYTHON_ENABLE_GUNICORN_MULTIWORKERS: 'true'} : {}, | ||
!empty(applicationInsightsName) ? { APPLICATIONINSIGHTS_CONNECTION_STRING: applicationInsights.properties.ConnectionString } : {}, | ||
!empty(keyVaultName) ? { AZURE_KEY_VAULT_ENDPOINT: keyVault.properties.vaultUri } : {}) | ||
} | ||
} | ||
|
||
resource keyVault 'Microsoft.KeyVault/vaults@2022-07-01' existing = if (!(empty(keyVaultName))) { | ||
name: keyVaultName | ||
} | ||
|
||
resource applicationInsights 'Microsoft.Insights/components@2020-02-02' existing = if (!empty(applicationInsightsName)) { | ||
name: applicationInsightsName | ||
} | ||
|
||
output identityPrincipalId string = managedIdentity ? appService.identity.principalId : '' | ||
output name string = appService.name | ||
output uri string = 'https://${appService.properties.defaultHostName}' |
Empty file.
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
targetScope = 'subscription' | ||
|
||
@minLength(3) | ||
@maxLength(3) | ||
@description('A prefix string to generate a short unique hash used in all resources.') | ||
param prefix string = 'gbb' | ||
|
||
@minLength(4) | ||
@description('Primary location for all resources') | ||
param location string = 'eastus2' | ||
|
||
@description('Resource Group to deploy all resources to') | ||
param resourceGroupName string = '${prefix}-rg' | ||
|
||
@description('Name of the App Service Plan to create') | ||
param appServicePlanName string = '' | ||
|
||
@description('Name of the API Service to create') | ||
param apiServiceName string = '' | ||
|
||
// @description('Name of the front end UI app to create') | ||
// param frontEndName string = 'frontend' | ||
|
||
var resourceToken = toLower(uniqueString(subscription().id, prefix, location)) | ||
|
||
// Organize resources in a resource group | ||
resource rg 'Microsoft.Resources/resourceGroups@2021-04-01' = { | ||
name: resourceGroupName | ||
location: location | ||
} | ||
|
||
// Create an App Service Plan to group applications under the same payment plan and SKU | ||
module appServicePlan './app/app-service-plan.bicep' = { | ||
name: 'appserviceplan' | ||
scope: rg | ||
params: { | ||
name: !empty(appServicePlanName) ? appServicePlanName : resourceToken | ||
location: location | ||
sku: { | ||
name: 'B1' | ||
} | ||
} | ||
} | ||
|
||
module appService './app/app-service.bicep' = { | ||
name: 'appservice' | ||
scope: rg | ||
dependsOn: [ | ||
appServicePlan | ||
] | ||
params: { | ||
name: !empty(apiServiceName) ? apiServiceName : resourceToken | ||
location: location | ||
appServicePlanId: appServicePlan.outputs.id | ||
runtimeName: 'dotnet-isolated' | ||
runtimeVersion: '7.0' | ||
tags: { | ||
'azd-service-name': apiServiceName | ||
} | ||
} | ||
} | ||
|
||
// Data outputs | ||
output AZURE_LOCATION string = location | ||
output AZURE_TENANT_ID string = tenant().tenantId |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
{ | ||
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#", | ||
"contentVersion": "1.0.0.0", | ||
"parameters": { | ||
"environmentName": { | ||
"value": "${AZURE_ENV_NAME}" | ||
}, | ||
"location": { | ||
"value": "${AZURE_LOCATION}" | ||
}, | ||
"principalId": { | ||
"value": "${AZURE_PRINCIPAL_ID}" | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
POST http://localhost:7071/api/Chat | ||
POST http://localhost:8080/api/Chat | ||
Content-Type: application/json | ||
|
||
{ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,2 @@ | ||
local.settings.json | ||
local.settings.json | ||
.env |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters