boostercloud / booster

Booster Framework
https://www.boosterframework.com
Apache License 2.0
416 stars 86 forks source link

Azure gateway and rocket multi-functions #1501

Closed gonzalojaubert closed 8 months ago

gonzalojaubert commented 8 months ago

This PR updates the url for the GraphQL API, sensors, etc. for the Azure Provider. New base url is http://[resourcegroupname]apis.eastus.cloudapp.azure.com

Also, it deprecated the Azure Api Management in favor of Azure Application Gateway. You don't need to do anything to migrate to the new Application Gateway.

It provides an improved Rocket process to handle Rockets with more than one function. To use this new feature, you need to implement method mountCode in your Rocket class. Example:

const AzureWebhook = (params: WebhookParams): InfrastructureRocket => ({
  mountStack: Synth.mountStack.bind(Synth, params),
  mountCode: Functions.mountCode.bind(Synth, params),
  getFunctionAppName: Functions.getFunctionAppName.bind(Synth, params),
})

This method will return an Array of functions definitions, the function name, and the host.json file. Example:

export interface FunctionAppFunctionsDefinition<T extends Binding = Binding> {
  functionAppName: string
  functionsDefinitions: Array<FunctionDefinition<T>>
  hostJsonPath?: string
}
what-the-diff[bot] commented 8 months ago

PR Summary

Please let me know if you need more information.

gonzalogarciajaubert commented 8 months ago

/integration sha=89182fe4bd99520028336ae1bf680906393a5995

github-actions[bot] commented 8 months ago

:hourglass: Integration tests are running...

Check their status here 👈

github-actions[bot] commented 8 months ago

:x: Oh no! Integration tests have failed