首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不安全变量的最佳实践?

不安全变量的最佳实践?
EN

Stack Overflow用户
提问于 2021-05-19 03:47:42
回答 1查看 191关注 0票数 0

有比这更好的解决办法吗?

代码语言:javascript
复制
- hosts: localhost
  gather_facts: true
  tasks:
    - name: strip unsafe characters from ansible_virtualization_role value
      shell: |
        echo {{ ansible_virtualization_role }} | sed 's/[^a-z]//g'
      register: buf 
    - name: Set my_virtualization_role
      set_fact:
        my_virtualization_role={{ buf.stdout }}

ansible-lint报告“??没有更改??当#命令不应该更改不需要做的事情时”,所以最好不用shell模块来清理不安全的变量,但是我尝试的每一个纯Ansible解决方案都会出现一个不安全的变量错误。

查尔斯

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-19 09:27:27

您应该能够使用ansible过滤器来完成您想要做的事情--特别是查看一下regex_replace过滤器--参见https://docs.ansible.com/ansible/latest/user_guide/playbooks_filters.html#searching-strings-with-regular-expressions

在您的示例中,您可以编写

代码语言:javascript
复制
- hosts: localhost
  gather_facts: true
  tasks:
    - name: Set my_virtualization_role
      set_fact:
        my_virtualization_role={{ ansible_virtualization_role | regex_replace('[^a-z]', '') }}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67596658

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档