Project

Profile

Help

Issue #2203

closed

Cannot install nightly build on Fedora 24

Added by Ichimonji10 over 7 years ago. Updated about 5 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
High
Assignee:
Sprint/Milestone:
-
Start date:
Due date:
Estimated time:
Severity:
3. High
Version - OSTree:
Platform Release:
Target Release - OSTree:
OS:
Triaged:
Yes
Groomed:
No
Sprint Candidate:
No
Tags:
Pulp 2
Sprint:
Quarter:

Description

Let's say I decide to install Pulp 2.10 and all of its plugins on Fedora 24 with the following script:

#!/usr/bin/env bash
set -euo pipefail

dnf update -y
dnf install -y git vim ansible python-dnf libselinux-python
mkdir code
cd code
git clone https://github.com/pulp/pulp_packaging
cd pulp_packaging
echo localhost > hosts
ansible-playbook -i hosts --connection local -e pulp_version='2.9' \
    ci/ansible/pulp_server.yaml

This will fail when the "Install OSTree" task executes. Here's the error returned by Ansible:

TASK [pulp : Install OSTree] ***************************************************
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: -------------
failed: [localhost] (item=[u'pulp-ostree-plugins',
u'pulp-ostree-admin-extensions']) => {
    "failed": true,
    "item": ["pulp-ostree-plugins", "pulp-ostree-admin-extensions"],
    "module_stderr": "…",
    "module_stdout": "",
    "msg": "MODULE FAILURE",
    "parsed": false
}

Here's the contents of module_stderr:

Traceback (most recent call last):
  File "/tmp/ansible_wi4RYe/ansible_module_dnf.py", line 355, in <module>
    main()
  File "/tmp/ansible_wi4RYe/ansible_module_dnf.py", line 349, in main
    ensure(module, base, params['state'], params['name'])
  File "/tmp/ansible_wi4RYe/ansible_module_dnf.py", line 304, in ensure
    base.do_transaction()
  File "/usr/lib/python2.7/site-packages/dnf/base.py", line 591, in do_transaction
    self._trans_error_summary(errstring))
dnf.exceptions.Error: Transaction check error:
  file /usr/lib/python2.7/site-packages/pulp/__init__.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/__init__.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/backports/__init__.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/plugins/__init__.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/__init__.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/__init__.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/backports/__init__.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/plugins/__init__.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/auth_utils.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/auth_utils.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/backports/pkgutil.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/backports/pkgutil.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/bundle.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/bundle.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/compat.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/compat.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/config.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/config.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/constants.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/constants.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/dateutils.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/dateutils.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/error_codes.py from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/error_codes.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/error_codes.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/lock.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/lock.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/pic.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/pic.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/plugins/distributor_constants.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/plugins/distributor_constants.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/plugins/importer_constants.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/plugins/importer_constants.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/plugins/progress.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/plugins/progress.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/plugins/reporting_constants.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/plugins/reporting_constants.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/tags.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/tags.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/util.pyc from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch
  file /usr/lib/python2.7/site-packages/pulp/common/util.pyo from install of python2-pulp-common-2.8.6-1.fc24.noarch conflicts with file from package python-pulp-common-2.10.1-0.1.alpha.git.14.5edefcc.fc24.noarch

Error Summary
-------------

If one applies the following patch to the pulp_packaging repository, then the install on Fedora 24 works just fine:

diff --git a/ci/ansible/roles/pulp/tasks/pulp_server.yaml b/ci/ansible/roles/pulp/tasks/pulp_server.yaml
index 9c6a5cc..d9636df 100644
--- a/ci/ansible/roles/pulp/tasks/pulp_server.yaml
+++ b/ci/ansible/roles/pulp/tasks/pulp_server.yaml
@@ -55,14 +55,6 @@
 - name: Install Pulp Admin (RPM, Puppet, Docker)
   action: "{{ ansible_pkg_mgr }} name=@pulp-admin"

-- name: Install OSTree
-  action: "{{ ansible_pkg_mgr }} name={{ item }} state=latest"
-  with_items:
-    - pulp-ostree-plugins
-    - pulp-ostree-admin-extensions
-  when: (ansible_distribution == "RedHat" and ansible_distribution_major_version|int >= 7) or
-        (ansible_distribution == "Fedora" and ansible_distribution_major_version|int >= 23)
-
 - name: Install Pulp Python plugin
   action: "{{ ansible_pkg_mgr }} name={{ item }} state=latest"
   with_items:
