-
Notifications
You must be signed in to change notification settings - Fork 231
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] upstream CI: Add support for multihost testing. #1010
Draft
rjeffman
wants to merge
8
commits into
freeipa:master
Choose a base branch
from
rjeffman:multihost_upstream
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Commits on May 19, 2023
-
upstream CI multihost: Create multihost environment
To be able to use a multihost testing environment, it is required that a domain with a server along with clients or replcas and clients be deployed. This environment is much more complex to obtain using the current CI infrastructure that uses molecule and containers, due to the need of more isolation between the testing nodes. By using Github actions, and Github's hosted macOS runner along with Vagrant to spawn multiple virtual hosts, it is possible to create an environment with a few virtual machines, that provided the required isolation. This setup allows for both deployment role testing, and multihost testing. The runner has to be a macOS runner due to Github restrictions on nested virtualization. The runner has support for Python 3, and the latest versio of ansible-core is installed through 'pip. This host has a 3-core vCPU, 14 GB of RAM and 14Gb of storage. The guests configuration are: * server.ipa.test: 2500 MB of RAM * rep-01.ipa.test: 2500 MB of RAM * cli-01.ipa.test: 768 MB of RAM All guests are deployed with the oficial Fedora 38 cloud-base image. Workflow steps are executed from '<repo>/tests/multihost' unless this is overriden with 'working-directory'. As Github sets the proper working directory only when 'run' is executed, the default directory is the repository root (e.g. setting 'working-directory: .' will set the working directory to the repository root). Although it is possible to change the working-directory, a different configuration has not been tested. The playbooks were created so that environment variables can be used to change the domain configuration. This can be used to create multiple parallel jobs in a test matrix. The default configuration installs a server with embedded DNS, a replica with no extra service, and a client.
Configuration menu - View commit details
-
Copy full SHA for 3ce5b36 - Browse repository at this point
Copy the full SHA 3ce5b36View commit details -
Configuration menu - View commit details
-
Copy full SHA for 418571d - Browse repository at this point
Copy the full SHA 418571dView commit details -
Configuration menu - View commit details
-
Copy full SHA for f67d305 - Browse repository at this point
Copy the full SHA f67d305View commit details -
Configuration menu - View commit details
-
Copy full SHA for 68475a0 - Browse repository at this point
Copy the full SHA 68475a0View commit details -
Configuration menu - View commit details
-
Copy full SHA for ed27baa - Browse repository at this point
Copy the full SHA ed27baaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 44e81eb - Browse repository at this point
Copy the full SHA 44e81ebView commit details -
Configuration menu - View commit details
-
Copy full SHA for af66fc9 - Browse repository at this point
Copy the full SHA af66fc9View commit details -
Configuration menu - View commit details
-
Copy full SHA for ff8207d - Browse repository at this point
Copy the full SHA ff8207dView commit details
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.