Skip to content

v0.0.26

Choose a tag to compare

@adamkoziol adamkoziol released this 02 Sep 13:43
· 7 commits to main since this release

v0.0.26

This patch release fixes the Conda publication workflow's post-build installation test.

Fixed

  • Fixed local package installation failing with PackagesNotFoundInChannelsError.
  • Fixed the workflow relying on --use-local, which searched Conda's default local build channel rather than the build directory used by the isolated azure_batch_build environment.
  • Updated the workflow to derive the actual local Conda channel from the generated package path.
  • Ensured the newly built azure_batch package is discoverable before the installation test begins.

Changed

  • The workflow now determines the local channel root from PACKAGE_PATH.
  • The local build channel is provided to Conda using an explicit file:// URL.
  • Channel metadata is refreshed with conda-index before package installation.
  • The workflow verifies that the requested AzureBatch version is visible in the local channel using conda search.
  • The installation test continues to resolve all runtime dependencies rather than installing the package archive with dependency checking disabled.
  • Added diagnostic output showing:
    • the generated package path
    • the local package directory
    • the local channel root
    • the local channel URL
    • package and channel metadata files
    • the installed AzureBatch package record

Local channel resolution

For a generated package such as:

/usr/share/miniconda/envs/azure_batch_build/conda-bld/noarch/azure_batch-0.0.26-py_0.conda

the workflow now uses the following local channel root:

/usr/share/miniconda/envs/azure_batch_build/conda-bld

and supplies it to Conda as:

file:///usr/share/miniconda/envs/azure_batch_build/conda-bld

This allows Conda to discover the package under the channel's noarch directory while resolving its dependencies from the configured remote channels.

Dependency resolution

The installation test uses the following channel order:

local build channel
conda-forge
bioconda
olcbioinformatics

The locally built AzureBatch package is selected from the explicit local channel, while its runtime dependencies continue to be resolved normally.

Validation

The workflow now validates the locally built package by:

  1. Confirming that the expected .conda package exists.
  2. Refreshing the local channel metadata.
  3. Confirming that azure_batch=0.0.26 is visible in the local channel.
  4. Creating a clean Python 3.12 test environment.
  5. Installing the locally built package with full dependency resolution.
  6. Importing the azure_batch Python package.
  7. Running AzureBatch -h.
  8. Displaying the installed package record.

Network resilience

Existing retry handling remains enabled for transient failures involving:

  • Conda build-tool installation
  • recipe rendering
  • package output-path calculation
  • package building
  • dependency resolution
  • installation testing
  • source archive downloads
  • package publication

The local package visibility check now fails immediately with useful diagnostics if the generated package is absent from the expected build channel.

Compatibility

  • No AzureBatch application programming interface changes are included.
  • No Azure Batch pool, job, or task behavior is changed.
  • No Azure Storage runtime behavior is changed.
  • No deployment configuration changes are required.
  • Existing AzureBatch workflows remain compatible.
  • The Conda package continues to support Python 3.12 and Python 3.13.
  • Automated package builds and installation tests use Python 3.12.

Upgrade notes

No application configuration changes are required when upgrading from v0.0.25.

This release supersedes v0.0.25 for automated Conda publication. Version 0.0.25 built and passed its recipe tests successfully, but its post-build installation check could not locate the generated package through Conda's generic local channel.