0.01
Repository is archived
No commit activity in last 3 years
No release in over 3 years
Helps you to use Katello's API calls from your app
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

~> 1.4
~> 0.4
 Project Readme

Katello API bindings for Ruby¶ ↑

Summary¶ ↑

require 'katello_api'
envs = KatelloApi::Resources::Environment.new(:base_url => 'https://localhost/katello',
                                              :username => 'admin',
                                              :password => 'admin')

data, raw_response = envs.index(:organization_id => "ACME_Corporation")
pp data # parsed data of the response
pp raw_response # raw string of the response body

Description¶ ↑

This gem contains Katello API bindings for the Ruby language. The bindings are generated from API documentation using Apidoc tool.

The bindings brings support for new versioned API which is not complete yet. The number of supported controllers is limited but more are coming soon.

Regenerating bindings¶ ↑

The code for generating the bindings is a part of this repo. The generator needs a running Foreman instance with Katello as and engine to load the ‘apidoc.json`.

In case the ‘/apidoc` reports some issues with loading modules, you can temporarily commenting out the following line in Foreman’s ‘config/initializers/wrap_parameters.rb` file:

wrap_parameters :format => [:json]

Usage:

$ bin/generate.rb --help
Generate Ruby API bindings for Katello's API from Apipie docs.

USAGE: bin/generate.rb [FLAGS]
    -u, --url APIDOC_URL             By default http://localhost:3000/apidoc
        --api-version VERSION        version of the API to hit (default: v2)

Only files under lib/katello_api/resources are touched by the generator.

Authentication¶ ↑

Katello API supports authentication with username/password or OAuth. For use of OAuth with the bindings you only have to change the params

envs = KatelloApi::Resources::Environment.new(:base_url => 'https://localhost:3000/katello',
                                              :oauth    => { :consumer_key    => 'mykey',
                                                             :consumer_secret => 'shhhh' })

License¶ ↑

The bindings are released under MIT license