Skip to content

PS-10483 - Bump molecule version - #4354

Open
tplavcic wants to merge 17 commits into
masterfrom
ps-10483-bump-molecule
Open

PS-10483 - Bump molecule version#4354
tplavcic wants to merge 17 commits into
masterfrom
ps-10483-bump-molecule

Conversation

@tplavcic

@tplavcic tplavcic commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

Corresponding PR in package-testing repo: Percona-QA/package-testing#1199

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Updates the Jenkins shared-library “install molecule” helpers used by multiple package-testing pipelines, aligning them with a newer Molecule/Ansible toolchain intended for Debian Bookworm-based test runs.

Changes:

  • Bumps Molecule from 3.3.0 to 26.6.0 and replaces molecule-ec2 with molecule-plugins[ec2].
  • Pins a newer Ansible toolchain (ansible, ansible-core, ansible-lint) and modernizes related Python dependencies (PyYAML/pytest/pytest-testinfra/boto3).
  • Refactors pip installs into a single multi-line python -m pip install ... command for readability/consistency across installers.

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated no comments.

Show a summary per file
File Description
vars/installMoleculeBookwormPXBPRO.groovy Updates the Molecule/Ansible/Python dependency set for the PXBPRO Bookworm installer.
vars/installMoleculeBookworm.groovy Updates pinned Molecule/Ansible/Python dependencies for the Bookworm installer.
vars/installMoleculeBookworm_pdps.groovy Updates pinned Molecule/Ansible/Python dependencies for the pdps Bookworm installer.
vars/installMolecule.groovy Updates the default Molecule install helper to the newer pinned toolchain.
pxc/jenkins/proxysql-package-testing-molecule.groovy Updates the inline Molecule installer used by the ProxySQL package-testing pipeline.
ps/jenkins/ps-package-testing-molecule.groovy Updates the inline Molecule installer used by the PS package-testing pipeline (also installs jq/git/unzip).

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 29 out of 29 changed files in this pull request and generated no new comments.

Suppressed comments (3)

pxc/jenkins/pxc-keyring-test-pkgs.groovy:275

  • After installMoleculeBookwormMysql() this stage runs another apt update and re-installs git unzip jq even though the installer already does that. This adds redundant work and time; only ansible appears to be needed here outside the venv.
                        sudo apt update -y
                        sudo apt install -y git unzip jq ansible

vars/installMoleculeBookwormPXBPRO.groovy:19

  • installMoleculeBookwormMysql installs the same pinned Molecule/Ansible toolchain as other Bookworm installers (e.g. installMoleculeBookwormPXBPRO, installMoleculeBookworm_pdps). With the version list duplicated across multiple vars/ steps, keeping them in sync will be error-prone; consider extracting the shared package list into a single helper (or a common installer with parameters for venv location) and calling it from the product-specific wrappers.
            python -m pip install \
                "molecule==26.6.0" \
                "molecule-plugins[ec2]==26.7.15" \
                "ansible==9.13.0" \
                "ansible-core==2.16.19" \
                "ansible-lint==26.6.0" \
                "PyYAML==6.0.3" \
                "pytest==9.1.1" \
                "pytest-testinfra==10.2.2" \
                "boto3==1.43.53" \
                "botocore==1.43.53"

vars/installMoleculeBookwormMysql.groovy:1

  • The new shared-library step name installMoleculeBookwormMysql() is now used by several non-MySQL pipelines (PXC/PXB/ProxySQL/prel, etc.). This makes the name misleading and increases the chance of future misuse; consider renaming to something product-agnostic (e.g. installMoleculeBookworm / installMoleculeBookwormCommon) and keeping a compatibility wrapper for existing callers.
def call() {

@tplavcic
tplavcic marked this pull request as ready for review August 21, 2026 08:31

@kaushikpuneet07 kaushikpuneet07 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants