Skip to content

Add postgresql-18 tests into test suite#98

Open
pkhartsk wants to merge 2 commits into
sclorg:masterfrom
pkhartsk:add-postgresql-18
Open

Add postgresql-18 tests into test suite#98
pkhartsk wants to merge 2 commits into
sclorg:masterfrom
pkhartsk:add-postgresql-18

Conversation

@pkhartsk
Copy link
Copy Markdown

@pkhartsk pkhartsk commented Jan 21, 2026

Wait until GA before merging

Summary by CodeRabbit

  • Chores
    • Updated container testing infrastructure with support for RHEL 9 and RHEL 10 environments, expanding test coverage for newer database and application runtime versions.

Review Change Stack

@openshift-ci
Copy link
Copy Markdown

openshift-ci Bot commented Jan 21, 2026

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@pkhartsk
Copy link
Copy Markdown
Author

/test all

@pkhartsk
Copy link
Copy Markdown
Author

[test]

@phracek
Copy link
Copy Markdown
Member

phracek commented May 19, 2026

[test]

@phracek
Copy link
Copy Markdown
Member

phracek commented May 19, 2026

@pkhartsk Please rebase it against master. Thanks

@pkhartsk pkhartsk changed the title Draft: Add postgresql-18 tests into test suite Add postgresql-18 tests into test suite May 19, 2026
@pkhartsk pkhartsk force-pushed the add-postgresql-18 branch from 2c91b0f to 4800c23 Compare May 19, 2026 15:18
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 19, 2026

📝 Walkthrough

Walkthrough

This PR expands the Ansible OpenShift test playbook to verify newer RHEL 9 and 10 container image variants. The playbook's test loops are updated to reference new MariaDB, MySQL, PostgreSQL, Python, and Ruby container images, and eight new YAML variable files are added to configure deployment parameters and validation behavior for each container type.

Changes

Container Image Test Coverage Expansion

Layer / File(s) Summary
Playbook test suite updates
deploy-and-test.yml
Main upstream verification loop and container validation lists updated to include newer RHEL9 and RHEL10 MariaDB 11.8, MySQL 8.0/8.4, PostgreSQL 18, Python 3.14, and Ruby 4.0 container image tags across the "Clone and test" loop and "Check None-s2i" and "Check s2i" container lists.
RHEL9 container variable configurations
vars/rhel9-mariadb-118-container.yml, vars/rhel9-postgresql-18-container.yml, vars/rhel9-s2i-python-314-container.yml, vars/rhel9-s2i-ruby-40-container.yml
YAML configuration files for RHEL9 MariaDB 11.8, PostgreSQL 18, and S2I Python 3.14 and Ruby 4.0 containers define registry image source, OpenShift deployment commands with template parameters, pod/route identifiers, and expected post-deployment test results.
RHEL10 container variable configurations
vars/rhel10-mariadb-118-container.yml, vars/rhel10-postgresql-18-container.yml, vars/rhel10-s2i-python-314-minimal-container.yml, vars/rhel10-s2i-ruby-40-container.yml
YAML configuration files for RHEL10 MariaDB 11.8, PostgreSQL 18, and S2I Python 3.14 minimal and Ruby 4.0 containers specify registry images, oc process and oc apply deployment templates with namespace and service parameters, and validation command and output assertions.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • sclorg/ansible-tests#100: Updates deploy-and-test.yml container verification lists to add and swap database and S2I image tag references for test coverage expansion.

Poem

