[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [Pulp-list] Runcible: Pulp V2 Ruby API Bindings Alpha



First off, thank you. Making this sort of thing available is fantastic to the Pulp community.

Two notes:

- It's good that the tests can be run against a live Pulp installation, but is there an easy way to mock that out? If devs are going to use this, they'll want to unit test, which means simulating server responses so a live server isn't needed. Could be a useful enhancement.

- This one is harder to explain. I'd say to be careful using the term "Pulp V2 Ruby API Bindings" and phrase "to provide the community with a set of Ruby API bindings for Pulp". I've only taken a quick peek at the code, but what you're providing is an RPM spin on our APIs. That's totally useful to that end and makes sense for Katello, but it means this isn't quite for Pulp (the platform) as it'll be misleading (arguably broken) for devs not using the RPM plugins.

Again, that's not to say it isn't useful or appreciated. I am sure there are people who will be happy to use these. I just want to be sure it's pitched correctly to indicate its tight relationship to the RPM plugins and their functionality.




On 10/25/2012 11:20 AM, Eric Helms wrote:
Howdy Pulp folks,

As some of you may know, the Katello project has been working to integrate Pulp V2 within our code base.  As part of this migration, we decided to move the API bindings for Pulp out of our core project and into a stand alone Ruby gem in order to provide the community with a set of Ruby API bindings for Pulp.  At this point, the Katello side has neared completion of our API calls to the newer Pulp APIs and as such feel a good enough time to release an alpha version of our gem Runcible for perusal by others.

Things of note or that may interest Pulp developers (or give insight into how the API is being used, specifically the Extensions mentioned below):

   - Included is a set of integration tests using the rubygem VCR to capture HTTP traffic
     * This means that ALL tests can be and are run against a live Pulp installation
     * The currently tested version is noted at the top of the README

   - There are direct API bindings to Pulp calls

   - There are a set of Extensions to some Pulp objects designed to make common operations easier, for example:
     * Providing functions to create a Repository with an importer and distributor
     * Functions that specifically retrieve objects without native API calls, e.g. RPMs, Errata, Distributions etc. using search syntax
     * Objects to represent configurations for specific importers and distributors (see lib/runcible/extensions/YumImporter or YumDistributor for examples)

   - Every API call is not currently covered, as the focus has been on Katello requirements, however, this is a community project

Availability:

   Git:      https://github.com/Katello/runcible
   Rubygems: https://rubygems.org/gems/runcible
   RPM:      Can be built, currently not available in any public repository


Thanks,
Eric Helms

_______________________________________________
Pulp-list mailing list
Pulp-list redhat com
https://www.redhat.com/mailman/listinfo/pulp-list



--
Jay Dobies
Freenode: jdob @ #pulp
http://pulpproject.org | http://blog.pulpproject.org


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]