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

Re: [Pulp-list] pulp-puppet theory of operation/use



I answered this in a similar thread but will add it here as well. We're working on that issue now. The 2.0 release used the modules.json API but not the releases.json API. It's being worked on right now and will be available in the 2.1 release in early April.

If you're interested, I can let you know when it makes it to an testing build. If everything continues the way it's been going, that should be either this Friday or the following Friday's testing build.


On 01/30/2013 08:32 AM, Peter Hehn wrote:
Yes, you're right Steven.  Looking at the request / responses to a
puppetforge query / installation / installation w specific module
version it looks simple enough that I might have a go at hacking
together a simple cgi to spew json responses from mongodb (just to prove
the concept)...

puppet module search tomcat....

GET /modules.json?q=tomcat HTTP/1.1
Host: forge.puppetlabs.com <http://forge.puppetlabs.com>
Accept: */*

HTTP/1.1 200 OK
Server: nginx/1.2.1
Date: Tue, 29 Jan 2013 11:50:18 GMT
Content-Type: application/json
Content-Length: 2116
Connection: keep-alive
Status: 200 OK
X-Frame-Options: sameorigin
X-XSS-Protection: 1; mode=block
X-Node: forgeweb01
X-Revision: fb00b97e9f189bebf0bdb5bb8c66012dcc5acdc9

[{"author":"llehmijo","full_name":"llehmijo/tomcat7_rhel","name":"tomcat7_rhel","desc":"Tomcat
7 for RHEL
6","project_url":"https://github.com/laurilehmijoki/tomcat7_rhel","releases":[{"version":"1.4.0"},{"version":"1.3.0"},{"version":"1.2.0"},{"version":"1.1.1"},{"version":"1.1.0"},{"version":"1.0.0"},{"version":"0.3.3"},{"version":"0.3.2"},{"version":"0.3.1"},{"version":"0.3.0"},{"version":"0.2.0"},{"version":"0.1.2"},{"version":"0.1.1"},{"version":"0.1.0"}],"version":"1.4.0","tag_list":["rhel","centos","tomcat7","tomcat"]},{"author":"cloudfront","full_name":"cloudfront/tomcat","name":"tomcat","desc":"#
Apache Tomcat Module
#","project_url":"https://github.com/terrancesnyder/bigdata","releases":[{"version":"0.1.0"}],"version":"0.1.0","tag_list":["tomcat"]},{"author":"yguenane","full_name":"yguenane/tomcat6","name":"tomcat6","desc":"This
module aims to install tomcat6 on EL/Debian platforms using their
respective package managers and not by compiling the source
code","project_url":"https://github.com/Spredzy/puppet-tomcat6","releases":[{"version":"0.0.5"},{"version":"0.0.3"},{"version":"0.0.1"}],"version":"0.0.5","tag_list":["tomcat","servlet","tomcat6"]},{"author":"multiverse","full_name":"multiverse/Tomcat","name":"Tomcat","desc":"Module
for deploying applications to
Tomcat.","project_url":"","releases":[{"version":"0.0.1"}],"version":"0.0.1","tag_list":["tomcat","deployment","wars","applications"]},{"author":"jeffmccune","full_name":"jeffmccune/tomcat","name":"tomcat","desc":"This
puppet module manages the [Apache Tomcat](http://tomcat.apache.org/)
Java Servlet
implementation.","project_url":"http://github.com/puppetlabs/puppetlabs-tomcat","releases":[{"version":"1.0.1"},{"version":"1.0.0"}],"version":"1.0.1","tag_list":["web","java","jsp","webapp","tomcat","service","servlet","puppetlabs"]},{"author":"camptocamp","full_name":"camptocamp/tomcat","name":"tomcat","desc":"Tomcat
Puppet
module","project_url":"http://github.com/camptocamp/puppet-tomcat","releases":[{"version":"0.0.2"},{"version":"0.0.1"}],"version":"0.0.2","tag_list":["webservers","web","java","jsp","languages"]}]


puppet module install cloudfront/tomcat...

GET /api/v1/releases.json?module=cloudfront/tomcat HTTP/1.1
Host: forge.puppetlabs.com <http://forge.puppetlabs.com>
Accept: */*

