botskills and/or deploy.ps1
Powershell
When connecting a bot to a skill, botskill connect uses the name provided as both the bot name and resource group. The deploy.ps1 sometimes applies a suffex to the bot name and not the resource group.
Not sure how to trigger the inconsistent naming in deploy.ps1. I named my bot "BBVA" during deployment. The resource group was called "BBVA," the bot was called "BBVA-n24mm34." Later, when connecting a skill, neither BBVA or BBVA-n24mm34 worked for the bot name arguement, both fail on az bot authsettings command. Running az bot authsetting list -n BBVA-n24mm34 -g BBVA
returned the desired result.
I'd expect the name I entered in deploy.ps1 to work as the bots name, but if we must use suffixes we could apply them consistently. botskills does not fail gracefully from this state, so it's unclear to the user if manual set up of oauth connections and a redeployment is all that is needed to continue deployment
From botskills connect:
Configuring bot auth settings
Checking for authentication settings ...
Configuring Azure AD connection ...
Checking for existing aad connections
Could not configure authentication connection automatically.
There was an error while executing the following command:
az bot authsetting list -n bbva-n24mm34 -g bbva-n24mm34
undefined
You must configure one of the following connection types MANUALLY in the Azure Portal:
Azure Active Directory v2, Google
For more information on setting up the authentication configuration manually go to:
https://aka.ms/vamanualauthsteps
(node:21160) UnhandledPromiseRejectionWarning: WARNING: You have 55 updates available. Consider updating your CLI installation.
(node:21160) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:21160) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
If suffixes are applied in deploy.ps1, apply them globally.
Handle exceptions in promises and provide users with a clean exit
Add an optional bot resource group parameter to botskills connect
I think manually configuring oAuth connections and running deploy.ps1 again will finish the process, but I have not tested it/won't have a chance to test it for several days. In my case I was testing out issues I faced, and have deleted the projects.
Hi @BillStrait, we're working on a fix for this going forward, but to fix it now you can provide the --resourceGroup
parameter with the name of your resource group when you call the botskills connect command.
I'm not sure how I missed the --resourceGroup
parameter, I specifically looked for it. That does the trick.
Output at the end of deploy.ps1 with the resource group, bot name, app id, and so on might be useful. I know how to grab it from the gui and most of it is in the appsettings.json file, but if the idea is to put all the management and deployment in the CLI, might as well make it so I don't have to open the website at all.
Hi @BillStrait!
We solved this issue in the following Pull Requests merged in the next
branch:
You should see these changes in the next release!
Most helpful comment
Hi @BillStrait, we're working on a fix for this going forward, but to fix it now you can provide the
--resourceGroup
parameter with the name of your resource group when you call the botskills connect command.