Skip to content

RFE: Offline builds workflow #797

@lcarva

Description

@lcarva

Context

The build-sequence command does have an offline build mode. However, it needs network access to fetch source distributions and any pre-built wheel (for dependencies). This makes it impossible to run that command in a completely offline mode.

The current workflow is a two stage process:

  • Run bootstrap. Keep the build-order.json file and remove all other files.
  • Run build-sequence on the build-order.json file to build the wheels and sdists that will be distributed.

Proposal

Introduce a new command, prepare ?, that takes as input the build-order.json file and fetches all the required sdists as well as any pre-built wheels (according to the cache-wheel-server-url parameter.) The output is a directory that contains all of these file in specific layout. If there are any source modifications to applied, they should be done as part of this command.

Adjust the build-sequence command to accept a new (optional) parameter, --prepared-layout ?. When provided, sidsts and wheels are fetched from it and nowhere else. We could also enforce that using this parameter with --cache-wheel-server-url results in an error.

This will allow running the build-sequence command completely offline.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions