Skip to content

ctx.params: KeyError: 'command_borders' #4513

@konstruktoid

Description

@konstruktoid

Prerequisites

  • This was not already reported in the past (duplicate check)
  • It does reproduce it with code from main branch (latest unreleased version)
  • I include a minimal example for reproducing the bug
  • The bug is not trivial, as for those a direct pull-request is preferred
  • Running pip check does not report any conflicts
  • I was able to reproduce the issue on a different machine
  • The issue is not specific to any driver other than 'default' one

Environment

molecule --version
WARNING  No galaxy.yml found at [...]/Git/ansible-role-hardening/galaxy.yml
[WARNING]: You are running the development version of Ansible. You should only run Ansible from "devel" if you are modifying the Ansible engine, or trying out features under development. This is a rapidly changing source of code and can become unstable at any point.
molecule 25.7.1.dev16 using python 3.13
    ansible:2.20.0.dev0
    default:25.7.1.dev16 from molecule
    gce:25.8.12 from molecule_plugins requiring collections: google.cloud>=1.0.2 community.crypto>=1.8.0
    openstack:25.8.12 from molecule_plugins requiring collections: openstack.cloud>=2.1.0
    ec2:25.8.12 from molecule_plugins
    podman:25.8.12 from molecule_plugins requiring collections: containers.podman>=1.7.0 ansible.posix>=1.3.0
    containers:25.8.12 from molecule_plugins requiring collections: ansible.posix>=1.3.0 community.docker>=1.9.1 containers.podman>=1.8.1
    docker:25.8.12 from molecule_plugins requiring collections: community.docker>=3.10.2 ansible.posix>=1.4.0
    vagrant:25.8.12 from molecule_plugins
    azure:25.8.12 from molecule_plugins
$ python3 -VV && lsb_release -d
Python 3.13.5 (main, Jul 23 2025, 00:37:22) [Clang 20.1.4 ]
Description:    Ubuntu 24.10
$ vagrant --version
Vagrant 2.4.7
$ VBoxManage --version
7.0.20_Ubuntur163906

What happened

Vagrant login fails when using molecule 25.7.1.dev16 but works with 25.7.0

$ molecule --debug login -s single --host noble
WARNING  No galaxy.yml found at [...]/Git/ansible-role-hardening/galaxy.yml
Traceback (most recent call last):
  File "[...]/venvs/ansible-upstream/bin/molecule", line 10, in <module>
    sys.exit(main())
             ~~~~^^
  File "[...]/venvs/ansible-upstream/lib/python3.13/site-packages/click/core.py", line 1442, in __call__
    return self.main(*args, **kwargs)
           ~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "[...]/venvs/ansible-upstream/lib/python3.13/site-packages/click/core.py", line 1363, in main
    rv = self.invoke(ctx)
  File "[...]/venvs/ansible-upstream/lib/python3.13/site-packages/click/core.py", line 1830, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "[...]/venvs/ansible-upstream/lib/python3.13/site-packages/click/core.py", line 1226, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "[...]/venvs/ansible-upstream/lib/python3.13/site-packages/click/core.py", line 794, in invoke
    return callback(*args, **kwargs)
  File "[...]/venvs/ansible-upstream/lib/python3.13/site-packages/molecule/click_cfg.py", line 595, in wrapper
    return func(*args, **kwargs)
  File "[...]/venvs/ansible-upstream/lib/python3.13/site-packages/click/decorators.py", line 34, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "[...]/venvs/ansible-upstream/lib/python3.13/site-packages/molecule/click_cfg.py", line 430, in wrapper
    return func(ctx)
  File "[...]/venvs/ansible-upstream/lib/python3.13/site-packages/molecule/command/login.py", line 130, in login
    "command_borders": ctx.params["command_borders"],
                       ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
