Я часто использую молекулы с драйвером docker. Есть несколько случаев, когда docker не является подходящим инструментом для проверки ролей ansible, поэтому я бы хотел развернуть виртуальную машину в openstack.
Я создал роль ansible с molecule role -r <rolename>
и изменил драйвер в молекуле .yml на 'openstack'. Это пример моего нынешнего молекулы молекулы: .yml:
---
dependency:
name: galaxy
driver:
name: openstack
lint:
name: yamllint
platforms:
- name: molecule-role-docker
image: CentOS7
flavor: ECS.UC1.4-4
auto_ip: true
security_groups: ssh
key_name: mykey-ci
provisioner:
name: ansible
lint:
name: ansible-lint
verifier:
name: testinfra
lint:
name: flake8
К сожалению, отсутствует файл create.yml, который раскручивает машину:
[...]
Validation completed successfully.
--> Test matrix
└── default
├── dependency
├── create
├── prepare
└── converge
--> Scenario: 'default'
--> Action: 'dependency'
Skipping, missing the requirements file.
--> Scenario: 'default'
--> Action: 'create'
ERROR! the playbook: None could not be found
ERROR:
Если я создаю файл create.yml, сообщение об ошибке указывает, что файл найден пустым:
[...]
--> Scenario: 'default'
--> Action: 'create'
ERROR! Empty playbook, nothing to do
ERROR:
Итак, как мне заставить работать драйвер openstack и как создать и подготовить виртуальную машину для запуска моих проверок против этого?
Я использую молекулу 2.22, ansible 2.9.4 и python 3.7.6.
Как указано в документации, я уже установил плагин openstack для молекулы: pip3 install 'molecule[openstack]'