首页 > 其他 > 详细

条件判断配置不同系统yum

时间:2021-01-14 09:57:18      阅读:27      评论:0      收藏:0      [点我收藏+]
系统  
RHEL8(ansible) 主控
CentOS7 被控
RHEL8 被控

 

 

目录结构

[root@ansible warehouse]# tree
.
├── ansible.cfg
├── inventory
├── scripts
│   └── el.sh
└── warehouse.yml

 el.sh

[root@ansible warehouse]# vim scripts/el.sh#!/bin/bash
#!/bin/bash
#install
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
#yum config
sed -i -e ‘/mirrors.cloud.aliyuncs.com/d‘ -e ‘/mirrors.aliyuncs.com/d‘ /etc/yum.repos.d/CentOS-Base.repo
sed  -i ‘s#\$releasever#8#g‘  /etc/yum.repos.d/CentOS-Base.repo
#makecache
yum clean all  && yum makecache 
#install epel
yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm
#epel config
sed -i ‘s|^#baseurl=https://download.fedoraproject.org/pub|baseurl=https://mirrors.aliyun.com|‘ /etc/yum.repos.d/epel*
sed -i ‘s|^metalink|#metalink|‘ /etc/yum.repos.d/epel*
sed  -i ‘s#\$releasever#8#g‘  /etc/yum.repos.d/epel.repo

 

 playbook

[root@ansible warehouse]# vim warehouse.yml
---
- hosts: group_yum
  tasks:
    - name: yum warehouse
      script: ./scripts/el.sh      
      when: >
        (  ansible_facts[‘distribution‘] == "RedHat")
        and
        ( ansible_facts[‘distribution_version‘] > "7")
     
    - name: epel
      get_url:
        url: http://mirrors.aliyun.com/repo/epel-7.repo
        dest: /etc/yum.repos.d/      
      when: >
        ( ansible_facts[‘distribution‘] == "CentOS")
        and
        ( ansible_facts[‘distribution_version‘] > "6")

 执行剧本

[root@ansible warehouse]# ansible-playbook    warehouse.yml 

PLAY [group_yum] ******************************************************************************************

TASK [Gathering Facts] ************************************************************************************
ok: [redhat]
ok: [centos]

TASK [yum warehouse] **************************************************************************************
skipping: [centos]
changed: [redhat]

TASK [epel] ***********************************************************************************************
skipping: [redhat]
changed: [centos]

PLAY RECAP ************************************************************************************************
centos                     : ok=2    changed=1    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0   
redhat                     : ok=2    changed=1    unreachable=0    failed=0    skipped=1    rescued=0    ignored=0   

 查看

[root@ansible warehouse]# ansible group_yum -a "ls /etc/yum.repos.d/"
redhat | CHANGED | rc=0 >>
CentOS-Base.repo
epel-modular.repo
epel-playground.repo
epel.repo
epel-testing-modular.repo
epel-testing.repo
redhat.repo
centos | CHANGED | rc=0 >>
CentOS-Base.repo
CentOS-CR.repo
CentOS-Debuginfo.repo
CentOS-fasttrack.repo
CentOS-Media.repo
CentOS-Sources.repo
CentOS-Vault.repo
epel-7.repo

 

条件判断配置不同系统yum

原文:https://www.cnblogs.com/diqiyao/p/14275202.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!