Ansible - Install a package attached to major versions

The actual package name in the repo is package-2.6.12-3.el7.x86_64.

The goal is to install the package with Ansible so that:

  • Make sure that a point release is installed, for example, package-2.6
  • Does not install major releases such as package-3.0
  • Updates for small releases, such as package-2.6.13-4

Repo may update packages from time to time, but I do not know when.

My thought was to install a package like this:

- name: Install package
  yum:
    name: package-2.6
    state: present

But the task is not completed because it is package-2.6not in the repo. While it just packageworks, but this is not future proof.


Update:

Wildcards seem to * dowork, for example package-2.6*.

+4
2

, Yum. Java Open JDK, java-1.7.0 java-1.8.0 yum.

, 1.7.x , 1.8.x.

- name: Install latest 1.7.x jdk
  yum:
    name: java-1.7.0-openjdk.x86_64
    state: latest

, :

$ rpm -q java-1.7.0-openjdk.x86_64
  java-1.7.0-openjdk-1.7.0.121-2.6.8.1.el6_8.x86_64

MongoDB 2.x 3.x.

repo Yum 2.x, 3.x. https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/

, 2.x, 3.x, 2.x disable enablerepo /update.

 - name: Ensure latest 2.x mongodb version is installed
   yum:
     name: mongodb-org
     disablerepo: "*"
     enablerepo: mongodb-org-2.6
     state: latest

: disablerepo: "*" mongodb , epel.

+1

:

*.

:

- name: Install package
  yum:
    name: package-2.6*
    state: latest 

:

AWS , ( EC2, CentOS 7, `mongodb-org-server-3.4.0 *).

, mongo, , , , . , , :

play.yml:

- hosts: all
  remote_user: centos
  tasks:
    - name: Add MongoDB repo for CentOS
      become: true
      copy:
        src: ./files/mongodb-org-3.4.repo
        dest: /etc/yum.repos.d/mongodb-org-3.4.repo
    - name: Install mongodb
      become: true
      yum:
        name: mongodb-org-server-3.4.0*
        state: latest # Works with 'present' too, but won't update versions

, ( play.yml):

files/mongod-org-3.4.repo:

[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc
+1

Source: https://habr.com/ru/post/1665198/


All Articles