HTTP/1.1 200 OK
Server: nginx/1.2.1
Date: Tue, 29 Jan 2013 11:50:46 GMT
Content-Type: application/json
Content-Length: 131
Connection: keep-alive
Status: 200 OK
X-Frame-Options: sameorigin
X-XSS-Protection: 1; mode=block
X-Node: forgeweb01
X-Revision: fb00b97e9f189bebf0bdb5bb8c66012dcc5acdc9

{"cloudfront/tomcat":[{"file":"/system/releases/c/cloudfront/cloudfront-tomcat-0.1.0.tar.gz","version":"0.1.0","dependencies":[]}]}


puppet module install cloudfront/tomcat --version 0.1.0...

GET /api/v1/releases.json?module=cloudfront/tomcat&version=0.1.0 HTTP/1.1
Host: forge.puppetlabs.com <http://forge.puppetlabs.com>
Accept: */*

HTTP/1.1 200 OK
Server: nginx/1.2.1
Date: Tue, 29 Jan 2013 11:51:57 GMT
Content-Type: application/json
Content-Length: 131
Connection: keep-alive
Status: 200 OK
X-Frame-Options: sameorigin
X-XSS-Protection: 1; mode=block
X-Node: forgeweb03
X-Revision: fb00b97e9f189bebf0bdb5bb8c66012dcc5acdc9

{"cloudfront/tomcat":[{"file":"/system/releases/c/cloudfront/cloudfront-tomcat-0.1.0.tar.gz","version":"0.1.0","dependencies":[]}]}

On 30 January 2013 07:09, Steven Roberts <strobert strobe net
<mailto:strobert strobe net>> wrote:

    okay, I stand corrected on the content not being published, pulp_puppet
    publishes into a different spot than pulp_rpm so couldn't find it at
    first.  Did some more digging and found it at:

    /var/www/pulp_puppet/http/repos/

    after some more poking I also came across this blog post:
    http://www.pulpproject.org/2012/08/29/mirroring-puppet-forge-with-pulp/

    I think I am seeing what Peter is getting at now though.  the
    'puppet module' tool looks like it is expecting some forge API foo

    here is the bit from puppet's forge.rb:
    response =
    repository.make_http_request("/modules.json?q=#{URI.escape(term)}")

    so looks like the puppet module tools are expecting some URL handling
    in adiditon to the basic json content.

    I am wondering if some of it is related to:
    http://projects.puppetlabs.com/issues/5033

    Steve

    On Tue, Jan 29, 2013 at 09:25:21PM -0800, Steven Roberts wrote:
     > On Fri, Jan 18, 2013 at 09:55:16AM -0500, Jay Dobies wrote:
     > >
     > > >so in 2.0 we've got the repo side going and in theory could then
     > > >point "puppet module" at the pulp server and get modules installed
     > > >and updated on the pupept master that way.
     > > >
     > > >Steve
     > >
     > > That's exactly right.
     >
     > On Wed, Jan 30, 2013 at 12:13:20AM +0000, Peter Hehn wrote:
     > > Hello,
     > >
     > > I've only recently stumbled across Pulp, and I'm loving the
    repository
     > > syncing side of it, but I wonder if I'm missing a trick...  I'm
    hoping
     > > to
     > > access those modules using "puppet module install / search" but
    as far
     > > as I
     > > can tell the JSON API just isn't there.
     > >
     > > Have I missed something in the documentation?  I can lend a hand if
     > > that
     > > task's outstanding (just thought I'd check before I re-invent)
     >
     > Jay, I decided to try out the puppet module use to see if I can
     > replicate what Peter is seeing.
     >
     > I made a repo, uploaded a module and ran the publish.  but I'm not
     > seeing any files in the published dir.
     >
     > Running 2.1.0-0.1.alpha
     >
     > Steve
     >
     > _______________________________________________
     > Pulp-list mailing list
     > Pulp-list redhat com <mailto:Pulp-list redhat com>
     > https://www.redhat.com/mailman/listinfo/pulp-list



------------------------------------------------------------------------
This email was sent by a company owned by Pearson plc, registered office
at 80 Strand, London WC2R 0RL.  Registered in England and Wales with
company number 53723.


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


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