Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tracker: burndown python dependencies #92

Closed
21 tasks done
dustymabe opened this issue Dec 12, 2018 · 13 comments
Closed
21 tasks done

tracker: burndown python dependencies #92

dustymabe opened this issue Dec 12, 2018 · 13 comments
Labels
-python card related to removing a python dependency jira for syncing to jira priority/medium

Comments

@dustymabe
Copy link
Member

dustymabe commented Dec 12, 2018

Original Description:

Right now we have python still in FCOS. Let's burn down our python deps and start to break packages apart or decide we don't need the functionality. Here is what we have today:

[root@localhost ~]# rpm -e python3 python2
error: Failed dependencies:
        python(abi) = 3.7 is needed by (installed) python3-setuptools-40.4.3-1.fc29.noarch
        python(abi) = 3.7 is needed by (installed) python3-pip-18.1-1.fc29.noarch
        python(abi) = 3.7 is needed by (installed) python3-sssdconfig-2.0.0-4.fc29.noarch
        python(abi) = 3.7 is needed by (installed) python3-libselinux-2.8-4.fc29.x86_64
        python(abi) = 3.7 is needed by (installed) python3-setools-4.1.1-13.fc29.x86_64
        python(abi) = 3.7 is needed by (installed) python3-ply-3.9-8.fc29.noarch
        python(abi) = 3.7 is needed by (installed) python3-bind-32:9.11.4-10.P2.fc29.noarch
        python(abi) = 2.7 is needed by (installed) python2-setuptools-40.4.3-1.fc29.noarch
        python(abi) = 2.7 is needed by (installed) python2-pip-18.1-1.fc29.noarch
        python(abi) = 2.7 is needed by (installed) python2-libselinux-2.8-4.fc29.x86_64
        python(abi) = 2.7 is needed by (installed) python2-libsemanage-2.8-4.fc29.x86_64
        python(abi) = 2.7 is needed by (installed) python2-IPy-0.81-23.fc29.noarch
        python(abi) = 2.7 is needed by (installed) python2-audit-3.0-0.4.20180831git0047a6c.fc29.x86_64
        python(abi) = 2.7 is needed by (installed) python2-enum34-1.1.6-7.fc29.noarch
        python(abi) = 2.7 is needed by (installed) python2-setools-4.1.1-13.fc29.x86_64
        python(abi) = 2.7 is needed by (installed) python2-policycoreutils-2.8-8.fc29.noarch
        python(abi) = 3.7 is needed by (installed) authconfig-7.0.1-7.fc29.x86_64
        python3 is needed by (installed) python3-bind-32:9.11.4-10.P2.fc29.noarch
        python3 is needed by (installed) authconfig-7.0.1-7.fc29.x86_64
        /usr/bin/python3 is needed by (installed) python3-setuptools-40.4.3-1.fc29.noarch
        /usr/bin/python3 is needed by (installed) python3-pip-18.1-1.fc29.noarch
        /usr/bin/python3 is needed by (installed) bind-utils-32:9.11.4-10.P2.fc29.x86_64
        /usr/bin/python3 is needed by (installed) nfs-utils-1:2.3.3-1.rc2.fc29.x86_64
        /usr/bin/python3 is needed by (installed) setools-console-4.1.1-13.fc29.x86_64
        /usr/bin/python3 is needed by (installed) authconfig-7.0.1-7.fc29.x86_64
        /usr/bin/python3 is needed by (installed) xfsprogs-4.17.0-3.fc29.x86_64
        python(abi) = 3.7 is needed by (installed) python3-setuptools-40.4.3-1.fc29.noarch
        python(abi) = 3.7 is needed by (installed) python3-pip-18.1-1.fc29.noarch
        python(abi) = 3.7 is needed by (installed) python3-sssdconfig-2.0.0-4.fc29.noarch
        python(abi) = 3.7 is needed by (installed) python3-libselinux-2.8-4.fc29.x86_64
        python(abi) = 3.7 is needed by (installed) python3-setools-4.1.1-13.fc29.x86_64
        python(abi) = 3.7 is needed by (installed) python3-ply-3.9-8.fc29.noarch
        python(abi) = 3.7 is needed by (installed) python3-bind-32:9.11.4-10.P2.fc29.noarch
        python(abi) = 2.7 is needed by (installed) python2-setuptools-40.4.3-1.fc29.noarch
        python(abi) = 2.7 is needed by (installed) python2-pip-18.1-1.fc29.noarch
        python(abi) = 2.7 is needed by (installed) python2-libselinux-2.8-4.fc29.x86_64
        python(abi) = 2.7 is needed by (installed) python2-libsemanage-2.8-4.fc29.x86_64
        python(abi) = 2.7 is needed by (installed) python2-IPy-0.81-23.fc29.noarch
        python(abi) = 2.7 is needed by (installed) python2-audit-3.0-0.4.20180831git0047a6c.fc29.x86_64
        python(abi) = 2.7 is needed by (installed) python2-enum34-1.1.6-7.fc29.noarch
        python(abi) = 2.7 is needed by (installed) python2-setools-4.1.1-13.fc29.x86_64
        python(abi) = 2.7 is needed by (installed) python2-policycoreutils-2.8-8.fc29.noarch
        python(abi) = 3.7 is needed by (installed) authconfig-7.0.1-7.fc29.x86_64
        python2 = 2.7.15-11.fc29 is needed by (installed) python-unversioned-command-2.7.15-11.fc29.noarch
        /usr/bin/python2 is needed by (installed) python2-setuptools-40.4.3-1.fc29.noarch
        /usr/bin/python2 is needed by (installed) python2-pip-18.1-1.fc29.noarch
        /usr/bin/python2 is needed by (installed) python2-policycoreutils-2.8-8.fc29.noarch
        /usr/bin/python2.7 is needed by (installed) python2-libs-2.7.15-11.fc29.x86_64
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# rpm-ostree status
State: idle
AutomaticUpdates: disabled
Deployments:
● ostree://fedora-coreos:fedora/29/x86_64/coreos
                   Version: 29.38 (2018-12-12T11:04:36Z)
                    Commit: 71b4f82e5702549a813afb90d5c19e07ef5f7f32c390ff3763773f4e62523a98

