Project

General

Profile

Actions

Bug #63561

open

cephadm: build time install of dependencies fails on build systems that disable network

Added by Kaleb KEITHLEY 6 months ago. Updated 6 months ago.

Status:
New
Priority:
High
Assignee:
Category:
cephadm
Target version:
% Done:

0%

Source:
Community (dev)
Tags:
Backport:
Regression:
No
Severity:
1 - critical
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

A recent change to .../cephadm/build.py added

...
class Config:
def init(self, cli_args):
self.cli_args = cli_args
self._maj_min = sys.version_info[0:2]
self.install_dependencies = True
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
if self._maj_min == (3, 6):
self.pip_split = True
self.requirements = PY36_REQUIREMENTS
else:
self.pip_split = False
self.requirements = PY_REQUIREMENTS
self.pip_venv = PipEnv[cli_args.pip_use_venv]
...

Which is going to fail on build systems like Fedora mock/koji, Red Hat brew, Debian&Ubuntu pbuilder and Ubuntu launchpad. And no doubt many others.

These build environments preinstall all the dependencies and disable the network to ensure a clean, reproducible build environment.

Even when the dependencies are already provided, the above still will try (and fail) to install over the network, causing the build to fail.

Actions

Also available in: Atom PDF