Hi
I am trying to install and configure foreman-proxy 1.12 (in one of the
node, say compile master) using the module available at
https://forge.puppet.com/theforeman/foreman_proxy/3.0.1/compatibility
While running “puppet agent -t” (to install and configure foreman-proxy) ,
I am getting the below error on my node. Can you please help me to find
what could be the issue?
Error: Could not retrieve catalog from remote server: Error 400 on SERVER:
Invalid parameter dns_realm on Class[Foreman_proxy] at
/dev/modules/fmanproxy/manifests/config.pp:128 on node poc-agent.local
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
config.pp:128 ===> The line#128 in config.pp file is a close curly brace of
the class “class { '::foreman_proxy':”
Further details
I have separate machine for CA, CM, Foreman
I have the below to achieve this
I have my own module called fmanproxy which will invoke the external
module.
Why do I have my own module?
To customise/set the variables and values which I want to pass to
external module
What I have in my module? Or how I am calling external module classes?
the init.pp file in my module fmanproxy, I have the below
class fmanproxy (
<ALL my Variables>
$dns_realm = $fmanproxy::params::dns_realm,
.
.
.
} inherits ::fmanproxy::params {
# validate parameters here
class { '::fmanproxy::install': } ->
class { '::fmanproxy::config': } ~>
class { '::fmanproxy::service': } ->
Class['::fmanproxy']
}
···
=================================================the install.pp file in my module fmanproxy, I have the below
class fmanproxy::install {
<Setting up my custom REPO and installing, nothing else>
}
the config.pp file in my module fmanproxy, I have the below
class fmanproxy::config {
class { '::foreman_proxy':
bind_host => $::fmanproxy::bind_host,
bmc => $::fmanproxy::bmc,
dns_realm => $::fmanproxy::dns_realm,
.
.
.
.
} ## End of class ::foreman_proxy
# Install the foreman_proxy
include ::foreman_proxy
} ## End of fmanproxy::config
=================================================
the service.pp file in my module fmanproxy, I have nothing
class fmanproxy::service {
# include ::foreman_proxy::service
}
=================================================
the params.pp file in my module fmanproxy, I have the variables as below
class fmanproxy::params {
$custom_repo = true
$dns_zone = $::domain
$dns_realm = upcase($dns_zone)
.
.
.
.
} ## End of Main class
=================================================
What I have in my Puppetfile
I have added the below line to download the module
mod 'theforeman/foreman_proxy', '3.0.1'
I have the below lines to download my custom module
mod "fmanproxy",
:git => “MY_REPO_URL”,
:ref => ‘MY_BRANCH_NAME’
Thanks
Sankara