KeyError: 'command_borders'
$ molecule --version
WARNING  No galaxy.yml found at [...]/Git/ansible-role-hardening/galaxy.yml
[WARNING]: You are running the development version of Ansible. You should only run Ansible from "devel" if you are modifying the Ansible engine, or trying out features under development. This is a rapidly changing source of code and can become unstable at any point.
molecule 25.7.1.dev16 using python 3.13
    ansible:2.20.0.dev0
    default:25.7.1.dev16 from molecule
    gce:25.8.12 from molecule_plugins requiring collections: google.cloud>=1.0.2 community.crypto>=1.8.0
    openstack:25.8.12 from molecule_plugins requiring collections: openstack.cloud>=2.1.0
    ec2:25.8.12 from molecule_plugins
    podman:25.8.12 from molecule_plugins requiring collections: containers.podman>=1.7.0 ansible.posix>=1.3.0
    containers:25.8.12 from molecule_plugins requiring collections: ansible.posix>=1.3.0 community.docker>=1.9.1 containers.podman>=1.8.1
    docker:25.8.12 from molecule_plugins requiring collections: community.docker>=3.10.2 ansible.posix>=1.4.0
    vagrant:25.8.12 from molecule_plugins
    azure:25.8.12 from molecule_plugins
```sh

```sh
$ molecule --version
[WARNING]: You are running the development version of Ansible. You should only run Ansible from "devel" if you are modifying the Ansible engine, or trying out features under development. This is a rapidly changing source of code and can become unstable at any point.
molecule 25.7.0 using python 3.13
    ansible:2.20.0.dev0
    gce:25.8.12 from molecule_plugins requiring collections: google.cloud>=1.0.2 community.crypto>=1.8.0
    openstack:25.8.12 from molecule_plugins requiring collections: openstack.cloud>=2.1.0
    default:25.7.0 from molecule
    containers:25.8.12 from molecule_plugins requiring collections: ansible.posix>=1.3.0 community.docker>=1.9.1 containers.podman>=1.8.1
    docker:25.8.12 from molecule_plugins requiring collections: community.docker>=3.10.2 ansible.posix>=1.4.0
    vagrant:25.8.12 from molecule_plugins
    podman:25.8.12 from molecule_plugins requiring collections: containers.podman>=1.7.0 ansible.posix>=1.3.0
    ec2:25.8.12 from molecule_plugins
    azure:25.8.12 from molecule_plugins
$ molecule --debug login -s single --host noble
[WARNING]: You are running the development version of Ansible. You should only run Ansible from "devel" if you are modifying the Ansible engine, or trying out features under development. This is a rapidly changing source of code and can become unstable at any point.
DEBUG    default ➜ validate: Validating schema [...]/Code/Git/ansible-role-hardening/molecule/default/molecule.yml.
WARNING  Driver vagrant does not provide a schema.
DEBUG    docker ➜ validate: Validating schema [...]/Code/Git/ansible-role-hardening/molecule/docker/molecule.yml.
WARNING  Driver docker does not provide a schema.
DEBUG    almalinux ➜ validate: Validating schema [...]/Code/Git/ansible-role-hardening/molecule/almalinux/molecule.yml.
WARNING  Driver vagrant does not provide a schema.
DEBUG    debian ➜ validate: Validating schema [...]/Code/Git/ansible-role-hardening/molecule/debian/molecule.yml.
WARNING  Driver vagrant does not provide a schema.
DEBUG    ubuntu ➜ validate: Validating schema [...]/Code/Git/ansible-role-hardening/molecule/ubuntu/molecule.yml.
WARNING  Driver vagrant does not provide a schema.
DEBUG    single ➜ validate: Validating schema [...]/Code/Git/ansible-role-hardening/molecule/single/molecule.yml.
WARNING  Driver vagrant does not provide a schema.
DEBUG    custom ➜ validate: Validating schema [...]/Code/Git/ansible-role-hardening/molecule/custom/molecule.yml.
WARNING  Driver vagrant does not provide a schema.
INFO     single ➜ login: Starting
Last login: Fri Aug 15 12:53:13 2025 from 10.0.2.2
vagrant@noble:~$

Reproducing example

repository: https://github.com/konstruktoid/ansible-role-hardening
Molecule file used above: https://github.com/konstruktoid/ansible-role-hardening/blob/master/molecule/single/molecule.yml

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions