Issue #6644
closedIssue #6623: pulpcore and plugin pre-flight check seems to not be enforcing and then installer fails at collectstatic
pre-flight check does not check plugins that are installed but not listed in pulp_install_plugins
Description
Consider the following scenario:
- Pulp 3.2.1, pulp-file 0.2, & pulp-container 1.2.0 were installed.
- The user runs the latest pulp_installer (3.3) with the following pulp_install_plugins, which is missing pulp_container:
pulp_install_plugins:
pulp-file:
version: "0.3"
This causes the following to happen
- The pre-flight (
pip-compile
) check determines that pulp-file 0.3 is compatible with pulpcore 3.3.0, and passes. - It sees pulp-container 1.2.0 in the old requirements.txt, and removes it from the new requirements.txt it just generated. This is because assumes that the user means to uninstall pulp-container, which its countainerpart
pip-sync
would do - pulp_installer uses
pip
commands to perform the install/upgrade instead. (Pulp doesn't support uninstalling plugins, - The installer later fails with an import error due to pulp-container still being an old incompatible version.
Users can work around this currently by making sure to specify all installed plugins in pulp_install_plugins.
We need to fix this by adding any missing installed plugins, not found in pulp_install_plugins, to requirements.in. We need to normalize their names with dashes (pip / pypi converts underscores to dashes.) And we need to search for plugins named like "pulp-*", but we may make exceptions (for galaxy_ng.)
Updated by mdepaulo@redhat.com over 4 years ago
- Subject changed from pre-flight check does not understand plugins that are installed but not listed in pulp_install_plugins to pre-flight check does not check plugins that are installed but not listed in pulp_install_plugins
Updated by fao89 over 4 years ago
- Triaged changed from No to Yes
- Sprint set to Sprint 72
Added by Mike DePaulo over 4 years ago
Added by Mike DePaulo over 4 years ago
Revision 0c5f7ac8 | View on GitHub
Problem: pre-flight check does not check plugins that are installed but not listed in pulp_install_plugins
Solution: List them in requirements.in Implementation includes:
- New non-user-facing variable pulp_install_plugins_normalized with plugin names corrected from underscores to dashes.
- Having the entire repo use pulp_install_plugins_normalized (a safety measure so that the same values used for pre-flight checks is used for installation.)
- A currently unadvertised variable pulp_irregularly_named_plugins containing a list of pip packages that are plugins but do not begin with "pulp-".
- Print pulp_install_plugins variables to facilitate debugging, only if verbosity level is at least 1 (-v).
fixes: #6644 pre-flight check does not check plugins that are installed but not listed in pulp_install_plugins https://pulp.plan.io/issues/6644
re: #6623 pulpcore and plugin pre-flight check seems to not be enforcing and then installer fails at collectstatic https://pulp.plan.io/issues/6623
Updated by Anonymous over 4 years ago
- Status changed from ASSIGNED to MODIFIED
Applied in changeset ansible-pulp|0c5f7ac8d81592e119775e8fadbfa82db79abf2d.
Updated by bmbouter over 4 years ago
- Category set to Installer - Moved to GitHub issues
- Tags deleted (
Pulp 3 installer)
Updated by dkliban@redhat.com about 4 years ago
- Status changed from MODIFIED to CLOSED - CURRENTRELEASE
Problem: pre-flight check does not check plugins that are installed but not listed in pulp_install_plugins
Solution: List them in requirements.in Implementation includes:
fixes: #6644 pre-flight check does not check plugins that are installed but not listed in pulp_install_plugins https://pulp.plan.io/issues/6644
re: #6623 pulpcore and plugin pre-flight check seems to not be enforcing and then installer fails at collectstatic https://pulp.plan.io/issues/6623