The following changes are required to the Python publishing workflow for GA:
func publish
- Check if
requirements.txt has changed. If it hasn't, skip to step 4.
- Run
packapp.py to install dependencies using pip.
- If native dependencies without wheels are required, step 2 should fail with the following error:
"ERROR: cannot install <package name - version> dependency: binary dependencies without wheels are not supported. Use func publish --build-native-deps to build using a docker container**.
More information at https://aka.ms/func-python-publish"
- Zip deploy to Linux
func publish --build-native-deps
- Check if
requirements.txt has changed. If it hasn't, skip to step 3.
- Builds the dependencies only using docker
Note: In the short term, we'll retain the PyInstaller path as default along with the --no-bundler option.
- Zip deploy to Linux
In addition to the above, we'll also require the following commands to support VS Code and DevOps scenarios:
func pack
- Check if
requirements.txt has changed. If it hasn't, no action is required.
- Run
packapp.py to install dependencies using pip.
- If native dependencies without wheels are required, step 2 should fail with the appropriate error code.
func pack --build-native-deps
- Check if
requirements.txt has changed. If it hasn't, no action is required.
- Builds the dependencies only using docker
Note: In the short term, we'll retain the PyInstaller path as default.
func publish --no-build
Issues for this Epic:
The following changes are required to the Python publishing workflow for GA:
func publishrequirements.txthas changed. If it hasn't, skip to step 4.packapp.pyto install dependencies using pip."ERROR: cannot install <package name - version> dependency: binary dependencies without wheels are not supported. Use func publish --build-native-deps to build using a docker container**.
More information at https://aka.ms/func-python-publish"
func publish --build-native-depsrequirements.txthas changed. If it hasn't, skip to step 3.Note: In the short term, we'll retain the PyInstaller path as default along with the --no-bundler option.
In addition to the above, we'll also require the following commands to support VS Code and DevOps scenarios:
func packrequirements.txthas changed. If it hasn't, no action is required.packapp.pyto install dependencies using pip.func pack --build-native-depsrequirements.txthas changed. If it hasn't, no action is required.Note: In the short term, we'll retain the PyInstaller path as default.
func publish --no-buildIssues for this Epic: