serverless / serverless-azure-functions

Serverless Azure Functions Plugin – Add Azure Functions support to the Serverless Framework
MIT License
267 stars 162 forks source link

feat: Linux & Python Runtime Support #362

Closed tbarlow12 closed 4 years ago

tbarlow12 commented 5 years ago

What did you implement:

Runtime support for Linux and Python

How did you implement it:

Important: Because core tools does not currently support publishing an existing package, any Linux applications will not clean built files. Also, because func azure (used in publishing) invokes the Azure CLI, I have not been able to get it to run properly as a child process. This will currently give the user the exact command to both publish their function app and then clean up the generated files.

How can we verify it:

Specify the linux os in your serverless.yml like:

provider:
    os: linux

and run sls deploy.

Todos:

Note: Run npm run test:ci to run all validation checks on proposed changes

Is this ready for review?: YES
Is it a breaking change?: NO

codecov[bot] commented 5 years ago

Codecov Report

Merging #362 into dev will increase coverage by 0.04%. The diff coverage is 94.73%.

Impacted file tree graph

@@            Coverage Diff             @@
##              dev     #362      +/-   ##
==========================================
+ Coverage   94.44%   94.48%   +0.04%     
==========================================
  Files          48       49       +1     
  Lines        1782     1868      +86     
  Branches      280      301      +21     
==========================================
+ Hits         1683     1765      +82     
- Misses         98      103       +5     
+ Partials        1        0       -1
Impacted Files Coverage Δ
src/test/mockFactory.ts 90.67% <ø> (-1.04%) :arrow_down:
src/config.ts 100% <ø> (ø) :arrow_up:
src/shared/constants.ts 100% <ø> (ø) :arrow_up:
src/services/coreToolsService.ts 100% <100%> (ø)
src/plugins/package/azurePackagePlugin.ts 100% <100%> (ø) :arrow_up:
src/plugins/azureBasePlugin.ts 100% <100%> (ø) :arrow_up:
src/services/rollbackService.ts 100% <100%> (ø) :arrow_up:
src/armTemplates/resources/appServicePlan.ts 100% <100%> (ø) :arrow_up:
src/services/configService.ts 98.09% <100%> (+2.09%) :arrow_up:
src/services/armService.ts 96.8% <100%> (ø) :arrow_up:
... and 9 more

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 673008b...b99afeb. Read the comment docs.

Vbubblery commented 4 years ago

Hello,

May I ask when could you merge this PR?

And for python' function.js, if it trigger to http, we should change name of out as $return instead of res.

So, it's better to have an arguments to set --python or --nodejs

@tbarlow12

tbarlow12 commented 4 years ago

Closing in favor of coming PR