Use puppet_repositories from theforeman.operations collection#1289
Conversation
76ee84e to
46493e7
Compare
ekohl
left a comment
There was a problem hiding this comment.
This should document how to get the ansible collection.
Another thing I dislike is that the requirements states pulp_installer is needed, but I won't need that for most operations. It means I'll pull in a lot more than I really need.
Now I also need to get stuff from galaxy. As someone who dislikes Ansible, this feels like a step back. I'm leaning to holding off on using any collections until there's a real benefit. I can see it in complex roles like where we now use hammer, but here it feels complex. It is literally more lines of code even if you don't take the added dependency into account.
ca84b33 to
dc24eba
Compare
|
The idea of the operations collection was that we also dogfood it, and forklift seems like a good place for dogfooding :) We could split the requirements files into Foreman and Pulp easily, would that help? Eric and I expected this to be a problem at some point due to different usecases. |
9daf9e8 to
02abd95
Compare
I think that would be a good idea. |
9b126a2 to
dce3e68
Compare
I am not seeing the value in splitting. Having one requirements.yaml means users running a single command, means our CI not having to track job-to-job which file to install from and when I checked locally this totaled 6 MB. If I extrapolate, and we started using FAM in some of the seeding roles, would that be another requirements.yaml file? |
dce3e68 to
033e520
Compare
ekohl
left a comment
There was a problem hiding this comment.
I still think this is a bad execution.
First of all, we lose the ability to upgrade Puppet between releases. theforeman/foreman-operations-collection#20 is IMHO a blocker to merging it.
Then it unconditionally enables Katello repositories. That's also a big regression IMHO. Foreman must be able to install without Katello and the best way to test it is to not have the repository present. That it slows down tests is maybe a smaller issue but it also means that Foreman's pipeline can be red if the Katello repositories are offline.
Lastly I really dislike adding a dependency on ansible-galaxy, especially if it also pulls in the whole pulp installer with all its dependencies.
I am missing something here. Katello repositories are only enabled when a variable is defined for that purpose: https://github.com/theforeman/foreman-operations-collection/blob/develop/roles/foreman_repositories/tasks/redhat.yml#L26
You aren't really saying why you dislike having the dependency, or why it is bad for Forklift. Can you expand in a way that I can either make changes to address or explain more about it? |
|
I'll get around to updating this one once #1313 is in as I feel like I should get that set of changes in first and then make this one. |
ekohl
left a comment
There was a problem hiding this comment.
In general I'm not a fan of Ansible and having to rely on more Ansible tools is something that I'm hesitant about.
For example, if I want to make a change to a role that's used and test it out, I know how to do it and easily send a PR. Instead of ansible-galaxy, can I point it to a git checkout to develop on?
You can do: I could add this to the docs to give some lead in for developers to know how to do it. |
|
See #1313 for updated documentation regarding questions here. That PR is the first use of the collection that I want to get in and then come back and update this PR. |
033e520 to
9ddc297
Compare
9ddc297 to
264cbba
Compare
|
Thanks @ehelms! I think there is one thing left: the old role used We can either add a translation step that does I prefer the later. |
264cbba to
be1699f
Compare
|
Done (I hope) |
|
Ha!
forklift/vagrant/lib/forklift/box_factory.rb Line 102 in 46e7829 |
|
@ehelms would you mind finishing this up? the recent puppet.com key rotation broke nightly pipelines, and I expect this to fix it once and forever |
be1699f to
f2d58a0
Compare
|
Fixed up that one spot and dropped that playbook |
| @@ -1,27 +0,0 @@ | |||
| - hosts: all | |||
There was a problem hiding this comment.
Should we drop https://github.com/theforeman/forklift/blob/master/playbooks/bats_pipeline_foreman_nightly.yml at the same time for consistency?
There was a problem hiding this comment.
probably a good idea, yeah, even if unrelated to the original change here.
|
There's probably a few things we ought to clean up, I am happy to do that separately from the intent of this change. |
|
I dropped the one file Ewoud pointed out in #1383 If you see more, please do the same :) |
No description provided.