我有一个ansible-role,它的任务是在没有第一级目录的情况下解压缩.zip文件。
Ansible-task:
- name: Cryptography support - download & unarchive jce_policy-8.zip
unarchive:
extra_opts: -j
src: https://###.nexus.###.com/repository/oracle_jdk/java/jce/8/jce_policy-8.zip
dest: "{{java_cryptography_path}}"
remote_src: yes
tags:
- cryptography
哪里
{{java_cryptography_path}}= /usr/java/default/jre/lib/security/
此操作在蔚蓝云实例上的Centos7.5服务器上失败,但在开放堆栈云实例上的Centos7.3服务器上成功
这是冗长的警告
The full traceback is:
WARNING: The below traceback may *not* be related to the actual failure.
File "/tmp/ansible_unarchive_payload_KHaxre/ansible_unarchive_payload.zip/ansible/module_utils/basic.py", line 1071, in selinux_context
ret = selinux.lgetfilecon_raw(to_native(path, errors='surrogate_or_strict'))
有人可以帮我这个忙吗?谢谢!
答案 0 :(得分:0)
在调试后找出问题。认为将其分享给遇到类似问题的人可能会有所帮助。
这是ansible unarchive.py
模块的编写方式。由于我尝试配置的远程服务器具有selinux: enabled
,因此tt失败。我们需要做的就是按照您的组织规则暂时或永久禁用它。
在ansible文档中有一个示例任务。 docs.ansible.com/ansible/latest/modules/selinux_module.html
我们也应该reboot
selinux is disabled
一次pkg_resources.DistributionNotFound: pip==6.1.1
。在ansible文档中也有一些示例,docs.ansible.com / ansible / latest / modules / reboot_module.html