Skip to content

Add reusable Molecule (CISSHGO) workflow for network collections#195

Open
malikdotexe wants to merge 1 commit into
ansible-network:mainfrom
malikdotexe:feat/molecule-workflow
Open

Add reusable Molecule (CISSHGO) workflow for network collections#195
malikdotexe wants to merge 1 commit into
ansible-network:mainfrom
malikdotexe:feat/molecule-workflow

Conversation

@malikdotexe
Copy link
Copy Markdown

@malikdotexe malikdotexe commented Jun 4, 2026

Summary

Adds .github/workflows/molecule.yml as a workflow_call reusable workflow for network collections running CISSHGO-based Molecule scenarios under extensions/molecule.

  • Discovers scenario directories (excludes _shared and cisshgo_fixtures)
  • Reads pinned cisshgo_fixtures/CISSHGO_VERSION
  • Matrix over scenarios × SSH backends (libssh, paramiko by default)
  • Installs optional collection_pre_install deps, then the collection from checkout
  • Uploads cisshgo/molecule logs on failure

Usage (after merge)

molecule:
  needs: [build-import]
  uses: ansible-network/github_actions/.github/workflows/molecule.yml@main
  with:
    collection_pre_install: >-
      git+https://github.com/ansible-collections/ansible.utils.git
      git+https://github.com/ansible-collections/ansible.netcommon.git
    molecule_scenarios_path: extensions/molecule
    ssh_backends: '["libssh", "paramiko"]'

Expose workflow_call job that discovers extensions/molecule scenarios,
runs them across libssh/paramiko backends, and uploads failure logs.
Collections can invoke it like unit_source.yml from tests.yml.
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.

1 participant