Deploy foreman via ansible?

Hi All,

So, my foreman activities thus far were POC, evaluation, and testing.
Looking good.

Now, boss man wants me to make a new instance (production, latest and
greatest on Ubuntu 16.04), and make it so that it can be deployed via
ansible. Ideally w/ config files in git, rather than generated on the
fly via foreman-installer. Is this possible/feasible?

And how do I get my hand-carved templates from 1.11.4 into the new
instance 1.12.1? Can I present those during the install phase somehow?

As all I've done so far is to install via installer I wouldn't know
where to start …

Cheers,
Andrej

Hi,

If you interested in Ansible-drive installation, you can take a look
at https://github.com/Katello/forklift/tree/master/playbooks.
However, they still use the installer at the backend.

Storing config files for foreman in git goes a bit against how the
installer is used.
Not saying it would not be possibe, but IMO too much work for little benefit.
You should be able to use the puppet modules from the installer outside
of packages, + you can store the installer answer files in your git
repo as well.

– Ivan

··· On Fri, Aug 19, 2016 at 3:47 AM, Andrej wrote: > Hi All, > > So, my foreman activities thus far were POC, evaluation, and testing. > Looking good. > > > Now, boss man wants me to make a new instance (production, latest and > greatest on Ubuntu 16.04), and make it so that it can be deployed via > ansible. Ideally w/ config files in git, rather than generated on the > fly via foreman-installer. Is this possible/feasible? > > And how do I get my hand-carved templates from 1.11.4 into the new > instance 1.12.1? Can I present those during the install phase somehow? > > As all I've done so far is to install via installer I wouldn't know > where to start ... > > > > Cheers, > Andrej > > -- > 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.

Hi

> Hi,
>
> If you interested in Ansible-drive installation, you can take a look
> at https://github.com/Katello/forklift/tree/master/playbooks.
> However, they still use the installer at the backend.
>
> Storing config files for foreman in git goes a bit against how the
> installer is used.
> Not saying it would not be possibe, but IMO too much work for little benefit.
> You should be able to use the puppet modules from the installer outside
> of packages, + you can store the installer answer files in your git
> repo as well.
[…]

Have a look at this Ansible playbook [1], which should probably already cover
most of your requirements:

  • setup database (SQLite or MySQL)
  • setup webserver (plain nginx as a proxy or nginx-passenger)
  • setup isc-dhcp-server
  • setup TFTP server
  • setup foreman-proxy
  • setup Foreman including configuration (templates, hosts, domains, etc.)

All roles can be used indepently and are quite customizable. It doesn't make
use of the foreman-installer and uses the plain Foreman packages in the
background.

In addition it makes use of foreman-yml for the configuration. Meaning you can
define your whole Foreman config including templates, links to operating
systems, etc. in a YAML file without having to worry about IDs.

Feel free to contribute or send me PMs if you need further help! :slight_smile:

[1] https://github.com/adfinis-sygroup/foreman-ansible
[2] https://github.com/adfinis-sygroup/foreman-yml

Cheers

Michael

··· On Fri, 19 Aug 2016 08:23:49 +0200 Ivan Necas wrote:

> Hi,

Hi Ivan!

> If you interested in Ansible-drive installation, you can take a look
> at https://github.com/Katello/forklift/tree/master/playbooks.
> However, they still use the installer at the backend.

Thanks Ivan, I'll look at that one.

> Storing config files for foreman in git goes a bit against how the
> installer is used.
> Not saying it would not be possibe, but IMO too much work for little benefit.

Cheers - will have a discussion w/ the boss.

··· On 19 August 2016 at 18:23, Ivan Necas wrote:

– Ivan


Andrej

Hi Michael!

> Have a look at this Ansible playbook [1], which should probably already cover
> most of your requirements:
>
> * setup database (SQLite or MySQL)
> * setup webserver (plain nginx as a proxy or nginx-passenger)
> * setup isc-dhcp-server
> * setup TFTP server
> * setup foreman-proxy
> * setup Foreman including configuration (templates, hosts, domains, etc.)
>
> All roles can be used indepently and are quite customizable. It doesn't make
> use of the foreman-installer and uses the plain Foreman packages in the
> background.
>
> In addition it makes use of foreman-yml for the configuration. Meaning you can
> define your whole Foreman config including templates, links to operating
> systems, etc. in a YAML file without having to worry about IDs.

This sounds exactly like what I was after =}

> Feel free to contribute or send me PMs if you need further help! :slight_smile:
>
> [1] https://github.com/adfinis-sygroup/foreman-ansible
> [2] https://github.com/adfinis-sygroup/foreman-yml

Thank you very much; if we go down that route you may find some
postgres work coming your way ;}

> Cheers
>
> Michael
Cheers

··· On 19 August 2016 at 18:34, Michael Hofer wrote: -- Andrej