id = "molecule"
name = "Molecule"
homepage = "https://ansible.readthedocs.io/projects/molecule/"
description = "Molecule is an Ansible testing framework designed for developing and testing Ansible collections, playbooks, and roles."
icon = "https://ansible.readthedocs.io/projects/molecule/_static/images/logo.png"
executables = ["molecule"]
[dotfiles]
paths = ["~/.config/molecule/config.yml"]
exclude = []
secret = []
side_effect = false
[commands]
format = 1
label = "molecule"
description = "Test Ansible roles. Use the subcommand tabs for test and converge; other steps and init are left out."
quality = "ai-draft"
base = "fig:molecule"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/molecule.ts"
license = "MIT"
[[commands.subcommand]]
path = ["test"]
label = "Run the full test sequence"
description = "Run dependency through verify for a scenario."
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/molecule.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "scenario"
label = "Scenario name"
type = "string"
option = ["--scenario-name", "-s"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "driver"
label = "Driver"
type = "string"
option = ["--driver-name", "-d"]
suggestions = [{ value = "delegated", label = "delegated" }, { value = "docker", label = "docker" }, { value = "podman", label = "podman" }, { value = "vagrant", label = "vagrant" }, { value = "azure", label = "azure" }, { value = "hetzner", label = "hetzner" }]
sources = ["fig"]
[[commands.subcommand.field]]
id = "all"
label = "Test all scenarios"
type = "boolean"
option = ["--all"]
sources = ["fig"]
[[commands.subcommand.field]]
id = "destroy"
label = "Destroy strategy"
type = "string"
option = ["--destroy"]
suggestions = [{ value = "always", label = "always" }, { value = "never", label = "never" }]
sources = ["fig"]
[[commands.subcommand.field]]
id = "parallel"
label = "Parallel mode"
type = "boolean"
option = ["--parallel"]
sources = ["fig"]
[[commands.subcommand.task]]
id = "test"
label = "Test a scenario"
fields = ["scenario", "driver", "destroy"]
required = []
[[commands.subcommand.task]]
id = "all"
label = "Test all scenarios"
fields = ["all", "parallel"]
required = ["all"]
set = { all = [true] }
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["scenario", "driver", "all"]
[[commands.subcommand.group]]
id = "advanced"
label = "Advanced"
fields = ["destroy", "parallel"]
[[commands.subcommand]]
path = ["converge"]
label = "Converge instances"
description = "Configure instances (dependency, create, prepare, converge)."
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.subcommand.source]]
id = "fig"
kind = "completion"
url = "https://github.com/withfig/autocomplete/blob/master/src/molecule.ts"
license = "MIT"
[[commands.subcommand.field]]
id = "scenario"
label = "Scenario name"
type = "string"
option = ["--scenario-name", "-s"]
sources = ["fig"]
[[commands.subcommand.task]]
id = "converge"
label = "Converge"
fields = ["scenario"]
required = []
[[commands.subcommand.group]]
id = "basic"
label = "Basic"
fields = ["scenario"]