So the ones we can concentrate on first are:

  • bind-utils
  • nfs-utils
  • setools-console
  • authconfig
  • xfsprogs

Which ones of these do we need. Which can we get rid of? Which can we break apart?

Subsequent items discussed and identified to be tracked:

Tracking Python dependent packages:

@dustymabe
Copy link
Member Author

Open RFE for bind-utils to split package: https://bugzilla.redhat.com/show_bug.cgi?id=1649398

@LorbusChris
Copy link
Contributor

Is moving from authconfig to authselect an option?

https://github.com/pbrezina/authselect

@LorbusChris
Copy link
Contributor

LorbusChris commented Dec 18, 2018

Again re: replacing authconfig with authselect: Seems authselect only needs Python for the authselect-compat pkg for compatibility with authconfig (https://src.fedoraproject.org/rpms/authselect/blob/master/f/authselect.spec#_176).

Has anybody here used authselect and has some experience with it?

@jlebon
Copy link
Member

jlebon commented Dec 18, 2018

Has anybody here used authselect and has some experience with it?

Yeah, there's some history there: https://github.com/pbrezina/authselect/issues/48. Basically, we've held back migrating to authselect in FAH because of conflicts over nsswitch.conf.

@sinnykumari
Copy link
Contributor

So the ones we can concentrate on first are:

* bind-utils

* nfs-utils

* setools-console

* authconfig

* xfsprogs

Which ones of these do we need. Which can we get rid of? Which can we break apart?

While looking at python dependent packages, found two additional packages other than listed above which pulls in python:

  • sssd
  • policycoreutils-python

@sinnykumari
Copy link
Contributor

sinnykumari commented Jan 16, 2019

On FCOS system boot, xfs_growfs utility from xfsprogs package is needed to run coreos-growpart.service (it runs /usr/libexec/coreos-growpart ) successfully.

Only Python utility provided by xfsprogs is /usr/sbin/xfs_scrub_all . Maybe we can request to split xfsprogs to provide Python utility (xfs_scrub_all) in a separate package?

@dustymabe
Copy link
Member Author

Only Python utility provided by xfsprogs is /usr/sbin/xfs_scrub_all . Maybe we can request to split xfsprogs to provide Python utility (xfs_scrub_all) in a separate package?

yeah we can try that.. Maybe we could even see if they could convince upstream to make it a compiled language. It's not a complex script.

@sinnykumari
Copy link
Contributor

yeah we can try that.. Maybe we could even see if they could convince upstream to make it a compiled language. It's not a complex script.

+1, I will file a bug against xfsprogs with this request

@dustymabe
Copy link
Member Author

+1, I will file a bug against xfsprogs with this reque

thanks.. maybe we should file a separate ticket for each request and track them here in the description like we are doing for clouds in #95 ?

@sinnykumari
Copy link
Contributor

+1, I will file a bug against xfsprogs with this reque

thanks.. maybe we should file a separate ticket for each request and track them here in the description like we are doing for clouds in #95 ?

+1, I was thinking about doing that

@sinnykumari
Copy link
Contributor

sinnykumari commented Jan 17, 2019

Tracking Python dependent packages:

- [ ] Keep/Remove Python dependent package: bind-utils
    - [ ] investigated #120
    - [ ] action items completed
- [ ] Keep/Remove Python dependent package: nfs-utils
    - [ ] investigated #121
    - [ ] action items completed
- [ ] Keep/Remove Python dependent package: setools-console
    - [ ] investigated #122
    - [ ] action items completed
- [ ] Keep/Remove Python dependent package: authconfig
    - [ ] investigated #123
    - [ ] action items completed
- [ ] Keep/Remove Python dependent package: xfsprogs
    - [ ] investigated #124
    - [ ] action items completed
- [ ] Keep/Remove Python dependent package: sssd
    - [ ] investigated #125
    - [ ] action items completed
- [ ] Keep/Remove Python dependent package: policycoreutils-python
    - [ ] investigated #126
    - [ ] action items completed

Edit: from @dustymabe:
Thanks @sinnykumari . I moved tracker checkboxes to Description. We'll update them there.

@dustymabe dustymabe changed the title burndown python dependencies tracker: burndown python dependencies Jan 17, 2019
@dustymabe dustymabe added the -python card related to removing a python dependency label Jan 17, 2019
@sinnykumari
Copy link
Contributor

Latest FCOS build doesn't contain Python which can be verified from commitmeta.json from latest build in CentOS CI \o/

Also, booted qcow2 image from latest build fedora-coreos-30.131-qemu.qcow2 which boots fine and -

$ rpm -qa python*

$ rpm -e python3 python2
error: package python3 is not installed
error: package python2 is not installed

Will wait for some time before closing this issue to make sure we didn't miss anything

@dustymabe
Copy link
Member Author

Will wait for some time before closing this issue to make sure we didn't miss anything

close close close! we can re-open if issues arise

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
-python card related to removing a python dependency jira for syncing to jira priority/medium
Projects
None yet
Development

No branches or pull requests

4 participants