You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ambari.apache.org by Greg Hill <gr...@RACKSPACE.COM> on 2015/09/08 16:44:09 UTC

Python client abandoned?

The Python client hasn't been updated in a year or so:

https://github.com/apache/ambari/tree/trunk/ambari-client/python-client/src/main/python

I tried to work with Subin to modernize it previously but things didn't work out so I ended up making my own client:

https://github.com/jimbobhickville/python-ambariclient

We've been using it here at Rackspace for nearly a year now and it's been pretty great.  Easy to use, easy to work on, and much more full-featured than the existing client.  I'd love to contribute it back as the official Python client, since the existing one is broken and missing a lot of features (for example, it can't create clusters since Ambari 1.7, and has no support for newer features like metrics).

I know there is some work to be done to make it integrate better with the existing Ambari tooling, but I wanted to reach out and see if such an addition would be welcome.  If it is, we can sort out what all requirements need to be met before it can be integrated back in.

Greg




Re: Python client abandoned?

Posted by Greg Hill <gr...@RACKSPACE.COM>.
Alejandro,

I meant to contribute it back in whole as a replacement.  I have no
interest in porting the functionality to the current client; the main
reason I wrote my own is that the current one is difficult to work on and
requires way too much boilerplate code to add anything.  I first proposed
to refactor the existing client to make it easier to use and work on, but
my proposal was rejected, and nobody has touched the client since (my
patches were the last to be applied, based on the git history).

As for Ambari features that my client supports that the official one
doesn't:

1. Users
2. Groups
3. Privileges
4. Stacks
5. Views
6. Add hosts to hostgroup
7. Ambari Alerts
8. Ambari Metrics
9. Execute custom action
10. DECOMMISSION component
(probably a lot more that I'm forgetting)

It's also been updated to work with changes in Ambari 2.0 and 2.1, and has
a mechanism to mark what version a feature was added to prevent people
from using it against an older cluster.  It's also been released on Pypi
so it's easier for Python programmers to install and use.

Greg

On 9/8/15, 12:39 PM, "Alejandro Fernandez" <af...@hortonworks.com>
wrote:

>That's great Greg.
>
>I took a quick peek and it has,
>PyLint checks
>Command to query Alerts
>Command to restart a component on a host, and service-level restart
>
>Can you come up with a high-level list of some of the features you want to
>contribute back?
>
>Thanks,
>Alejandro
>
>On 9/8/15, 7:44 AM, "Greg Hill" <gr...@RACKSPACE.COM> wrote:
>
>>The Python client hasn't been updated in a year or so:
>>
>>https://github.com/apache/ambari/tree/trunk/ambari-client/python-client/s
>>r
>>c/main/python
>>
>>I tried to work with Subin to modernize it previously but things didn't
>>work out so I ended up making my own client:
>>
>>https://github.com/jimbobhickville/python-ambariclient
>>
>>We've been using it here at Rackspace for nearly a year now and it's been
>>pretty great.  Easy to use, easy to work on, and much more full-featured
>>than the existing client.  I'd love to contribute it back as the official
>>Python client, since the existing one is broken and missing a lot of
>>features (for example, it can't create clusters since Ambari 1.7, and has
>>no support for newer features like metrics).
>>
>>I know there is some work to be done to make it integrate better with the
>>existing Ambari tooling, but I wanted to reach out and see if such an
>>addition would be welcome.  If it is, we can sort out what all
>>requirements need to be met before it can be integrated back in.
>>
>>Greg
>>
>>
>>
>


Re: Python client abandoned?

Posted by Alejandro Fernandez <af...@hortonworks.com>.
That's great Greg.

I took a quick peek and it has,
PyLint checks
Command to query Alerts
Command to restart a component on a host, and service-level restart

Can you come up with a high-level list of some of the features you want to
contribute back?

Thanks,
Alejandro

On 9/8/15, 7:44 AM, "Greg Hill" <gr...@RACKSPACE.COM> wrote:

>The Python client hasn't been updated in a year or so:
>
>https://github.com/apache/ambari/tree/trunk/ambari-client/python-client/sr
>c/main/python
>
>I tried to work with Subin to modernize it previously but things didn't
>work out so I ended up making my own client:
>
>https://github.com/jimbobhickville/python-ambariclient
>
>We've been using it here at Rackspace for nearly a year now and it's been
>pretty great.  Easy to use, easy to work on, and much more full-featured
>than the existing client.  I'd love to contribute it back as the official
>Python client, since the existing one is broken and missing a lot of
>features (for example, it can't create clusters since Ambari 1.7, and has
>no support for newer features like metrics).
>
>I know there is some work to be done to make it integrate better with the
>existing Ambari tooling, but I wanted to reach out and see if such an
>addition would be welcome.  If it is, we can sort out what all
>requirements need to be met before it can be integrated back in.
>
>Greg
>
>
>