Actions #1

Updated by mhrivnak over 7 years ago

Just a first thought: Maybe the python2- packages need to explicitly obsolete the python- counterparts?

Actions #2

Updated by pcreech over 7 years ago

  • Priority changed from Normal to High
  • Severity changed from 2. Medium to 3. High
  • Triaged changed from No to Yes
Actions #3

Updated by Ichimonji10 over 7 years ago

[snip!]

Actions #4

Updated by Ichimonji10 over 7 years ago

Some changes were made to this feature today, so I decided to re-test. I created a pair of F23 and F24 systems, and installed Pulp 2.11 on each. Correct packages were installed on F23, but not on F24.

Jenkins seems to agree with my findings. Test results are sane for F23, but not for F24.

Here's some output from my F23 system:

$ grep PRETTY /etc/os-release
PRETTY_NAME="Fedora 23 (Server Edition)"
$ rpm -qa | sort | grep -i pulp
pulp-admin-client-2.11.0-0.1.alpha.git.745.a97856e.fc23.noarch
pulp-docker-admin-extensions-2.2.0-0.1.alpha.git.203.f414bf7.fc23.noarch
pulp-docker-plugins-2.2.0-0.1.alpha.git.203.f414bf7.fc23.noarch
pulp-ostree-admin-extensions-1.2.0-0.1.alpha.git.109.2fcfeb0.fc23.noarch
pulp-ostree-plugins-1.2.0-0.1.alpha.git.109.2fcfeb0.fc23.noarch
pulp-puppet-admin-extensions-2.11.0-0.1.alpha.git.187.e97c179.fc23.noarch
pulp-puppet-plugins-2.11.0-0.1.alpha.git.187.e97c179.fc23.noarch
pulp-python-admin-extensions-1.2.0-0.1.alpha.git.122.19bb797.fc23.noarch
pulp-python-plugins-1.2.0-0.1.alpha.git.122.19bb797.fc23.noarch
pulp-rpm-admin-extensions-2.11.0-0.1.alpha.git.552.86ecff9.fc23.noarch
pulp-rpm-plugins-2.11.0-0.1.alpha.git.552.86ecff9.fc23.noarch
pulp-selinux-2.11.0-0.1.alpha.git.745.a97856e.fc23.noarch
pulp-server-2.11.0-0.1.alpha.git.745.a97856e.fc23.noarch
python-kombu-3.0.33-6.pulp.fc23.noarch
python-pulp-bindings-2.11.0-0.1.alpha.git.745.a97856e.fc23.noarch
python-pulp-client-lib-2.11.0-0.1.alpha.git.745.a97856e.fc23.noarch
python-pulp-common-2.11.0-0.1.alpha.git.745.a97856e.fc23.noarch
python-pulp-docker-common-2.2.0-0.1.alpha.git.203.f414bf7.fc23.noarch
python-pulp-oid_validation-2.11.0-0.1.alpha.git.745.a97856e.fc23.noarch
python-pulp-ostree-common-1.2.0-0.1.alpha.git.109.2fcfeb0.fc23.noarch
python-pulp-puppet-common-2.11.0-0.1.alpha.git.187.e97c179.fc23.noarch
python-pulp-python-common-1.2.0-0.1.alpha.git.122.19bb797.fc23.noarch
python-pulp-repoauth-2.11.0-0.1.alpha.git.745.a97856e.fc23.noarch
python-pulp-rpm-common-2.11.0-0.1.alpha.git.552.86ecff9.fc23.noarch
python-pulp-streamer-2.11.0-0.1.alpha.git.745.a97856e.fc23.noarch

Here's some output from my F24 system:

