GithubHelp home page GithubHelp logo

Comments (12)

hogarthj avatar hogarthj commented on June 3, 2024 1

Hi guys - I've picked up package maintenance of this in Fedora

It's now in the testing repos for F23+ and EPEL7 ... I'm working on EPEL6 as well but tests are failing there and until I've got to the bottom of why I'm not prepared to push it.

If there's any idea why it's failing it would help :)

https://kojipkgs.fedoraproject.org//work/tasks/7477/16197477/build.log

Note that RHEL/CentOS6 has python-requests 2.6.0-3 and I'm not sure right now what, if anything, RH has backported from later versions. I note that the setup.py specifies a 2.9.1 minimum - is there a specific reason for this?

As python-requests is in the base repositories we cannot have a later version in EPEL and if this is a hard dependency that cannot be worked around then python-winrm can't be packaged for EPEL6 - though users can use a Fedora or EPEL7 control system where it does work.

from pywinrm.

alexpilotti avatar alexpilotti commented on June 3, 2024

+1 :)

from pywinrm.

diyan avatar diyan commented on June 3, 2024

@luisfdez @alexpilotti Honestly I don't have any experience in packaging. Moreover, I'm mostly working on Arch Linux at home + Ubuntu at work and not quite familiar with Fedora/RedHat/CentOS family.

It could be a good exercise for me as for developer to work on this feature, so I'm pretty much open to this.

The only thing I need is some good links to best practices in packaging for all major Linux distribution - Fedora/RedHat/CentOS, Ubuntu/Debian, Arch Linux (optional), Gentoo Linux (optional).

I don't want to provide a package only for Fedora because it would be unfair to other users.

Looking forward for your help on this.

from pywinrm.

luisfdez avatar luisfdez commented on June 3, 2024

Ok @diyan, I'm taking a look to the packaging guidelines for python libraries in Fedora first (as it's the one I know better), and then we can take a look to Debian based distros.

Thanks again for your work 👍

from pywinrm.

luisfdez avatar luisfdez commented on June 3, 2024

Hi @diyan, just to keep you update... I didn't abandon this topic, but I'm just busier than usual.

FYI, I successful build in Fedora tested:
http://koji.fedoraproject.org/koji/taskinfo?taskID=9499147

I need to improve some things as I want to properly ship also packages for both python2/python3.

I'll keep you updated.

Cheers,
Luis

from pywinrm.

opoplawski avatar opoplawski commented on June 3, 2024

I started looking at packaging as well, but I think issue #57 needs to be addressed first - proper release tags, and LICENSE and README.md including in the tarballs.

from pywinrm.

pstrzelczak avatar pstrzelczak commented on June 3, 2024

+1
The environment I work at does not allow non-RPM software.

from pywinrm.

bensherman avatar bensherman commented on June 3, 2024

+1 - all of the RPM/EPEL infrastructure is in place where I work, it would be great to get pywinrm into it.

from pywinrm.

diyan avatar diyan commented on June 3, 2024

@hogarthj We are going to tag v0.2.2 release. Could you work on packages for EPEL? It would be awesome if you can prepare two packages - one for Python 2 and another for Python 3. Like Debian folks are planning to do. You can track status here - #57

from pywinrm.

hogarthj avatar hogarthj commented on June 3, 2024

@diyan I'll pick this up in the next day or so for the 0.2.2 release

I can't remember which dependency it was but one of them wasn't being built for python3 in EPEL, just Fedora.

I'll review the requirements again and see what I can do for a python3 EPEL7 build.

Note that in fedora we build both python2 and python3 RPMs from the same python-winrm source

I see you've added credssp support in this - we don't have that packaged yet so that'll be something new to pick up as well and will need to go through our package review process.

from pywinrm.

diyan avatar diyan commented on June 3, 2024

@hogarthj Thanks. Please note there are two set of dependencies:

  1. Required - https://github.com/diyan/pywinrm/blob/v0.2.2/setup.py#L26
  2. Optional (aka extras) - https://github.com/diyan/pywinrm/blob/v0.2.2/setup.py#L27

So, 'pip install pywinrm==0.2.2' installs basic version of pywinrm in pure Python.
In such way we have maximum portability across OSes, Linux distributions, etc.

At the same time user can install extras that requires gcc, python-devel packages in Fedora plus may require some bindings to the C libraries.

See more info here: https://github.com/diyan/pywinrm#to-use-kerberos-authentication-you-need-these-optional-dependencies

Does Fedora / CentOS / RHEL has alternative to the Debian's suggested/recommended packages?

If not, what is the best way to let Fedora user choose between basic and extras?

from pywinrm.

hogarthj avatar hogarthj commented on June 3, 2024

We do have the concept of recommends and suggests (the former installed by default when dnf install python-winrm is used and the latter not) ... though that isn't supported in EPEL and is infrequently used as "weak dependencies" were only recently added to Fedora.

The README is also copied over so users can see there if they want kerberos they shoudl install the requests-kerberos python module.

That said, the README you guys have specifies using pip for it which naturally we don't 'support' on Fedora/EPEL as it has a nasty tendency to mess with RPM install stuff.

What I'll probably do in this release is add a README.fedora with fedora/epel specific stuff like I do with the owncloud packages and mention installing python{2,3}-requests-kerberos there for kerberos usage.

Since we ship compiled stuff in the RPMs there's no need for gcc, python-devel etc then on fedora systems to make use of kerberos.

As it stands right now $user does a dnf install python-winrm (for the python2 version or python3-winrm for the py3 one) and then they have that installed ready to use with ansible or whatever.

If they want kerberos rather than the ntlm3 auth then they'll need to install python-requests-kerberos manually and then configure whatever they need to make use of their tokens.

from pywinrm.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.