首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Ansible攻略中设置一行为可选

在Ansible攻略中设置一行为可选
EN

Stack Overflow用户
提问于 2020-09-04 22:33:55
回答 1查看 89关注 0票数 0

我用F5构建了一个虚拟服务器的实战手册。我想让一行代码只在有人输入变量时执行。在本例中,default_persistence_profile:行有一个变量"{{ persistenceProfile }}“。有时开发人员不希望持久性应用于他们的应用程序,但有时他们会。我发现,当我在运行任务中将变量设置为可选,并且没有选择持久性配置文件时,任务会出错。请参阅下面的攻略:

代码语言:javascript
复制
    - name: Build the Virtual Server
      bigip_virtual_server:
        state: present
        partition: Common
        name: "{{ vsName  }}" 
        destination: "{{ vsIpAddress }}"
        port: "{{ vsPort }}"
        pool: "{{ poolName }}"
        default_persistence_profile: "{{ persistenceProfile }}"
        ip_protocol: tcp 
        snat: automap
        description: "{{ vsDescription }}"
        profiles:
           - tcp
           - http
           - name: "{{ clientsslName }}" 
             context: client-side
           - name: default-server-ssl
             context: server-side
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-04 22:36:44

Ansible有一个使用default过滤器的omitting parameters机制,如下所示:

代码语言:javascript
复制
    - name: Build the Virtual Server
      bigip_virtual_server:
        state: present
        partition: Common
        name: "{{ vsName  }}" 
        destination: "{{ vsIpAddress }}"
        port: "{{ vsPort }}"
        pool: "{{ poolName }}"
        default_persistence_profile: "{{ persistenceProfile|default(omit) }}"
        ip_protocol: tcp 
        snat: automap
        description: "{{ vsDescription }}"
        profiles:
           - tcp
           - http
           - name: "{{ clientsslName }}" 
             context: client-side
           - name: default-server-ssl
             context: server-side

如果未设置persistenceProfile,则不应将default_persistence_profile参数传递给bigip_virtual_server模块。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63743181

复制
相关文章

相似问题

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