zoukankan      html  css  js  c++  java
  • ansbile-playbook 常用操作

    ansible-playbook 模板

    • 执行模板
    - name: use vars define variables
      hosts: 192.168.64.124
      tasks:
        - name: add line before Listen 80
          lineinfile:
            dest: /etc/hosts
            line: '192.168.200.8 test.com'
    
    
    • 套一个文件内部变量的模板
    [root@localhost mysql]# cat test_services.yaml 
    test_services:
     - httpd
     - mariadb
    
    
    [root@localhost mysql]# cat install_pkgs.yaml 
    - name: feile hosts
     hosts: 192.168.64.124
     vars_files:
       - test_services.yaml
     tasks:
       - name: start services group
         service:
           name: "{{ item }}"
           state: started
         loop: "{{ test_services }}"
    
    
    • yum 和启动 以及更新包
    [root@localhost mysql]# cat s7.yaml 
    ---
    - name: Install vim
      hosts: webservers
      vars: 
        packeages:
        - lrzsz
      tasks:
        - name: install yum packeage
          yum:
            name: "*"
            state: latest
            #update_cache: yes
        - name: Instal Packages
          yum:
            name: "{{ packeages }}"
            state: latest
            #update_cache: yes
        - name: httpd httpd start
          service:
            name: httpd
            state: restarted
            enabled: yes
    
    
    • 替换行内文字
    [root@localhost mysql]# cat s5.yaml 
    - name: use vars define variables
      hosts: 192.168.64.124
      tasks:
        - name: add line before Listen 80
          lineinfile:
            dest: /etc/hosts
            line: '192.168.200.8 test.com'
    [root@localhost mysql]# cat s4.yaml 
    - name: use vars define variables
      hosts: 192.168.64.124
      tasks:
        - name: add line before Listen 80
          lineinfile:
            dest: /etc/hosts
            regex: '^192.168.200'
            state: absent
    
    
    • 判断路径
    [root@localhost mysql]# cat if_test.yaml
    - hosts: webservers
      vars:
        testpath: /home
      tasks:
        - debug: 
            msg: "file exist"
          when:  testpath is exists # 路径存在
          #when: not testpath is exists # 路径不存在
    
    • 判断结果返回
    sucess或succeeded:通过任务执行结果返回的信息判断任务的执行状态,任务执行成功则返回true
    failure或failed:任务执行失败则返回true
    change或changed:任务执行状态为changed则返回true
    skip或skipped:任务被跳过则返回true
    
    [root@localhost mysql]# cat s8.yaml 
    - hosts: webservers
      gather_facts: no 
      vars: 
        doshell: true
      tasks:
        - shell: 'cat /tmp/text.txt'
          when: doshell
          register: result
          ignore_errors: true
        - debug:
            msg: "success"
          when: result is success
        - debug: 
            msg: "failed"
          when: result is failure
        - debug:
            msg: "changed"
          when: result is change
        - debug:
            msg: "skip"
          when: result is skip
    
    
  • 相关阅读:
    白盒测试 语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖(转)
    白盒测试--基本路径测试法详细说明和举例
    测试用例编写规范
    EF数据库连接时候出错
    元祖,字典,列表及其内置方法
    字符串、列表练习’
    数字,字符串,列表及其内置方法
    流程控制代码练习
    易出错知识点
    流程控制if、while、for
  • 原文地址:https://www.cnblogs.com/zoulixiang/p/14072581.html
Copyright © 2011-2022 走看看