[Katello 3.1] syncing forge modules in an air-gapped environment

Hi all,

I have two Katello 3.1 servers - K1 faces the internet, K2 is an air-gapped
environment.

K1 happily syncs with http://forge.puppetlabs.com. I then tarball and
promote the content under

/var/lib/pulp/published/puppet/http/repos/Default_Organization-Puppet_Forge-Forge/system

to K2, where it is published locally over http.

My attempts to get K2 to sync with this content (via http:// or file:///)
have been unsuccessful. K2 appeared to want modules.json, so I grabbed
that ( http://forge.puppetlabs.com/modules.json), and K2 looked happier (it
knows how many modules there are now), but still no dice. For each module
it reports:

"exception" => 'Module' object has no attribute 'filename'"

I wondered whether I'm supposed to also provide a PULP_MANIFEST file, and
whether pulp-puppet-module-builder should be used, but that seems to want
to face git (which I'm not using).

Any pointers would be much appreciated.

JC.

Hi JC,

The missing link is pulp-puppet-module-builder, but you're going to need a Git repo (it can be local). Basically you want to grab the modules you want, unpack them, commit them to a repository, and run pulp-puppet-module-builder (which will repack them, put them in a directory you specify, and create PULP_MANIFEST). That process is creating a local "forge". Then you can tell Katello to sync your local "forge".

Setting up a local git repo is as simple as:

mkdir /path/to/foo
cd /path/to/foo
git init
git checkout -b master
cp /some/files /path/to/foo
git add files
git commit -m 'initial add'

Then your Git URL for pulp-puppet-module-builder can be /path/to/foo or file:///path/to/foo.

Regards,

j

··· From: "JC" To: "Foreman users" Sent: Tuesday, November 29, 2016 10:00:51 AM Subject: [foreman-users] [Katello 3.1] syncing forge modules in an air-gapped environment

Hi all,

I have two Katello 3.1 servers - K1 faces the internet, K2 is an air-gapped environment.

K1 happily syncs with [ http://forge.puppetlabs.com/ | http://forge.puppetlabs.com ] . I then tarball and promote the content under

/var/lib/pulp/published/puppet/http/repos/Default_Organization-Puppet_Forge-Forge/system

to K2, where it is published locally over http.

My attempts to get K2 to sync with this content (via http:// or file:/// ) have been unsuccessful. K2 appeared to want modules.json , so I grabbed that ( [ http://forge.puppetlabs.com/modules.json | http://forge.puppetlabs.com/modules.json ] ), and K2 looked happier (it knows how many modules there are now), but still no dice. For each module it reports:

“exception” => ‘Module’ object has no attribute ‘filename’"

I wondered whether I’m supposed to also provide a PULP_MANIFEST file, and whether pulp-puppet-module-builde r should be used, but that seems to want to face git (which I’m not using).

Any pointers would be much appreciated.

JC.


You received this message because you are subscribed to the Google Groups “Foreman users” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [ mailto:foreman-users+unsubscribe@googlegroups.com | foreman-users+unsubscribe@googlegroups.com ] .
To post to this group, send email to [ mailto:foreman-users@googlegroups.com | foreman-users@googlegroups.com ] .
Visit this group at [ https://groups.google.com/group/foreman-users | https://groups.google.com/group/foreman-users ] .
For more options, visit [ https://groups.google.com/d/optout | https://groups.google.com/d/optout ] .

Cheers Jason. Git it is then …

On a related note, I also need to source other 'files' from the internet
(for both Katello instances) - such as Debian/Ubuntu packages and
https://maven.apache.org/. Assuming I grab this content outside of Katello
and store it locally, to sync Katello with these 'file' types, do I also
need a PULP_MANIFEST and thus to git-atise that content too?

Many thanks,
JC.

··· On 29 November 2016 at 16:49, 'Jason B. Nance' via Foreman users < foreman-users@googlegroups.com> wrote:

Hi JC,

The missing link is pulp-puppet-module-builder, but you’re going to need a
Git repo (it can be local). Basically you want to grab the modules you
want, unpack them, commit them to a repository, and run
pulp-puppet-module-builder (which will repack them, put them in a directory
you specify, and create PULP_MANIFEST). That process is creating a local
"forge". Then you can tell Katello to sync your local “forge”.

Setting up a local git repo is as simple as:

mkdir /path/to/foo
cd /path/to/foo
git init
git checkout -b master
cp /some/files /path/to/foo
git add files
git commit -m ‘initial add’

Then your Git URL for pulp-puppet-module-builder can be /path/to/foo or
file:///path/to/foo.

Regards,

j


*From: *“JC” mr.jamie.caldwell@gmail.com
*To: *“Foreman users” foreman-users@googlegroups.com
*Sent: *Tuesday, November 29, 2016 10:00:51 AM
*Subject: *[foreman-users] [Katello 3.1] syncing forge modules in an
air-gapped environment

Hi all,

I have two Katello 3.1 servers - K1 faces the internet, K2 is an
air-gapped environment.

K1 happily syncs with http://forge.puppetlabs.com. I then tarball and
promote the content under

/var/lib/pulp/published/puppet/http/repos/Default_
Organization-Puppet_Forge-Forge/system

to K2, where it is published locally over http.

My attempts to get K2 to sync with this content (via http:// or file:///)
have been unsuccessful. K2 appeared to want modules.json, so I grabbed
that ( http://forge.puppetlabs.com/modules.json), and K2 looked happier
(it knows how many modules there are now), but still no dice. For each
module it reports:

“exception” => ‘Module’ object has no attribute ‘filename’"

I wondered whether I’m supposed to also provide a PULP_MANIFEST file, and
whether pulp-puppet-module-builder should be used, but that seems to want
to face git (which I’m not using).

Any pointers would be much appreciated.

JC.


You received this message because you are subscribed to the Google Groups
"Foreman users" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to foreman-users+unsubscribe@googlegroups.com.
To post to this group, send email to foreman-users@googlegroups.com.
Visit this group at https://groups.google.com/group/foreman-users.
For more options, visit https://groups.google.com/d/optout.


You received this message because you are subscribed to a topic in the
Google Groups “Foreman users” group.
To unsubscribe from this topic, visit https://groups.google.com/d/
topic/foreman-users/BCtRyud_yco/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
foreman-users+unsubscribe@googlegroups.com.
To post to this group, send email to foreman-users@googlegroups.com.
Visit this group at https://groups.google.com/group/foreman-users.
For more options, visit https://groups.google.com/d/optout.

I haven't used the "file" repo type before, but I would guess that the answer is no as I think the file repo type is raw/unstructured (compared to the yum/puppet types where you have versions and dependencies and such).

j

··· From: "Jamie Caldwell" To: foreman-users@googlegroups.com Sent: Tuesday, November 29, 2016 11:32:43 AM Subject: Re: [foreman-users] [Katello 3.1] syncing forge modules in an air-gapped environment

Cheers Jason. Git it is then …
On a related note, I also need to source other ‘files’ from the internet (for both Katello instances) - such as Debian/Ubuntu packages and [ https://maven.apache.org/ | https://maven.apache.org/ ] . Assuming I grab this content outside of Katello and store it locally, to sync Katello with these ‘file’ types, do I also need a PULP_MANIFEST and thus to git-atise that content too?

Many thanks,
JC.

On 29 November 2016 at 16:49, ‘Jason B. Nance’ via Foreman users < [ mailto:foreman-users@googlegroups.com | foreman-users@googlegroups.com ] > wrote:

Hi JC,

The missing link is pulp-puppet-module-builder, but you’re going to need a Git repo (it can be local). Basically you want to grab the modules you want, unpack them, commit them to a repository, and run pulp-puppet-module-builder (which will repack them, put them in a directory you specify, and create PULP_MANIFEST). That process is creating a local “forge”. Then you can tell Katello to sync your local “forge”.

Setting up a local git repo is as simple as:

mkdir /path/to/foo
cd /path/to/foo
git init
git checkout -b master
cp /some/files /path/to/foo
git add files
git commit -m ‘initial add’

Then your Git URL for pulp-puppet-module-builder can be /path/to/foo or file:///path/to/foo.

Regards,

j

From: “JC” < [ mailto:mr.jamie.caldwell@gmail.com | mr.jamie.caldwell@gmail.com ] >
To: “Foreman users” < [ mailto:foreman-users@googlegroups.com | foreman-users@googlegroups.com ] >
Sent: Tuesday, November 29, 2016 10:00:51 AM
Subject: [foreman-users] [Katello 3.1] syncing forge modules in an air-gapped environment

Hi all,

I have two Katello 3.1 servers - K1 faces the internet, K2 is an air-gapped environment.

K1 happily syncs with [ http://forge.puppetlabs.com/ | http://forge.puppetlabs.com ] . I then tarball and promote the content under

/var/lib/pulp/published/puppet/http/repos/Default_Organization-Puppet_Forge-Forge/system

to K2, where it is published locally over http.

My attempts to get K2 to sync with this content (via http:// or file:/// ) have been unsuccessful. K2 appeared to want modules.json , so I grabbed that ( [ http://forge.puppetlabs.com/modules.json | http://forge.puppetlabs.com/modules.json ] ), and K2 looked happier (it knows how many modules there are now), but still no dice. For each module it reports:

“exception” => ‘Module’ object has no attribute ‘filename’"

I wondered whether I’m supposed to also provide a PULP_MANIFEST file, and whether pulp-puppet-module-builde r should be used, but that seems to want to face git (which I’m not using).

Any pointers would be much appreciated.

JC.


You received this message because you are subscribed to the Google Groups “Foreman users” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [ mailto:foreman-users+unsubscribe@googlegroups.com | foreman-users+unsubscribe@googlegroups.com ] .
To post to this group, send email to [ mailto:foreman-users@googlegroups.com | foreman-users@googlegroups.com ] .
Visit this group at [ https://groups.google.com/group/foreman-users | https://groups.google.com/group/foreman-users ] .
For more options, visit [ https://groups.google.com/d/optout | https://groups.google.com/d/optout ] .


You received this message because you are subscribed to a topic in the Google Groups “Foreman users” group.
To unsubscribe from this topic, visit [ https://groups.google.com/d/topic/foreman-users/BCtRyud_yco/unsubscribe | https://groups.google.com/d/topic/foreman-users/BCtRyud_yco/unsubscribe ] .
To unsubscribe from this group and all its topics, send an email to [ mailto:foreman-users+unsubscribe@googlegroups.com | foreman-users+unsubscribe@googlegroups.com ] .
To post to this group, send email to [ mailto:foreman-users@googlegroups.com | foreman-users@googlegroups.com ] .
Visit this group at [ https://groups.google.com/group/foreman-users | https://groups.google.com/group/foreman-users ] .
For more options, visit [ https://groups.google.com/d/optout | https://groups.google.com/d/optout ] .


You received this message because you are subscribed to the Google Groups “Foreman users” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [ mailto:foreman-users+unsubscribe@googlegroups.com | foreman-users+unsubscribe@googlegroups.com ] .
To post to this group, send email to [ mailto:foreman-users@googlegroups.com | foreman-users@googlegroups.com ] .
Visit this group at [ https://groups.google.com/group/foreman-users | https://groups.google.com/group/foreman-users ] .
For more options, visit [ https://groups.google.com/d/optout | https://groups.google.com/d/optout ] .

Ahhh, yes, that makes sense. Thanks again Jason.

··· On 29 November 2016 at 19:52, 'Jason B. Nance' via Foreman users < foreman-users@googlegroups.com> wrote:

I haven’t used the “file” repo type before, but I would guess that the
answer is no as I think the file repo type is raw/unstructured (compared to
the yum/puppet types where you have versions and dependencies and such).

j


*From: *“Jamie Caldwell” mr.jamie.caldwell@gmail.com
*To: *foreman-users@googlegroups.com
*Sent: *Tuesday, November 29, 2016 11:32:43 AM
*Subject: *Re: [foreman-users] [Katello 3.1] syncing forge modules in an
air-gapped environment

Cheers Jason. Git it is then …
On a related note, I also need to source other ‘files’ from the internet
(for both Katello instances) - such as Debian/Ubuntu packages and
https://maven.apache.org/. Assuming I grab this content outside of
Katello and store it locally, to sync Katello with these ‘file’ types, do I
also need a PULP_MANIFEST and thus to git-atise that content too?

Many thanks,
JC.

On 29 November 2016 at 16:49, ‘Jason B. Nance’ via Foreman users < > foreman-users@googlegroups.com> wrote:

Hi JC,

The missing link is pulp-puppet-module-builder, but you’re going to need
a Git repo (it can be local). Basically you want to grab the modules you
want, unpack them, commit them to a repository, and run
pulp-puppet-module-builder (which will repack them, put them in a directory
you specify, and create PULP_MANIFEST). That process is creating a local
"forge". Then you can tell Katello to sync your local “forge”.

Setting up a local git repo is as simple as:

mkdir /path/to/foo
cd /path/to/foo
git init
git checkout -b master
cp /some/files /path/to/foo
git add files
git commit -m ‘initial add’

Then your Git URL for pulp-puppet-module-builder can be /path/to/foo or
file:///path/to/foo.

Regards,

j


*From: *“JC” mr.jamie.caldwell@gmail.com
*To: *“Foreman users” foreman-users@googlegroups.com
*Sent: *Tuesday, November 29, 2016 10:00:51 AM
*Subject: *[foreman-users] [Katello 3.1] syncing forge modules in an
air-gapped environment

Hi all,

I have two Katello 3.1 servers - K1 faces the internet, K2 is an
air-gapped environment.

K1 happily syncs with http://forge.puppetlabs.com. I then tarball and
promote the content under

/var/lib/pulp/published/puppet/http/repos/Default_
Organization-Puppet_Forge-Forge/system

to K2, where it is published locally over http.

My attempts to get K2 to sync with this content (via http:// or file:///)
have been unsuccessful. K2 appeared to want modules.json, so I grabbed
that ( http://forge.puppetlabs.com/modules.json), and K2 looked happier
(it knows how many modules there are now), but still no dice. For each
module it reports:

“exception” => ‘Module’ object has no attribute ‘filename’"

I wondered whether I’m supposed to also provide a PULP_MANIFEST file,
and whether pulp-puppet-module-builder should be used, but that seems to
want to face git (which I’m not using).

Any pointers would be much appreciated.

JC.


You received this message because you are subscribed to the Google Groups
"Foreman users" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to foreman-users+unsubscribe@googlegroups.com.
To post to this group, send email to foreman-users@googlegroups.com.
Visit this group at https://groups.google.com/group/foreman-users.
For more options, visit https://groups.google.com/d/optout.


You received this message because you are subscribed to a topic in the
Google Groups “Foreman users” group.
To unsubscribe from this topic, visit https://groups.google.com/d/
topic/foreman-users/BCtRyud_yco/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
foreman-users+unsubscribe@googlegroups.com.
To post to this group, send email to foreman-users@googlegroups.com.
Visit this group at https://groups.google.com/group/foreman-users.
For more options, visit https://groups.google.com/d/optout.


You received this message because you are subscribed to the Google Groups
"Foreman users" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to foreman-users+unsubscribe@googlegroups.com.
To post to this group, send email to foreman-users@googlegroups.com.
Visit this group at https://groups.google.com/group/foreman-users.
For more options, visit https://groups.google.com/d/optout.


You received this message because you are subscribed to a topic in the
Google Groups “Foreman users” group.
To unsubscribe from this topic, visit https://groups.google.com/d/
topic/foreman-users/BCtRyud_yco/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
foreman-users+unsubscribe@googlegroups.com.
To post to this group, send email to foreman-users@googlegroups.com.
Visit this group at https://groups.google.com/group/foreman-users.
For more options, visit https://groups.google.com/d/optout.