Static-web-apps: Is there any way to execute remote build on deployment from GitHub Action to Function App as backend API

Created on 13 Sep 2020  路  6Comments  路  Source: Azure/static-web-apps

Now I'm trying to use puppeteer on Function App as backend API.
But it might be difficult that the size of deployment package is less than 30mb (current limitation for API package) because chromium binary in puppeteer is huge.

If remote build such as --build remote option of func azure functionapp publish can be used on deploytment, the limitation can be avoided.

https://docs.microsoft.com/en-us/azure/azure-functions/functions-run-local?tabs=linux%2Ccsharp%2Cbash#project-file-deployment
image

Could you please consider this option?

Thanks,

Functions

Most helpful comment

The remote build and the Static Web Apps container utilize the same technology to build the Azure Function, the build process is not the problem :) We have a limit in place because we own the underlying Azure Function that you are deploying your content to, this is done to provide a seamless experience (no need to worry about the underlying resources just write code). As I said above, this is mainly due to preview and these limits will change.

cc @anthonychu in case he wants to add anything

All 6 comments

This most likely will not be a supported option. The GitHub action is currently the only way to do build and deployment. This limit is put here in part so we can measure the needs of the community, so this is a great data point for us. I will followup if there are any changes to the limit soon but otherwise I believe your scenario will be blocked.

Thanks @miwebst

I don't know about the GitHub action in details, so my opinion might not be realistic.It looks that the action is processed by using docker container based on mcr.microsoft.com/appsvc/staticappsclient:stable.
Do we have any way to execute functions core tools with the above option --build remote inside the contaier?

The remote build and the Static Web Apps container utilize the same technology to build the Azure Function, the build process is not the problem :) We have a limit in place because we own the underlying Azure Function that you are deploying your content to, this is done to provide a seamless experience (no need to worry about the underlying resources just write code). As I said above, this is mainly due to preview and these limits will change.

cc @anthonychu in case he wants to add anything

Will this limitation be removed or become same as normal Azure Functions in GA?

Currently, BYOF can be used in GA, so is it the best practice to use BYOF if the API package size is over 100MB?
ref: https://github.com/Azure/static-web-apps/issues/247#issuecomment-830715628

If my understanding is right, please close this issue.

Yes you can certainly use that to get around the limit :)

Was this page helpful?
0 / 5 - 0 ratings