Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 分子抱怨;[703]应更改默认元数据:description";在运行基本测试时_Python_Docker_Ansible_Molecule - Fatal编程技术网

Python 分子抱怨;[703]应更改默认元数据:description";在运行基本测试时

Python 分子抱怨;[703]应更改默认元数据:description";在运行基本测试时,python,docker,ansible,molecule,Python,Docker,Ansible,Molecule,我无法运行molecular test命令,因为它会抛出下面的错误,而我可以运行没有任何错误的单个命令(还提供了下面的调试o/p) 然而,如果我运行下面的命令,它就可以完美地工作。 所以,谁能指出为什么整个测试都失败了,我该怎么办 分子创造 分子表 分子聚合 分子表 分子破坏 分子表 文件夹结构如下所示 . ├── defaults │   └── main.yml ├── handlers │   └── main.yml ├── meta │   └── main.yml ├── molec

我无法运行
molecular test
命令,因为它会抛出下面的错误,而我可以运行没有任何错误的单个命令(还提供了下面的调试o/p)

然而,如果我运行下面的命令,它就可以完美地工作。 所以,谁能指出为什么整个测试都失败了,我该怎么办

  • 分子创造
  • 分子表
  • 分子聚合
  • 分子表
  • 分子破坏
  • 分子表
  • 文件夹结构如下所示

    .
    ├── defaults
    │   └── main.yml
    ├── handlers
    │   └── main.yml
    ├── meta
    │   └── main.yml
    ├── molecule
    │   └── default
    │       ├── Dockerfile.j2
    │       ├── INSTALL.rst
    │       ├── molecule.yml
    │       ├── playbook.yml
    │       └── tests
    │           ├── test_default.py
    │           └── test_default.pyc
    ├── README.md
    ├── tasks
    │   └── main.yml
    └── vars
        └── main.yml
    
    molector.yml文件是

    ---
    dependency:
      name: galaxy
    driver:
      name: docker
    lint:
      name: yamllint
    platforms:
      - name: instance
        image: centos:7
        privileged: true
        command: /sbin/init
        volume_mounts:
            - "/sys/fs/cgroup:/sys/fs/cgroup:ro"
    provisioner:
      name: ansible
      lint:
        name: ansible-lint
    scenario:
      name: default
    
    tasks\main.yml-->

    分子和ansible的版本如下

    molecule --version
    molecule, version 2.22
    
    ansible --version
    ansible 2.8.4
     config file = None
     configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
     ansible python module location = /root/molecule_ansible2.7/lib/python2.7/site-packages/ansible
     executable location = /root/molecule_ansible2.7/bin/ansible
     python version = 2.7.5 (default, Jun 11 2019, 14:33:56) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)]
    
    docker图像

    docker images
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    docker.io/centos    7                   67fa590cfc1c        4 weeks ago         202 MB
    
    分子的样本输出——调试测试

    
    DEBUG: COMMAND
    /root/molecule_ansible2.7/bin/ansible-lint -v --exclude=/root/.cache/molecule/molecule-testing/default /root/.config/pip/molecule-testing/molecule/default/playbook.yml
    
        Examining /root/.config/pip/molecule-testing/molecule/default/playbook.yml of type playbook
        Examining /root/.config/pip/molecule-testing/tasks/main.yml of type tasks
        Examining /root/.config/pip/molecule-testing/handlers/main.yml of type handlers
        Examining /root/.config/pip/molecule-testing/meta/main.yml of type meta
        [701] Role info should contain platforms
        /root/.config/pip/molecule-testing/meta/main.yml:1
        {'meta/main.yml': {'__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'dependencies': [], u'galaxy_info': {u'description': u'your description', u'license': u'license (GPLv2, CC-BY, etc)', u'author': u'your name', u'company': u'your company (optional)', u'galaxy_tags': [], '__line__': 2, '__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'min_ansible_version': 1.2}, '__line__': 1}}
    
        [703] Should change default metadata: author
        /root/.config/pip/molecule-testing/meta/main.yml:1
        {'meta/main.yml': {'__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'dependencies': [], u'galaxy_info': {u'description': u'your description', u'license': u'license (GPLv2, CC-BY, etc)', u'author': u'your name', u'company': u'your company (optional)', u'galaxy_tags': [], '__line__': 2, '__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'min_ansible_version': 1.2}, '__line__': 1}}
    
        [703] Should change default metadata: description
        /root/.config/pip/molecule-testing/meta/main.yml:1
        {'meta/main.yml': {'__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'dependencies': [], u'galaxy_info': {u'description': u'your description', u'license': u'license (GPLv2, CC-BY, etc)', u'author': u'your name', u'company': u'your company (optional)', u'galaxy_tags': [], '__line__': 2, '__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'min_ansible_version': 1.2}, '__line__': 1}}
    
        [703] Should change default metadata: company
        /root/.config/pip/molecule-testing/meta/main.yml:1
        {'meta/main.yml': {'__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'dependencies': [], u'galaxy_info': {u'description': u'your description', u'license': u'license (GPLv2, CC-BY, etc)', u'author': u'your name', u'company': u'your company (optional)', u'galaxy_tags': [], '__line__': 2, '__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'min_ansible_version': 1.2}, '__line__': 1}}
    
        [703] Should change default metadata: license
        /root/.config/pip/molecule-testing/meta/main.yml:1
        {'meta/main.yml': {'__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'dependencies': [], u'galaxy_info': {u'description': u'your description', u'license': u'license (GPLv2, CC-BY, etc)', u'author': u'your name', u'company': u'your company (optional)', u'galaxy_tags': [], '__line__': 2, '__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'min_ansible_version': 1.2}, '__line__': 1}}
    
    An error occurred during the test sequence action: 'lint'. Cleaning up.
    
    太长,读不下去了 这些是ansible lint报告的错误/良好做法,您应该修复。只需启动
    molecular lint
    ,即可自行运行
    lint
    阶段

    从当前输出中,您只需要在角色的
    meta/main.yml
    中添加一些信息

    到底发生了什么 每个
    molecular
    命令(例如
    converge
    create
    destroy
    test
    …)都会启动一系列有关您角色的步骤(序列)。您可以在命令输出中看到步骤列表,如下例所示,该示例取自您在运行
    converge
    时提出的问题:

    └── default
        ├── dependency
        ├── create
        ├── prepare
        └── converge
    
    默认情况下会配置这些序列,但可以在场景目录中的
    molecular.yml
    中进行自定义。如果你对这个主题感兴趣,你可以看一看a

    默认情况下,
    converge
    序列不包含
    lint
    阶段。因此,您可以运行测试剧本,而无需验证所有内容

    另一方面,
    测试
    序列包括以下所有步骤:

    └── default
        ├── lint
        ├── dependency
        ├── cleanup
        ├── destroy
        ├── syntax
        ├── create
        ├── prepare
        ├── converge
        ├── idempotence
        ├── side_effect
        ├── verify
        ├── cleanup
        └── destroy
    
    如您所见,第一个是
    lint
    ,它(默认情况下再次)应该在所有yml文件上运行,然后是角色和测试剧本,最后是python文件(测试、自定义模块、自定义插件过滤器…)

    您的完整测试失败,因为最佳实践检查器ansible lint正在报告您应该修复的问题。据我所见,它们非常琐碎,应该在
    meta/main.yml

    ---
    # tasks file for molecule-testing
    - name: Molecule Hello World!
      debug:
        msg: Hello, World!
    
    molecule --version
    molecule, version 2.22
    
    ansible --version
    ansible 2.8.4
     config file = None
     configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
     ansible python module location = /root/molecule_ansible2.7/lib/python2.7/site-packages/ansible
     executable location = /root/molecule_ansible2.7/bin/ansible
     python version = 2.7.5 (default, Jun 11 2019, 14:33:56) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)]
    
    docker images
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    docker.io/centos    7                   67fa590cfc1c        4 weeks ago         202 MB
    
    
    DEBUG: COMMAND
    /root/molecule_ansible2.7/bin/ansible-lint -v --exclude=/root/.cache/molecule/molecule-testing/default /root/.config/pip/molecule-testing/molecule/default/playbook.yml
    
        Examining /root/.config/pip/molecule-testing/molecule/default/playbook.yml of type playbook
        Examining /root/.config/pip/molecule-testing/tasks/main.yml of type tasks
        Examining /root/.config/pip/molecule-testing/handlers/main.yml of type handlers
        Examining /root/.config/pip/molecule-testing/meta/main.yml of type meta
        [701] Role info should contain platforms
        /root/.config/pip/molecule-testing/meta/main.yml:1
        {'meta/main.yml': {'__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'dependencies': [], u'galaxy_info': {u'description': u'your description', u'license': u'license (GPLv2, CC-BY, etc)', u'author': u'your name', u'company': u'your company (optional)', u'galaxy_tags': [], '__line__': 2, '__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'min_ansible_version': 1.2}, '__line__': 1}}
    
        [703] Should change default metadata: author
        /root/.config/pip/molecule-testing/meta/main.yml:1
        {'meta/main.yml': {'__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'dependencies': [], u'galaxy_info': {u'description': u'your description', u'license': u'license (GPLv2, CC-BY, etc)', u'author': u'your name', u'company': u'your company (optional)', u'galaxy_tags': [], '__line__': 2, '__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'min_ansible_version': 1.2}, '__line__': 1}}
    
        [703] Should change default metadata: description
        /root/.config/pip/molecule-testing/meta/main.yml:1
        {'meta/main.yml': {'__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'dependencies': [], u'galaxy_info': {u'description': u'your description', u'license': u'license (GPLv2, CC-BY, etc)', u'author': u'your name', u'company': u'your company (optional)', u'galaxy_tags': [], '__line__': 2, '__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'min_ansible_version': 1.2}, '__line__': 1}}
    
        [703] Should change default metadata: company
        /root/.config/pip/molecule-testing/meta/main.yml:1
        {'meta/main.yml': {'__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'dependencies': [], u'galaxy_info': {u'description': u'your description', u'license': u'license (GPLv2, CC-BY, etc)', u'author': u'your name', u'company': u'your company (optional)', u'galaxy_tags': [], '__line__': 2, '__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'min_ansible_version': 1.2}, '__line__': 1}}
    
        [703] Should change default metadata: license
        /root/.config/pip/molecule-testing/meta/main.yml:1
        {'meta/main.yml': {'__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'dependencies': [], u'galaxy_info': {u'description': u'your description', u'license': u'license (GPLv2, CC-BY, etc)', u'author': u'your name', u'company': u'your company (optional)', u'galaxy_tags': [], '__line__': 2, '__file__': u'/root/.config/pip/molecule-testing/meta/main.yml', u'min_ansible_version': 1.2}, '__line__': 1}}
    
    An error occurred during the test sequence action: 'lint'. Cleaning up.
    
    └── default
        ├── dependency
        ├── create
        ├── prepare
        └── converge
    
    └── default
        ├── lint
        ├── dependency
        ├── cleanup
        ├── destroy
        ├── syntax
        ├── create
        ├── prepare
        ├── converge
        ├── idempotence
        ├── side_effect
        ├── verify
        ├── cleanup
        └── destroy