Introduce a plain foreman flavor - #511
Conversation
48a7446 to
6aad15c
Compare
|
Our CI is currently not designed to run flavor specific tests https://github.com/theforeman/foremanctl/blob/master/.github/workflows/test.yml#L54, it adds all features but surely that won't make sense, as we want to only add relevent features for a flavor(ex: add bmc to plain foreman does not make any sense), Thinking out loud:- |
If you're talking about a GitHub Actions workflow: I think that does make sense. We probably can't test all combinations, but finding a good set is exactly what I think we should do. |
yes,and i think without flavor specific workflows we might end up with a single tests workflow which adds all available features(as of today) and will keep CI red |
a0a4d57 to
2c3a344
Compare
|
I'd still like to see this. Some PRs that are opened because of this, but can be merged already:
After that I'll rebase. |
2c3a344 to
ddb679e
Compare
|
The exception is that Lines 11 to 22 in 4d2d756 That means the parameters.yaml file doesn't exist.
|
Ah, I moved the file around and it tries to derive the root from the file location. |
Also ensures import_paths and export_paths are always defined.
ddb679e to
905eb13
Compare
| import pytest | ||
| import yaml | ||
|
|
||
| from tests.conftest import PARAMETERS_FILE |
There was a problem hiding this comment.
I wasn't sure about this, but I see tests/feature/foreman-proxy/base_test.py also imports FOREMAN_PROXY_PORT.
Then there's also this:
foremanctl/tests/migration_test.py
Lines 7 to 9 in 9ffe360
Should it be a global fixture?
This prepares the path for a plain Foreman without Katello.
This allows installing a plain Foreman or plain Foreman Proxy, without Katello.
This moves Candlepin and Pulp behind the feature flags. Candlepin is only deployed on Foreman with Katello servers while Pulp is deployed on Katello enabled servers.
905eb13 to
b669faa
Compare
Why are you introducing these changes? (Problem description, related links)
Today Foreman can be deployed without Katello on both RPM and Debian installations and this allows users to mirror that.
What are the changes introduced in this pull request?
The flavor itself is rather trivial, but there are some changes made to only deploy certain roles depending on the features enabled. That is likely incomplete. In particular, Apache is not yet modified to only deploy the required services. In the future when a plain foreman-proxy role is introduced then that will need adjustment.
There are also heavy testing changes, heavily based on #509 which in turn is based on #508. I'm wondering how much of those commits already belong there.
Right now the test suite fails because the
foremanfeature is only set in the flavor and not in the parameters.It's also important to look at how this will play into #431.
How to test this pull request
Steps to reproduce:
foremanctl deploy --flavor foremanChecklist