I'm trying to use the FreeIPA Puppet module, and I copied the below module, changing the data to reflect my environment.

class {'freeipa':
    ipa_role             => 'client',
    domain               => 'example.lan',
    domain_join_password => 'vagrant123',
    install_epel         => true,
    ipa_master_fqdn      => 'ipa-server-1.example.lan',

Unfortunately, using this code gave me the following error:

Evaluation Error: Error while evaluating a Resource Statement, Class[Freeipa]:
  has no parameter named 'domain_join_password'
  expects a value for parameter 'ip_address' at /etc/puppetlabs/code/environments/production/manifests/site.pp:322:2 on node puppet-agent

I tried to see if other people had implemented this module and found nothing. I went to their GitLab repository here, and could not find any reference of the client configuration. Perhaps it's new, or the documentation is outdated and the functionality was removed? If someone has experience with this, please point me in the right direction on how to resolve this issue.


You can confirm that there is no class parameter domain_join_password by looking at the source in ./freeipa/manifests/init.pp. Their documentation appears to be out of date.

Looking at the history of init.pp, the parameter was removed in this commit 3 months ago. It seems to have been renamed to password_usedto_joindomain.

  • Your comment helped because between this and viewing the issues in the error output I was able to get it to work. For those looking for the rest of the solution, add the password_usedto_joindomain, puppet_admin_password, directory_services_password, and ip_address attributes to the class to install the client. The IP address must be the IP address of the client machine so you can use the $ipaddress fact to set it. – AndreasKralj Feb 20 at 22:58
  • Well it was working, but I realized the reason why is because I had already installed the freeipa-client on there. I uninstalled it and I'm now getting a different error, but I'll post a different question for that one and mark this one resolved, since the structure of the class is fine, it's the data that's incorrect now. – AndreasKralj Feb 20 at 23:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.