$ grep PRETTY /etc/os-release
PRETTY_NAME="Fedora 24 (Server Edition)"
$ rpm -qa | sort | grep -i pulp
pulp-admin-client-2.8.7-1.fc24.noarch
pulp-docker-admin-extensions-2.0.3-1.fc24.noarch
pulp-docker-plugins-2.0.3-1.fc24.noarch
pulp-ostree-admin-extensions-1.1.2-1.fc24.noarch
pulp-ostree-plugins-1.1.2-1.fc24.noarch
pulp-puppet-admin-extensions-2.8.7-1.fc24.noarch
pulp-puppet-plugins-2.8.7-1.fc24.noarch
pulp-python-admin-extensions-1.1.2-1.fc24.noarch
pulp-python-plugins-1.1.2-1.fc24.noarch
pulp-rpm-admin-extensions-2.8.7-1.fc24.noarch
pulp-rpm-plugins-2.8.7-1.fc24.noarch
pulp-selinux-2.11.0-0.1.alpha.git.745.a97856e.fc24.noarch
pulp-server-2.8.7-1.fc24.noarch
python2-pulp-bindings-2.8.7-1.fc24.noarch
python2-pulp-client-lib-2.8.7-1.fc24.noarch
python2-pulp-common-2.8.7-1.fc24.noarch
python2-pulp-docker-common-2.0.3-1.fc24.noarch
python2-pulp-oid_validation-2.8.7-1.fc24.noarch
python2-pulp-ostree-common-1.1.2-1.fc24.noarch
python2-pulp-puppet-common-2.8.7-1.fc24.noarch
python2-pulp-repoauth-2.8.7-1.fc24.noarch
python2-pulp-rpm-common-2.8.7-1.fc24.noarch
python-kombu-3.0.33-6.pulp.fc24.noarch
python-pulp-python-common-1.1.2-1.fc24.noarch
python-pulp-streamer-2.11.0-0.1.alpha.git.745.a97856e.fc24.noarch
Actions #5

Updated by semyers over 7 years ago

  • Status changed from NEW to ASSIGNED
  • Assignee set to semyers

This is relevant to my interests for #2313, since my hope with the resolution of that story is that we start on a solid foundation with regard to parity between upstream and downstream specs (I believe that disparity between them is at the root of this issue).

Actions #6

Updated by Ichimonji10 over 7 years ago

I also installed Pulp 2.10 on a pair of freshly provisioned F23 and F24 systems. (Above, I show the results for installing Pulp 2.11 on a pair of F23 and F24 systems.) Correct packages were installed on each system.

Actions #7

Updated by semyers over 7 years ago

The problem might be that while I did rebuild 2.10 after "fixing" the specs, I didn't rebuild 2.11.

I'll check it out.

Actions #8

Updated by semyers over 7 years ago

semyers wrote:

The problem might be that while I did rebuild 2.10 after "fixing" the specs, I didn't rebuild 2.11.

I'll check it out.

Comically, 2.11 is now failing the way 2.10 was. /me gets a shovel.

Actions #9

Updated by semyers over 7 years ago

No real progress, but I did rule out this as the failure:

fatal: [localhost]: FAILED! => {"changed": false, "failed": true, "module_stderr": "/usr/lib/python2.7/site-packages/dnf/base.py:1280: DeprecationWarning: group_install() expects group id                        instead of Comps object.

The actual issue is that the build system isn't building the plugin packages on f24 because (as far as I can tell) it isn't configured to. :)

I'll do a quick test and then see about getting that fixed. This warrants a little bit of discussion about how to handle upstream releases for the future of pulp2, but this should all hopefully be solved and sane when switching to copr for pulp 3.

Actions #10

Updated by semyers over 7 years ago

It turns out it's really hard to install or test packages that don't exist.

Related: We now actually build our plugins for f24 on master.

2.10 doesn't appear to be affected by this; I suspect some merging weirdness happened that made master miss out on the f24 fun. I want to audit each plugin and make sure things are sane but this should be good to go now.

Actions #11

Updated by semyers over 7 years ago

  • Status changed from ASSIGNED to CLOSED - CURRENTRELEASE

As far as I can tell, OSTree's master branch (and all other plugins) are now being built for f24. This, combined with the earlier fix to "Provides" python2-pulp-* versions of our python-pulp-* packages seems to have gotten f24 builds working correctly for 2.10 and 2.11.

Actions #12

Updated by Ichimonji10 over 7 years ago

I can verify that the OSTree nightly build can be installed on F24.

Actions #13

Updated by bmbouter about 5 years ago

  • Tags Pulp 2 added

Also available in: Atom PDF