Отключить репозиторий, который соответствует значению через ansible

(Суть не только в том, чтобы решить проблему, но и в том, чтобы понять, почему она создает проблему ).

Если вы не обновляли свою установку Kali в течение некоторого времени (tsk2 ), вы получите сообщение об ошибке GPG об истечении срока действия ключа репозитория (ED444FF07D8D0BF6 ). К счастью, эту проблему можно быстро решить, запустив от имени пользователя root:

следующее:

wget -q -O - https://archive.kali.org/archive-key.asc | apt-key add

0
05.03.2021, 08:06
2 ответа

Если вы не возражаете против манипулирования самими файлами репозитория, эта игра должна переименовывать все /etc/yum.repos.d/*.repoфайлы, кроме тех, которые указаны в списке allowed_repos.

Если вы точно знаете, какие файлы хотите отключить, другой ответ будет более простым.

  - name: Disable extra repositories
    vars:
      allowed_repos:
        - /etc/yum.repos.d/epel.repo
        - /etc/yum.repos.d/rhel.repo
      found_repo_files: []
    block:
      - name: Find all repositories
        find:
          paths: "/etc/yum.repos.d"
          file_type: file
          recurse: no
          patterns: "*.repo"
        register: repos_d

      - name: Compile repository list
        set_fact:
          found_repo_files: "{{ found_repo_files }} + [ '{{ item.path }}' ]"
        loop_control:
          label: "{{ item.path }}"
        with_items:
          - "{{ repos_d.files }}"

      - name: Rename any extra repositories
        when: not ansible_check_mode
        command:
          cmd: "mv {{ item }} {{ item }}.orig"
          removes: "{{ item }}"
        with_items:
          - "{{ found_repo_files | difference(allowed_repos) }}"
2
18.03.2021, 22:27

Вы можете использовать модуль yum _репозиторий для добавления или удаления репозиториев YUM. Согласно примерам в документации модуля, вы должны установить state: absentдля удаления репозиториев из вашей системы.

Наверное, это должно выглядеть так:

- name: Remove repositories ora and ol7_latest
  yum_repository:
    name: "{{ item }}"
    state: absent
    with_items:
     - ora
     - ol7_latest

Я не знаю, какие дополнительные репозитории установлены в вашей системе. Вы можете запустить yum repolist, чтобы увидеть, какие репозитории установлены.

0
18.03.2021, 22:27

Теги

Похожие вопросы