Skip to content

ci: add TMT plan for passkey testing in PRCI#8672

Open
ikerexxe wants to merge 2 commits into
SSSD:masterfrom
ikerexxe:test-tmt-passkey
Open

ci: add TMT plan for passkey testing in PRCI#8672
ikerexxe wants to merge 2 commits into
SSSD:masterfrom
ikerexxe:test-tmt-passkey

Conversation

@ikerexxe
Copy link
Copy Markdown
Contributor

@ikerexxe ikerexxe commented May 5, 2026

Summary

This PR introduces testing infrastructure for SSSD passkey functionality using TMT and testing farm. It is designed to automate verification across diverse environments and integrate directly into the existing Packit CI workflow.

  • Integrates passkey tests with Packit CI workflow to run automatically on pull requests.
  • Supports Fedora (all versions) and CentOS Stream 10.
  • Support testing across multiple identity providers (IPA, LDAP, Samba) in containerized environments.

Changes Made

  • Adds comprehensive TMT test plans in plans/passkey/.
  • Configures Packit integration to trigger tests on pull requests.
  • Implements automated provisioning logic for virtual machines and nested containers.
  • Standardizes log collection and artifact storage.

Test Plan

The TMT plan follows an automated lifecycle for each PR:

  1. Provisions virtual machines with sufficient resources for containerized testing.
  2. Sets up sssd-ci-container environment.
  3. Installs SSSD from PR-specific COPR builds.
  4. Executes passkey functionality tests with detailed logging.
  5. Collects test artifacts for debugging failed runs.

Constraints & known limitations

  • Provisioning gap: local testing baseline is 16GB RAM to prevent memory swap. However, the Testing Farm provisions 4GB RAM. Expect swap activity during CI runs. While tests remain functional, performance may be degraded compared to local environments.
  • Container mapping: To ensure low maintenance across fedora-all, containers inherit the distribution of the host VM (e.g., F44 VM hosts F44 containers). This approach links test stability to the target distribution’s stability. Rawhide environments may occasionally experience failures due to upstream shifts unrelated to SSSD.
  • Environment: c10s tests are executed within a fedora-latest VM (currently Fedora 44). Attempting to run on a c10s VM host caused severe memory pressure that prevented SSSD from installing correctly within the containers.

Observability & debugging

If a test fails, kKey data can be found at: tmt-log and test artifacts directory: plans/passkey/data/artifacts/tests/

Final notes

  • CentOS Stream 10 and fedora rawhide CI failures observed in this PR are unrelated to the changes proposed here. These failures stem from an environment-wide issue where sssd-ci-containers for these distributions have not been refreshed for approximately 10 days. These targets should stabilize as soon as the container images are updated.
  • This PR only enables the execution of the passkey tests, it doesn't make the umockdev to vfido transformation. If you want to see the CI working with vfido update take a look at tests: migrate passkey tests from umockdev to vfido #8510.

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new FMF test plan for SSSD passkey functionality across IPA, LDAP, and Samba providers. The plan automates environment provisioning, container setup, and SSSD installation from COPR builds. Feedback focuses on improving the reliability and performance of the preparation steps, specifically addressing potential Python package installation failures on newer Fedora versions, optimizing SELinux configuration speed, ensuring reliable package upgrades from COPR, and correcting a syntax error in the yq command used for configuration modification.

Comment thread plans/passkey.fmf Outdated
Comment thread plans/passkey.fmf Outdated
Comment thread plans/passkey.fmf Outdated
Comment thread plans/passkey.fmf Outdated
Comment thread plans/passkey.fmf Outdated
@ikerexxe ikerexxe force-pushed the test-tmt-passkey branch 5 times, most recently from e8ac3a1 to 2bc5897 Compare May 11, 2026 15:11
@ikerexxe ikerexxe force-pushed the test-tmt-passkey branch from 2bc5897 to 9ec0b66 Compare May 14, 2026 06:52
@ikerexxe ikerexxe changed the title Add TMT plan for passkey testing in PRCI ci: add TMT plan for passkey testing in PRCI May 14, 2026
@ikerexxe ikerexxe marked this pull request as ready for review May 14, 2026 08:39
@jakub-vavra-cz jakub-vavra-cz self-assigned this May 14, 2026
@jakub-vavra-cz jakub-vavra-cz self-requested a review May 14, 2026 11:13
Comment thread .packit.yaml
Comment thread plans/passkey.fmf
Comment thread plans/passkey.fmf
Comment thread plans/passkey.fmf Outdated
ikerexxe and others added 2 commits May 15, 2026 09:43
Add comprehensive TMT plan for testing SSSD passkey functionality across
IPA, LDAP, and Samba identity providers using containerized environments.

Signed-off-by: Iker Pedrosa <ipedrosa@redhat.com>
Co-authored-by: Claude Sonnet 4 <noreply@anthropic.com>
Enable automated passkey testing on pull requests after COPR builds
complete. Tests run on fedora-all and centos-stream-10 targets using
the TMT plan.

Signed-off-by: Iker Pedrosa <ipedrosa@redhat.com>
Co-Authored-By: Claude Sonnet 4 <noreply@anthropic.com>
@ikerexxe ikerexxe force-pushed the test-tmt-passkey branch from 9ec0b66 to f1eec87 Compare May 15, 2026 07:43
Copy link
Copy Markdown
Contributor

@justin-stephenson justin-stephenson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ack, thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants