diff --git a/samples/da-ristorante-api/.funcignore b/samples/da-ristorante-api-js/.funcignore similarity index 100% rename from samples/da-ristorante-api/.funcignore rename to samples/da-ristorante-api-js/.funcignore diff --git a/samples/da-ristorante-api/.gitignore b/samples/da-ristorante-api-js/.gitignore similarity index 100% rename from samples/da-ristorante-api/.gitignore rename to samples/da-ristorante-api-js/.gitignore diff --git a/samples/da-ristorante-api/.vscode/extensions.json b/samples/da-ristorante-api-js/.vscode/extensions.json similarity index 100% rename from samples/da-ristorante-api/.vscode/extensions.json rename to samples/da-ristorante-api-js/.vscode/extensions.json diff --git a/samples/da-ristorante-api/.vscode/launch.json b/samples/da-ristorante-api-js/.vscode/launch.json similarity index 100% rename from samples/da-ristorante-api/.vscode/launch.json rename to samples/da-ristorante-api-js/.vscode/launch.json diff --git a/samples/da-ristorante-api/.vscode/settings.json b/samples/da-ristorante-api-js/.vscode/settings.json similarity index 100% rename from samples/da-ristorante-api/.vscode/settings.json rename to samples/da-ristorante-api-js/.vscode/settings.json diff --git a/samples/da-ristorante-api/.vscode/tasks.json b/samples/da-ristorante-api-js/.vscode/tasks.json similarity index 100% rename from samples/da-ristorante-api/.vscode/tasks.json rename to samples/da-ristorante-api-js/.vscode/tasks.json diff --git a/samples/da-ristorante-api/README.md b/samples/da-ristorante-api-js/README.md similarity index 95% rename from samples/da-ristorante-api/README.md rename to samples/da-ristorante-api-js/README.md index b6f6610db..86bdcfd61 100644 --- a/samples/da-ristorante-api/README.md +++ b/samples/da-ristorante-api-js/README.md @@ -35,7 +35,7 @@ Version|Date|Comments ## Minimal path to awesome -* Clone this repository (or [download this solution as a .ZIP file](https://pnp.github.io/download-partial/?url=https://github.com/pnp/copilot-pro-dev-samples/tree/main/samples/da-ristorante-api) then unzip it) +* Clone this repository (or [download this solution as a .ZIP file](https://pnp.github.io/download-partial/?url=https://github.com/pnp/copilot-pro-dev-samples/tree/main/samples/da-ristorante-api-js) then unzip it) * Open the Microsoft 365 Agents Toolkit extension and sign in to your Microsoft 365 tenant with Microsoft 365 Copilot * Select **Debug in Copilot (Edge)** from the launch configuration dropdown @@ -43,7 +43,7 @@ Version|Date|Comments We do not support samples, but this community is always willing to help, and we want to improve these samples. We use GitHub to track issues, which makes it easy for community members to volunteer their time and help resolve issues. -You can try looking at [issues related to this sample](https://github.com/pnp/copilot-pro-dev-samples/issues?q=label%3A%22sample%3A%20da-ristorante-api%22) to see if anybody else is having the same issues. +You can try looking at [issues related to this sample](https://github.com/pnp/copilot-pro-dev-samples/issues?q=label%3A%22sample%3A%20da-ristorante-api-js%22) to see if anybody else is having the same issues. If you encounter any issues using this sample, [create a new issue](https://github.com/pnp/copilot-pro-dev-samples/issues/new). @@ -53,4 +53,4 @@ Finally, if you have an idea for improvement, [make a suggestion](https://github **THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.** - + diff --git a/samples/da-ristorante-api/api.http b/samples/da-ristorante-api-js/api.http similarity index 100% rename from samples/da-ristorante-api/api.http rename to samples/da-ristorante-api-js/api.http diff --git a/samples/da-ristorante-api/appPackage/ai-plugin.json b/samples/da-ristorante-api-js/appPackage/ai-plugin.json similarity index 100% rename from samples/da-ristorante-api/appPackage/ai-plugin.json rename to samples/da-ristorante-api-js/appPackage/ai-plugin.json diff --git a/samples/da-ristorante-api/appPackage/apiSpecificationFile/ristorante.yml b/samples/da-ristorante-api-js/appPackage/apiSpecificationFile/ristorante.yml similarity index 100% rename from samples/da-ristorante-api/appPackage/apiSpecificationFile/ristorante.yml rename to samples/da-ristorante-api-js/appPackage/apiSpecificationFile/ristorante.yml diff --git a/samples/da-ristorante-api/appPackage/color.png b/samples/da-ristorante-api-js/appPackage/color.png similarity index 100% rename from samples/da-ristorante-api/appPackage/color.png rename to samples/da-ristorante-api-js/appPackage/color.png diff --git a/samples/da-ristorante-api/appPackage/declarativeAgent.json b/samples/da-ristorante-api-js/appPackage/declarativeAgent.json similarity index 100% rename from samples/da-ristorante-api/appPackage/declarativeAgent.json rename to samples/da-ristorante-api-js/appPackage/declarativeAgent.json diff --git a/samples/da-ristorante-api/appPackage/instruction.txt b/samples/da-ristorante-api-js/appPackage/instruction.txt similarity index 100% rename from samples/da-ristorante-api/appPackage/instruction.txt rename to samples/da-ristorante-api-js/appPackage/instruction.txt diff --git a/samples/da-ristorante-api/appPackage/large.png b/samples/da-ristorante-api-js/appPackage/large.png similarity index 100% rename from samples/da-ristorante-api/appPackage/large.png rename to samples/da-ristorante-api-js/appPackage/large.png diff --git a/samples/da-ristorante-api/appPackage/manifest.json b/samples/da-ristorante-api-js/appPackage/manifest.json similarity index 100% rename from samples/da-ristorante-api/appPackage/manifest.json rename to samples/da-ristorante-api-js/appPackage/manifest.json diff --git a/samples/da-ristorante-api/appPackage/outline.png b/samples/da-ristorante-api-js/appPackage/outline.png similarity index 100% rename from samples/da-ristorante-api/appPackage/outline.png rename to samples/da-ristorante-api-js/appPackage/outline.png diff --git a/samples/da-ristorante-api/assets/cappuccino.jpeg b/samples/da-ristorante-api-js/assets/cappuccino.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/cappuccino.jpeg rename to samples/da-ristorante-api-js/assets/cappuccino.jpeg diff --git a/samples/da-ristorante-api/assets/caprese_salad.jpeg b/samples/da-ristorante-api-js/assets/caprese_salad.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/caprese_salad.jpeg rename to samples/da-ristorante-api-js/assets/caprese_salad.jpeg diff --git a/samples/da-ristorante-api/assets/chianti_classico.jpeg b/samples/da-ristorante-api-js/assets/chianti_classico.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/chianti_classico.jpeg rename to samples/da-ristorante-api-js/assets/chianti_classico.jpeg diff --git a/samples/da-ristorante-api/assets/chicken_panini.jpeg b/samples/da-ristorante-api-js/assets/chicken_panini.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/chicken_panini.jpeg rename to samples/da-ristorante-api-js/assets/chicken_panini.jpeg diff --git a/samples/da-ristorante-api/assets/espresso.jpeg b/samples/da-ristorante-api-js/assets/espresso.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/espresso.jpeg rename to samples/da-ristorante-api-js/assets/espresso.jpeg diff --git a/samples/da-ristorante-api/assets/frittata.jpeg b/samples/da-ristorante-api-js/assets/frittata.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/frittata.jpeg rename to samples/da-ristorante-api-js/assets/frittata.jpeg diff --git a/samples/da-ristorante-api/assets/iced_tea.jpeg b/samples/da-ristorante-api-js/assets/iced_tea.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/iced_tea.jpeg rename to samples/da-ristorante-api-js/assets/iced_tea.jpeg diff --git a/samples/da-ristorante-api/assets/orange_juice.jpeg b/samples/da-ristorante-api-js/assets/orange_juice.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/orange_juice.jpeg rename to samples/da-ristorante-api-js/assets/orange_juice.jpeg diff --git a/samples/da-ristorante-api/assets/prosciutto_melon.jpeg b/samples/da-ristorante-api-js/assets/prosciutto_melon.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/prosciutto_melon.jpeg rename to samples/da-ristorante-api-js/assets/prosciutto_melon.jpeg diff --git a/samples/da-ristorante-api/assets/ricotta_pancakes.jpeg b/samples/da-ristorante-api-js/assets/ricotta_pancakes.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/ricotta_pancakes.jpeg rename to samples/da-ristorante-api-js/assets/ricotta_pancakes.jpeg diff --git a/samples/da-ristorante-api/assets/sample.json b/samples/da-ristorante-api-js/assets/sample.json similarity index 92% rename from samples/da-ristorante-api/assets/sample.json rename to samples/da-ristorante-api-js/assets/sample.json index 1a992867f..0e648c7a2 100644 --- a/samples/da-ristorante-api/assets/sample.json +++ b/samples/da-ristorante-api-js/assets/sample.json @@ -1,11 +1,11 @@ [ { - "name": "pnp-copilot-pro-dev-da-ristorante-api", + "name": "pnp-copilot-pro-dev-da-ristorante-api-js", "source": "pnp", "title": "Browse the menu and place an order at a local Italian restaurant using Microsoft 365 Copilot", "shortDescription": "This sample demonstrates how to build a declarative agent for Microsoft 365 Copilot that allows you to browse a menu of a local Italian restaurant and place an order. The agent uses an API plugin to connect to an anonymous API. The project contains an Azure Function that serves as the API.", - "url": "https://github.com/pnp/copilot-pro-dev-samples/tree/main/samples/da-ristorante-api", - "downloadUrl": "https://pnp.github.io/download-partial/?url=https://github.com/pnp/copilot-pro-dev-samples/tree/main/samples/da-ristorante-api", + "url": "https://github.com/pnp/copilot-pro-dev-samples/tree/main/samples/da-ristorante-api-js", + "downloadUrl": "https://pnp.github.io/download-partial/?url=https://github.com/pnp/copilot-pro-dev-samples/tree/main/samples/da-ristorante-api-js", "longDescription": [ "This sample demonstrates how to build a declarative agent for Microsoft 365 Copilot that allows you to browse a menu of a local Italian restaurant and place an order. The agent uses an API plugin to connect to an anonymous API. The project contains an Azure Function that serves as the API." ], @@ -36,13 +36,13 @@ { "type": "image", "order": 100, - "url": "https://github.com/pnp/copilot-pro-dev-samples/raw/main/samples/da-ristorante-api/assets/screenshot-menu.png", + "url": "https://github.com/pnp/copilot-pro-dev-samples/raw/main/samples/da-ristorante-api-js/assets/screenshot-menu.png", "alt": "Declarative agent showing what's on the menu for lunch" }, { "type": "image", "order": 100, - "url": "https://github.com/pnp/copilot-pro-dev-samples/raw/main/samples/da-ristorante-api/assets/screenshot-order.png", + "url": "https://github.com/pnp/copilot-pro-dev-samples/raw/main/samples/da-ristorante-api-js/assets/screenshot-order.png", "alt": "Declarative agent ordering lunch" } ], diff --git a/samples/da-ristorante-api/assets/screenshot-menu.png b/samples/da-ristorante-api-js/assets/screenshot-menu.png similarity index 100% rename from samples/da-ristorante-api/assets/screenshot-menu.png rename to samples/da-ristorante-api-js/assets/screenshot-menu.png diff --git a/samples/da-ristorante-api/assets/screenshot-order.png b/samples/da-ristorante-api-js/assets/screenshot-order.png similarity index 100% rename from samples/da-ristorante-api/assets/screenshot-order.png rename to samples/da-ristorante-api-js/assets/screenshot-order.png diff --git a/samples/da-ristorante-api/assets/seafood_linguine.jpeg b/samples/da-ristorante-api-js/assets/seafood_linguine.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/seafood_linguine.jpeg rename to samples/da-ristorante-api-js/assets/seafood_linguine.jpeg diff --git a/samples/da-ristorante-api/assets/spaghetti_carbonara.jpeg b/samples/da-ristorante-api-js/assets/spaghetti_carbonara.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/spaghetti_carbonara.jpeg rename to samples/da-ristorante-api-js/assets/spaghetti_carbonara.jpeg diff --git a/samples/da-ristorante-api/assets/sparkling_water.jpeg b/samples/da-ristorante-api-js/assets/sparkling_water.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/sparkling_water.jpeg rename to samples/da-ristorante-api-js/assets/sparkling_water.jpeg diff --git a/samples/da-ristorante-api/assets/tiramisu.jpeg b/samples/da-ristorante-api-js/assets/tiramisu.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/tiramisu.jpeg rename to samples/da-ristorante-api-js/assets/tiramisu.jpeg diff --git a/samples/da-ristorante-api/assets/veal_osso_buco.jpeg b/samples/da-ristorante-api-js/assets/veal_osso_buco.jpeg similarity index 100% rename from samples/da-ristorante-api/assets/veal_osso_buco.jpeg rename to samples/da-ristorante-api-js/assets/veal_osso_buco.jpeg diff --git a/samples/da-ristorante-api/cards/dish.data.json b/samples/da-ristorante-api-js/cards/dish.data.json similarity index 82% rename from samples/da-ristorante-api/cards/dish.data.json rename to samples/da-ristorante-api-js/cards/dish.data.json index 59b300a89..3128bf012 100644 --- a/samples/da-ristorante-api/cards/dish.data.json +++ b/samples/da-ristorante-api-js/cards/dish.data.json @@ -2,7 +2,7 @@ "id": 4, "name": "Caprese Salad", "description": "Juicy vine-ripened tomatoes, fresh mozzarella, and fragrant basil leaves, drizzled with extra virgin olive oil and a touch of balsamic.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/caprese_salad.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/caprese_salad.jpeg", "price": 10.5, "allergens": [ "dairy" diff --git a/samples/da-ristorante-api/cards/dish.json b/samples/da-ristorante-api-js/cards/dish.json similarity index 100% rename from samples/da-ristorante-api/cards/dish.json rename to samples/da-ristorante-api-js/cards/dish.json diff --git a/samples/da-ristorante-api/cards/order.data.json b/samples/da-ristorante-api-js/cards/order.data.json similarity index 100% rename from samples/da-ristorante-api/cards/order.data.json rename to samples/da-ristorante-api-js/cards/order.data.json diff --git a/samples/da-ristorante-api/cards/order.json b/samples/da-ristorante-api-js/cards/order.json similarity index 100% rename from samples/da-ristorante-api/cards/order.json rename to samples/da-ristorante-api-js/cards/order.json diff --git a/samples/da-ristorante-api/env/.env.dev b/samples/da-ristorante-api-js/env/.env.dev similarity index 100% rename from samples/da-ristorante-api/env/.env.dev rename to samples/da-ristorante-api-js/env/.env.dev diff --git a/samples/da-ristorante-api/env/.env.local b/samples/da-ristorante-api-js/env/.env.local similarity index 100% rename from samples/da-ristorante-api/env/.env.local rename to samples/da-ristorante-api-js/env/.env.local diff --git a/samples/da-ristorante-api/host.json b/samples/da-ristorante-api-js/host.json similarity index 100% rename from samples/da-ristorante-api/host.json rename to samples/da-ristorante-api-js/host.json diff --git a/samples/da-ristorante-api/infra/azure.bicep b/samples/da-ristorante-api-js/infra/azure.bicep similarity index 100% rename from samples/da-ristorante-api/infra/azure.bicep rename to samples/da-ristorante-api-js/infra/azure.bicep diff --git a/samples/da-ristorante-api/infra/azure.parameters.json b/samples/da-ristorante-api-js/infra/azure.parameters.json similarity index 100% rename from samples/da-ristorante-api/infra/azure.parameters.json rename to samples/da-ristorante-api-js/infra/azure.parameters.json diff --git a/samples/da-ristorante-api/m365agents.local.yml b/samples/da-ristorante-api-js/m365agents.local.yml similarity index 98% rename from samples/da-ristorante-api/m365agents.local.yml rename to samples/da-ristorante-api-js/m365agents.local.yml index 201ce4167..ea812652a 100644 --- a/samples/da-ristorante-api/m365agents.local.yml +++ b/samples/da-ristorante-api-js/m365agents.local.yml @@ -16,7 +16,7 @@ provision: - uses: teamsApp/create with: # Teams app name - name: da-ristorante-api${{APP_NAME_SUFFIX}} + name: da-ristorante-api-js${{APP_NAME_SUFFIX}} # Write the information of created resources into environment file for # the specified environment variable(s). writeToEnvironmentFile: diff --git a/samples/da-ristorante-api/m365agents.yml b/samples/da-ristorante-api-js/m365agents.yml similarity index 95% rename from samples/da-ristorante-api/m365agents.yml rename to samples/da-ristorante-api-js/m365agents.yml index 4e11ae845..dd39b41f4 100644 --- a/samples/da-ristorante-api/m365agents.yml +++ b/samples/da-ristorante-api-js/m365agents.yml @@ -1,138 +1,138 @@ -# yaml-language-server: $schema=https://aka.ms/teams-toolkit/v1.7/yaml.schema.json -# Visit https://aka.ms/teamsfx-v5.0-guide for details on this file -# Visit https://aka.ms/teamsfx-actions for details on actions -version: v1.7 - -additionalMetadata: - sampleTag: pnp-copilot-pro-dev:da-ristorante-api - -environmentFolderPath: ./env - -# Triggered when 'teamsapp provision' is executed -provision: - # Creates a Teams app - - uses: teamsApp/create - with: - # Teams app name - name: da-ristorante-api${{APP_NAME_SUFFIX}} - # Write the information of created resources into environment file for - # the specified environment variable(s). - writeToEnvironmentFile: - teamsAppId: TEAMS_APP_ID - - - uses: arm/deploy # Deploy given ARM templates parallelly. - with: - # AZURE_SUBSCRIPTION_ID is a built-in environment variable, - # if its value is empty, TeamsFx will prompt you to select a subscription. - # Referencing other environment variables with empty values - # will skip the subscription selection prompt. - subscriptionId: ${{AZURE_SUBSCRIPTION_ID}} - # AZURE_RESOURCE_GROUP_NAME is a built-in environment variable, - # if its value is empty, TeamsFx will prompt you to select or create one - # resource group. - # Referencing other environment variables with empty values - # will skip the resource group selection prompt. - resourceGroupName: ${{AZURE_RESOURCE_GROUP_NAME}} - templates: - - path: ./infra/azure.bicep # Relative path to this file - # Relative path to this yaml file. - # Placeholders will be replaced with corresponding environment - # variable before ARM deployment. - parameters: ./infra/azure.parameters.json - # Required when deploying ARM template - deploymentName: Create-resources-for-sme - # Microsoft 365 Agents Toolkit will download this bicep CLI version from github for you, - # will use bicep CLI in PATH if you remove this config. - bicepCliVersion: v0.9.1 - - # Build Teams app package with latest env value - - uses: teamsApp/zipAppPackage - with: - # Path to manifest template - manifestPath: ./appPackage/manifest.json - outputZipPath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip - outputFolder: ./appPackage/build - - # Validate app package using validation rules - - uses: teamsApp/validateAppPackage - with: - # Relative path to this file. This is the path for built zip file. - appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip - - # Apply the Teams app manifest to an existing Teams app in - # Developer Portal. - # Will use the app id in manifest file to determine which Teams app to update. - - uses: teamsApp/update - with: - # Relative path to this file. This is the path for built zip file. - appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip - - # Extend your Teams app to Outlook and the Microsoft 365 app - - uses: teamsApp/extendToM365 - with: - # Relative path to the build app package. - appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip - # Write the information of created resources into environment file for - # the specified environment variable(s). - writeToEnvironmentFile: - titleId: M365_TITLE_ID - appId: M365_APP_ID - -# Triggered when 'teamsapp deploy' is executed -deploy: - # Run npm command - - uses: cli/runNpmCommand - name: install dependencies - with: - args: install - - - uses: cli/runNpmCommand - name: build app - with: - args: run build --if-present - - # Deploy your application to Azure Functions using the zip deploy feature. - # For additional details, see at https://aka.ms/zip-deploy-to-azure-functions - - uses: azureFunctions/zipDeploy - with: - # deploy base folder - artifactFolder: . - # Ignore file location, leave blank will ignore nothing - ignoreFile: .funcignore - # The resource id of the cloud resource to be deployed to. - # This key will be generated by arm/deploy action automatically. - # You can replace it with your existing Azure Resource id - # or add it to your environment variable file. - resourceId: ${{API_FUNCTION_RESOURCE_ID}} - -# Triggered when 'teamsapp publish' is executed -publish: - # Build Teams app package with latest env value - - uses: teamsApp/zipAppPackage - with: - # Path to manifest template - manifestPath: ./appPackage/manifest.json - outputZipPath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip - outputFolder: ./appPackage/build - # Validate app package using validation rules - - uses: teamsApp/validateAppPackage - with: - # Relative path to this file. This is the path for built zip file. - appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip - # Apply the Teams app manifest to an existing Teams app in - # Developer Portal. - # Will use the app id in manifest file to determine which Teams app to update. - - uses: teamsApp/update - with: - # Relative path to this file. This is the path for built zip file. - appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip - # Publish the app to - # Teams Admin Center (https://admin.teams.microsoft.com/policies/manage-apps) - # for review and approval - - uses: teamsApp/publishAppPackage - with: - appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip - # Write the information of created resources into environment file for - # the specified environment variable(s). - writeToEnvironmentFile: - publishedAppId: TEAMS_APP_PUBLISHED_APP_ID +# yaml-language-server: $schema=https://aka.ms/teams-toolkit/v1.7/yaml.schema.json +# Visit https://aka.ms/teamsfx-v5.0-guide for details on this file +# Visit https://aka.ms/teamsfx-actions for details on actions +version: v1.7 + +additionalMetadata: + sampleTag: pnp-copilot-pro-dev:da-ristorante-api-js + +environmentFolderPath: ./env + +# Triggered when 'teamsapp provision' is executed +provision: + # Creates a Teams app + - uses: teamsApp/create + with: + # Teams app name + name: da-ristorante-api-js${{APP_NAME_SUFFIX}} + # Write the information of created resources into environment file for + # the specified environment variable(s). + writeToEnvironmentFile: + teamsAppId: TEAMS_APP_ID + + - uses: arm/deploy # Deploy given ARM templates parallelly. + with: + # AZURE_SUBSCRIPTION_ID is a built-in environment variable, + # if its value is empty, TeamsFx will prompt you to select a subscription. + # Referencing other environment variables with empty values + # will skip the subscription selection prompt. + subscriptionId: ${{AZURE_SUBSCRIPTION_ID}} + # AZURE_RESOURCE_GROUP_NAME is a built-in environment variable, + # if its value is empty, TeamsFx will prompt you to select or create one + # resource group. + # Referencing other environment variables with empty values + # will skip the resource group selection prompt. + resourceGroupName: ${{AZURE_RESOURCE_GROUP_NAME}} + templates: + - path: ./infra/azure.bicep # Relative path to this file + # Relative path to this yaml file. + # Placeholders will be replaced with corresponding environment + # variable before ARM deployment. + parameters: ./infra/azure.parameters.json + # Required when deploying ARM template + deploymentName: Create-resources-for-sme + # Microsoft 365 Agents Toolkit will download this bicep CLI version from github for you, + # will use bicep CLI in PATH if you remove this config. + bicepCliVersion: v0.9.1 + + # Build Teams app package with latest env value + - uses: teamsApp/zipAppPackage + with: + # Path to manifest template + manifestPath: ./appPackage/manifest.json + outputZipPath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip + outputFolder: ./appPackage/build + + # Validate app package using validation rules + - uses: teamsApp/validateAppPackage + with: + # Relative path to this file. This is the path for built zip file. + appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip + + # Apply the Teams app manifest to an existing Teams app in + # Developer Portal. + # Will use the app id in manifest file to determine which Teams app to update. + - uses: teamsApp/update + with: + # Relative path to this file. This is the path for built zip file. + appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip + + # Extend your Teams app to Outlook and the Microsoft 365 app + - uses: teamsApp/extendToM365 + with: + # Relative path to the build app package. + appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip + # Write the information of created resources into environment file for + # the specified environment variable(s). + writeToEnvironmentFile: + titleId: M365_TITLE_ID + appId: M365_APP_ID + +# Triggered when 'teamsapp deploy' is executed +deploy: + # Run npm command + - uses: cli/runNpmCommand + name: install dependencies + with: + args: install + + - uses: cli/runNpmCommand + name: build app + with: + args: run build --if-present + + # Deploy your application to Azure Functions using the zip deploy feature. + # For additional details, see at https://aka.ms/zip-deploy-to-azure-functions + - uses: azureFunctions/zipDeploy + with: + # deploy base folder + artifactFolder: . + # Ignore file location, leave blank will ignore nothing + ignoreFile: .funcignore + # The resource id of the cloud resource to be deployed to. + # This key will be generated by arm/deploy action automatically. + # You can replace it with your existing Azure Resource id + # or add it to your environment variable file. + resourceId: ${{API_FUNCTION_RESOURCE_ID}} + +# Triggered when 'teamsapp publish' is executed +publish: + # Build Teams app package with latest env value + - uses: teamsApp/zipAppPackage + with: + # Path to manifest template + manifestPath: ./appPackage/manifest.json + outputZipPath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip + outputFolder: ./appPackage/build + # Validate app package using validation rules + - uses: teamsApp/validateAppPackage + with: + # Relative path to this file. This is the path for built zip file. + appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip + # Apply the Teams app manifest to an existing Teams app in + # Developer Portal. + # Will use the app id in manifest file to determine which Teams app to update. + - uses: teamsApp/update + with: + # Relative path to this file. This is the path for built zip file. + appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip + # Publish the app to + # Teams Admin Center (https://admin.teams.microsoft.com/policies/manage-apps) + # for review and approval + - uses: teamsApp/publishAppPackage + with: + appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip + # Write the information of created resources into environment file for + # the specified environment variable(s). + writeToEnvironmentFile: + publishedAppId: TEAMS_APP_PUBLISHED_APP_ID diff --git a/samples/da-ristorante-api/package-lock.json b/samples/da-ristorante-api-js/package-lock.json similarity index 100% rename from samples/da-ristorante-api/package-lock.json rename to samples/da-ristorante-api-js/package-lock.json diff --git a/samples/da-ristorante-api/package.json b/samples/da-ristorante-api-js/package.json similarity index 100% rename from samples/da-ristorante-api/package.json rename to samples/da-ristorante-api-js/package.json diff --git a/samples/da-ristorante-api/src/data.json b/samples/da-ristorante-api-js/src/data.json similarity index 82% rename from samples/da-ristorante-api/src/data.json rename to samples/da-ristorante-api-js/src/data.json index 15645f676..edbf5c1c6 100644 --- a/samples/da-ristorante-api/src/data.json +++ b/samples/da-ristorante-api-js/src/data.json @@ -3,7 +3,7 @@ "id": 1, "name": "Classic Italian Frittata", "description": "A fluffy omelette filled with sautéed mushrooms, onions, and melted pecorino, served with a side of roasted cherry tomatoes.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/frittata.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/frittata.jpeg", "price": 8.99, "allergens": [ "eggs", @@ -16,7 +16,7 @@ "id": 2, "name": "Prosciutto & Melon", "description": "Fresh, sweet cantaloupe wrapped in thin slices of salty prosciutto, drizzled with balsamic glaze and a hint of mint.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/prosciutto_melon.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/prosciutto_melon.jpeg", "price": 7.50, "allergens": [], "course": "breakfast", @@ -26,7 +26,7 @@ "id": 3, "name": "Ricotta Pancakes", "description": "Light and fluffy pancakes made with creamy ricotta cheese, topped with fresh berries and a dusting of powdered sugar.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/ricotta_pancakes.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/ricotta_pancakes.jpeg", "price": 9.99, "allergens": [ "gluten", @@ -40,7 +40,7 @@ "id": 10, "name": "Cappuccino", "description": "A perfect blend of espresso and steamed milk with a thick, velvety foam topping.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/cappuccino.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/cappuccino.jpeg", "price": 3.99, "allergens": [ "dairy" @@ -52,7 +52,7 @@ "id": 11, "name": "Freshly Squeezed Orange Juice", "description": "Refreshing and tangy, made from hand-picked oranges, a perfect start to your day.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/orange_juice.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/orange_juice.jpeg", "price": 4.50, "allergens": [], "course": "breakfast", @@ -62,7 +62,7 @@ "id": 4, "name": "Caprese Salad", "description": "Juicy vine-ripened tomatoes, fresh mozzarella, and fragrant basil leaves, drizzled with extra virgin olive oil and a touch of balsamic.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/caprese_salad.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/caprese_salad.jpeg", "price": 10.50, "allergens": [ "dairy" @@ -74,7 +74,7 @@ "id": 5, "name": "Spaghetti Carbonara", "description": "Al dente spaghetti tossed in a velvety sauce of eggs, Parmesan, and crispy pancetta, finished with cracked black pepper and a sprinkle of parsley.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/spaghetti_carbonara.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/spaghetti_carbonara.jpeg", "price": 14.99, "allergens": [ "gluten", @@ -88,7 +88,7 @@ "id": 6, "name": "Grilled Chicken Panini", "description": "Grilled marinated chicken breast with sun-dried tomatoes, arugula, and melted provolone, served on toasted ciabatta bread with pesto mayo.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/chicken_panini.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/chicken_panini.jpeg", "price": 12.50, "allergens": [ "gluten", @@ -101,7 +101,7 @@ "id": 12, "name": "Iced Tea", "description": "A cool and refreshing brewed tea with a hint of lemon and mint.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/iced_tea.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/iced_tea.jpeg", "price": 2.99, "allergens": [], "course": "lunch", @@ -111,7 +111,7 @@ "id": 13, "name": "San Pellegrino Sparkling Water", "description": "Crisp, bubbly sparkling water from the Italian Alps, a refreshing palate cleanser.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/sparkling_water.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/sparkling_water.jpeg", "price": 3.50, "allergens": [], "course": "lunch", @@ -121,7 +121,7 @@ "id": 7, "name": "Veal Osso Buco", "description": "Tender veal shanks braised in a rich tomato and white wine sauce, served with a creamy saffron risotto and gremolata.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/veal_osso_buco.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/veal_osso_buco.jpeg", "price": 23.99, "allergens": [], "course": "dinner", @@ -131,7 +131,7 @@ "id": 8, "name": "Seafood Linguine", "description": "Fresh linguine pasta tossed with mussels, clams, shrimp, and calamari in a delicate white wine and garlic sauce, with a hint of red pepper flakes.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/seafood_linguine.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/seafood_linguine.jpeg", "price": 19.99, "allergens": [ "gluten", @@ -144,7 +144,7 @@ "id": 9, "name": "Tiramisu", "description": "A luscious, creamy blend of espresso-soaked ladyfingers, mascarpone, and cocoa, this dessert is a classic Italian indulgence.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/tiramisu.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/tiramisu.jpeg", "price": 7.50, "allergens": [ "dairy", @@ -157,7 +157,7 @@ "id": 14, "name": "Chianti Classico", "description": "A robust and velvety red wine with notes of cherries, violet, and subtle spice, perfect for pairing with hearty Italian dishes.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/chianti_classico.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/chianti_classico.jpeg", "price": 9.99, "allergens": [], "course": "dinner", @@ -167,7 +167,7 @@ "id": 15, "name": "Espresso", "description": "A bold and intense shot of rich espresso, with deep crema, the perfect end to a delightful meal.", - "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api/assets/espresso.jpeg", + "image_url": "https://raw.githubusercontent.com/pnp/copilot-pro-dev-samples/main/samples/da-ristorante-api-js/assets/espresso.jpeg", "price": 2.99, "allergens": [], "course": "dinner", diff --git a/samples/da-ristorante-api/src/functions/dishes.ts b/samples/da-ristorante-api-js/src/functions/dishes.ts similarity index 100% rename from samples/da-ristorante-api/src/functions/dishes.ts rename to samples/da-ristorante-api-js/src/functions/dishes.ts diff --git a/samples/da-ristorante-api/src/functions/placeOrder.ts b/samples/da-ristorante-api-js/src/functions/placeOrder.ts similarity index 100% rename from samples/da-ristorante-api/src/functions/placeOrder.ts rename to samples/da-ristorante-api-js/src/functions/placeOrder.ts diff --git a/samples/da-ristorante-api/tsconfig.json b/samples/da-ristorante-api-js/tsconfig.json similarity index 100% rename from samples/da-ristorante-api/tsconfig.json rename to samples/da-ristorante-api-js/tsconfig.json