Skip to content
This repository was archived by the owner on Mar 20, 2023. It is now read-only.

"Python: Command Not Found" in Ubuntu 20.04LTS During Node Preparation #363

Description

Problem Description

When initiating a pool with shipyard pool add, using the microsoft-azure-batch publisher 20-04-lts ubuntu image, the python executable is not available in the newly created node's $PATH per Ubuntu's new policy of handling the system python executable name and the 2-to-3 migration. Because nodeprep.sh references "python" as the executable name in a couple spots, the executable fails to be found, and the node preparation start task fails.

Batch Shipyard Version

shipyard, version 3.9.1

Steps to Reproduce

generate a pool with an ubuntu-server-container, microsoft-azure-batch, 20-04-lts image
(shipyard pool add with a simple pool config for a single dedicated node)

Expected Results

Successful pool deploy

Actual Results

stderr.txt contains python:command not found (nodeprep.sh:385)

Redacted Configuration

pool.yaml

pool_specification:
  id: mypool
  vm_configuration:
    platform_image:
      offer: ubuntu-server-container
      publisher: microsoft-azure-batch
      sku: 20-04-lts
  vm_count:
    dedicated: 1
    low_priority: 0
  vm_size: STANDARD_A1_V2

Additional Logs

python:command not found (nodeprep.sh:385)

Additional Comments

This can be worked around by specifying a system python symlink in the additional_node_prep > pre commands. Happy to submit a pull request with changes to nodeprep.sh that test and direct to the appropriate python executable name to run so that the additional_node_prep pre-commands are no longer needed. I can always, of course, just pick a different image as well!

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions