rin*_*t.6 3 yum ansible vagrant-provision
我正在尝试使用Ansible从自定义存储库安装MariaDB(或任何软件),但是我不确定如何使用yum / yum_repository模块导入.repo文件。
这是我的剧本:
-
hosts: all
become: true
remote_user: root
tasks:
-
name: set system timezone
timezone:
name: America/Toronto
-
name: add custom repository
yum_repository:
name: centos_o
description: custom repositories
baseurl: http://example.net/mirror/centos_o.repo
-
name: ensure mariadb is installed
yum:
name: mariadb-server-5.5.*
state: installed
Run Code Online (Sandbox Code Playgroud)
我已经尝试了所有include,metalink,baseurl和mirrorlist没有运气。另外,我缺少GPG关键步骤,但是我什至无法正确添加回购协议。
centos_o.repo文件如下所示:
# JENKINS
[jenkins]
name=CentOS-$releasever - JENKINS
baseurl=http://example.net/mirror/jenkins/
enabled=0
gpgcheck=1
# MariaDB 5.5
[mariadb]
name=CentOS-$releasever - MariaDB
baseurl=http://example.net/mirror/mariadb/yum/5.5/centos$releasever-amd64/
enabled=0
gpgcheck=1
# MariaDB 10.0
[mariadb]
name=CentOS-$releasever - MariaDB
baseurl=http://example.net/mirror/mariadb/yum/10.0/centos$releasever-amd64/
enabled=0
gpgcheck=1
Run Code Online (Sandbox Code Playgroud)
这是我要转换为Ansible的Shell脚本版本:
yum clean all
yum-config-manager --add-repo=http://example.net/mirror/centos_o.repo
yum-config-manager --enable mariadb
rpm --import http://example.net/mirror/mariadb/RPM-GPG-KEY-MariaDB
Run Code Online (Sandbox Code Playgroud)
如果有什么不同,我可以在CentOS机器上使用Vagrant的Ansible本地供应商运行它。
小智 5
将shell命令与created标志一起使用。如果回购文件存在,则将跳过该步骤。您需要确保知道什么叫回购文件。
- name: Add CentOS_o repository
shell: yum-config-manager --add-repo=http://example.net/mirror/centos_o.repo
args:
creates: /etc/yum.repos.d/centos_o.repo
Run Code Online (Sandbox Code Playgroud)
如果您需要向网址添加任何架构,请使用类似
- name: Add CentOS_7_speciality repository
shell: yum-config-manager --add-repo=http://example.net/{{ ansible_distribution | lower }}/{{ ansible_distribution_major_version }}/{{ ansible_architecture }}/
centos_o.repo
args:
creates: /etc/yum.repos.d/centos_o.repo
Run Code Online (Sandbox Code Playgroud)
Ansible会将变量替换为
{{ ansible_distribution | lower }} == centos
{{ ansible_distribution_major_version }} == 7
{{ ansible_architecture }} == x86_64
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2803 次 |
| 最近记录: |