# Install molecule with Homebrew, Nix, pacman, zypper

Automated testing for Ansible roles. Version 26.6.0 via Homebrew; verified 2026-07-01.

## Install

```sh
sudo av install brew:molecule
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install molecule
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#molecule
```

  Evidence: nixpkgs package indexes: molecule from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix

- pacman (92%):

```sh
sudo pacman -S molecule
```

  Evidence: Arch Linux sync databases: molecule from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install molecule
```

  Evidence: openSUSE Tumbleweed package metadata: molecule from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

## Package facts

- **Package key:** brew:molecule
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/molecule>
- **Version:** 26.6.0
- **Source summary:** Automated testing for Ansible roles
- **Homepage:** <https://molecule.readthedocs.io>
- **Repository:** <https://github.com/ansible/molecule>
- **Upstream docs:** <https://docs.ansible.com/projects/molecule>
- **License:** MIT
- **Source archive:** <https://files.pythonhosted.org/packages/b6/81/7391315d9e10d7a37bb11d0d83d5d03303f698292465e3c1620028a3abf7/molecule-26.6.0.tar.gz>
- **Last updated:** 2026-07-01T13:19:30Z
- **Generated:** 2026-07-09T07:20:21+00:00

## Executables

- molecule (cli)
- molecule (alias)

## Dependencies

- ansible
- certifi
- cryptography
- libyaml
- python@3.14
- rpds-py

## Uses from macOS

- libffi

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-09
- Package-manager version: 26.6.0
- Package-manager updated: 2026-07-01
- Local data: ok
- Upstream repository: https://molecule.readthedocs.io
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

Molecule is an Ansible testing framework for developing and testing Ansible collections, playbooks, and roles. The Ansible project README credits Retr0h as the creator and describes the project as community-maintained as part of Ansible by Red Hat. Its official documentation presents Molecule as a framework that uses standard Ansible concepts such as inventory, playbooks, and collections to test systems reachable through containers, virtual machines, cloud infrastructure, APIs, databases, network devices, and other targets.

### Project history

The major adoption turning point came in 2018, when Ansible announced that it would adopt molecule and ansible-lint as official Red Hat Ansible projects. The announcement said the tools were community-built and important to Ansible automation development, thanked Cisco and John Dewey for work on Molecule, and described migration of the repositories to the ansible GitHub organization while keeping the PyPI package name molecule. That move gave Molecule a formal place in the Ansible toolchain rather than leaving it as a separate community utility.

### Adoption history

In practice, Molecule gives role and collection authors a repeatable local and CI workflow: initialize a scenario, create or converge test instances, run Ansible content, then verify behavior through Ansible-native checks or external verifiers. The docs show CI use with GitHub Actions, Travis CI, GitLab CI, Azure Pipelines, and molecule test. Community adoption is visible in Ansible role maintainers replacing homegrown Docker-based test rigs with Molecule-based tests after the Red Hat adoption announcement.

### How it is used

The project broadened from role-only testing toward playbooks and collections. Red Hat's 2023 Molecule 6 developer-preview article framed Molecule as part of the Ansible Automation Platform developer experience and emphasized functional testing for Ansible content, including collection-level testing and making the Testinfra verifier optional in favor of Ansible-native validation.

### Sources

- <https://developers.redhat.com/articles/2023/09/13/introducing-ansible-molecule-ansible-automation-platform>
- <https://docs.ansible.com/projects/molecule/>
- <https://docs.ansible.com/projects/molecule/ci/>
- <https://forum.ansible.com/t/ansible-to-adopt-molecule-and-ansible-lint-projects/28657>
- <https://github.com/ansible/molecule/>
- <https://www.jeffgeerling.com/blog/2018/testing-your-ansible-roles-molecule/>


## Security Notes

No matching local secret-handling manifest was found for molecule. Nucleus package metadata is still published here so future coverage has a stable package URL.



## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: ~/.config/molecule/config.yml, ./config.yml, extensions/molecule/config.yml, molecule.yml
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** molecule
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Nix - molecule: normalized package name match | nixpkgs package indexes: molecule from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
- pacman - molecule - 26.4.0-2: normalized package name match | Arch Linux sync databases: molecule from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Aids in the development and testing of Ansible roles | https://github.com/ansible-community/molecule
- zypper - molecule - 26.3.0-1.1: normalized package name match | openSUSE Tumbleweed package metadata: molecule from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Aids in the development and testing of Ansible roles | https://github.com/ansible-community/molecule


## Related links

- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Language runtime packages](https://www.automicvault.com/pkg/language-runtime-packages/) - Matched curated package taxonomy and local package facts.
- [ansible](https://www.automicvault.com/pkg/brew/ansible/) - Runtime dependency declared by Homebrew.
- [python@3.14](https://www.automicvault.com/pkg/brew/python-3-14/) - Runtime dependency declared by Homebrew.
- [moto](https://www.automicvault.com/pkg/brew/moto/) - Both packages touch the same language runtime or ecosystem. Shared terms: certifi, cryptography, libyaml, python, python-3-14.
- [ansible-lint](https://www.automicvault.com/pkg/brew/ansible-lint/) - Both packages touch the same language runtime or ecosystem. Shared terms: ansible, cryptography, libyaml, python, python-3-14.
- [aws-sam-cli](https://www.automicvault.com/pkg/brew/aws-sam-cli/) - Both packages touch the same language runtime or ecosystem. Shared terms: certifi, cryptography, libyaml, python, python-3-14.

## Combined YAML source

View the package source record on GitHub. [combined/molecule.yml](https://github.com/automic-vault/db/blob/main/combined/molecule.yml)


## Sources

- Nucleus package database
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