🐰 Eight containers bundled with care,
MariaDB, PostgreSQL everywhere—
Python and Ruby, versions so bright,
RHEL 9 and 10, test coverage takes flight!
New configs sprouting like carrots so deep,
Playbook amendments, test suites all leap! 🥕

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Title check ⚠️ Warning The PR title 'Add postgresql-18 tests into test suite' accurately describes the primary change, but the changeset includes significantly broader scope: PostgreSQL 18, MariaDB 11.8, Ruby 4.0, and Python 3.14 variants across RHEL 9 and RHEL 10. The title captures only one component of the multi-feature addition. Consider updating the title to reflect the full scope: 'Add PostgreSQL 18, MariaDB 11.8, Ruby 4.0, and Python 3.14 tests' or similar, since the changeset extends well beyond PostgreSQL testing alone.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@pkhartsk pkhartsk marked this pull request as ready for review May 19, 2026 15:18
Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@deploy-and-test.yml`:
- Around line 122-124: Two RHEL10 test loops ("full-run" and "s2i-only") are
missing the rhel10-s2i-ruby-40-container entry; add the
rhel10-s2i-ruby-40-container string to both lists so Ruby 4.0 on RHEL10 is
exercised (i.e., insert rhel10-s2i-ruby-40-container alongside
rhel10-s2i-ruby-33-container and the Python entries in the same YAML sequence
for each loop).

In `@vars/rhel10-mariadb-118-container.yml`:
- Line 4: The DATABASE_SERVICE_NAME environment variable is using an invalid
value with a dot ("mariadb-11.8") which mismatches pod_name (mariadb-118);
update the DATABASE_SERVICE_NAME assignment to "mariadb-118" so it matches
pod_name and avoids service-name validation/deployment failures (look for
DATABASE_SERVICE_NAME in the vars/rhel10-mariadb-118-container.yml and change
its value to mariadb-118).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 46da61ae-71cc-4741-8324-2bd75d40f49f

📥 Commits

Reviewing files that changed from the base of the PR and between 664b170 and 4800c23.

📒 Files selected for processing (9)
  • deploy-and-test.yml
  • vars/rhel10-mariadb-118-container.yml
  • vars/rhel10-postgresql-18-container.yml
  • vars/rhel10-s2i-python-314-minimal-container.yml
  • vars/rhel10-s2i-ruby-40-container.yml
  • vars/rhel9-mariadb-118-container.yml
  • vars/rhel9-postgresql-18-container.yml
  • vars/rhel9-s2i-python-314-container.yml
  • vars/rhel9-s2i-ruby-40-container.yml

Comment thread deploy-and-test.yml
Comment on lines 122 to +124
- rhel10-s2i-ruby-33-container
- rhel10-s2i-python-312-minimal-container
- rhel10-s2i-python-314-minimal-container
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Add the RHEL10 Ruby 4.0 S2I case to both RHEL10 test loops.

rhel10-s2i-ruby-40-container is missing from the full-run and s2i-only loops, so Ruby 4.0 on RHEL10 is not exercised. This leaves a coverage hole relative to the PR objective. See Line 122 and Line 196 sections.

Suggested patch
@@
         - rhel10-mysql-84-container
         - rhel10-s2i-ruby-33-container
+        - rhel10-s2i-ruby-40-container
         - rhel10-s2i-python-312-minimal-container
         - rhel10-s2i-python-314-minimal-container
@@
         - rhel10-nodejs-ex-24
         - rhel10-nodejs-ex-24-minimal
         - rhel10-s2i-ruby-33-container
+        - rhel10-s2i-ruby-40-container
         - rhel10-s2i-python-312-minimal-container
         - rhel10-s2i-python-314-minimal-container

Also applies to: 196-199

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@deploy-and-test.yml` around lines 122 - 124, Two RHEL10 test loops
("full-run" and "s2i-only") are missing the rhel10-s2i-ruby-40-container entry;
add the rhel10-s2i-ruby-40-container string to both lists so Ruby 4.0 on RHEL10
is exercised (i.e., insert rhel10-s2i-ruby-40-container alongside
rhel10-s2i-ruby-33-container and the Python entries in the same YAML sequence
for each loop).

registry_redhat_io: "rhel10/mariadb-118"
tag_name: "mariadb:11.8-el10"
deployment: "oc process -f https://raw.githubusercontent.com/sclorg/mariadb-container/master/examples/mariadb-persistent-template.json -p MARIADB_VERSION=11.8-el10 -p NAMESPACE={{ oc_project_rhscl }} \
-p DATABASE_SERVICE_NAME=mariadb-11.8 \
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

Fix invalid/inconsistent database service name.

At Line 4, DATABASE_SERVICE_NAME=mariadb-11.8 includes a dot and does not match the rest of this config (pod_name: mariadb-118). Use mariadb-118 to avoid service-name validation/deployment failures.

Suggested patch
-    -p DATABASE_SERVICE_NAME=mariadb-11.8 \
+    -p DATABASE_SERVICE_NAME=mariadb-118 \
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
-p DATABASE_SERVICE_NAME=mariadb-11.8 \
-p DATABASE_SERVICE_NAME=mariadb-118 \
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@vars/rhel10-mariadb-118-container.yml` at line 4, The DATABASE_SERVICE_NAME
environment variable is using an invalid value with a dot ("mariadb-11.8") which
mismatches pod_name (mariadb-118); update the DATABASE_SERVICE_NAME assignment
to "mariadb-118" so it matches pod_name and avoids service-name
validation/deployment failures (look for DATABASE_SERVICE_NAME in the
vars/rhel10-mariadb-118-container.yml and change its value to mariadb-118).

@pkhartsk
Copy link
Copy Markdown
Author

/retest

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.

2 participants