Skip to content

Changes to publishing pipeline #1052

@asavaritayal

Description

@asavaritayal

The following changes are required to the Python publishing workflow for GA:

func publish

  1. Check if requirements.txt has changed. If it hasn't, skip to step 4.
  2. Run packapp.py to install dependencies using pip.
  3. 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"
  4. Zip deploy to Linux

func publish --build-native-deps

  1. Check if requirements.txt has changed. If it hasn't, skip to step 3.
  2. 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.
  3. 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

  1. Check if requirements.txt has changed. If it hasn't, no action is required.
  2. Run packapp.py to install dependencies using pip.
  3. If native dependencies without wheels are required, step 2 should fail with the appropriate error code.

func pack --build-native-deps

  1. Check if requirements.txt has changed. If it hasn't, no action is required.
  2. Builds the dependencies only using docker
    Note: In the short term, we'll retain the PyInstaller path as default.

func publish --no-build

  • Zip deploy to Linux

Issues for this Epic:

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions