Назад | Перейти на главную страницу

Ansible: распечатать список пакетов, удаленных apt autoremove

Я использую apt autoremove в своей книге:

- name: remove autoinstalled crap
  apt:
    autoremove: yes

Я хотел бы видеть список удаленных пакетов в выводе ansible-playbook. Является ли это возможным?

Стандартной процедуры нет. Список удаляемых пакетов должен быть создан. Например, зарегистрируйте возвращаемые данные

    - name: remove autoinstalled crap
      apt:
        autoremove: yes
      register: result

Выбрать строки с удаленными пакетами и карта regex_replace вторые группы, которые должны быть названиями удаленных пакетов

    - set_fact:
        pkg_removed: "{{ result.stdout_lines|
                         select('regex', '^Removing (.*)$')|
                         map('regex_replace', '^(.*?) (.*?) (.*)$', '\\2')|
                         list }}"
    - debug:
        var: pkg_removed

дать (после недавнего обновления Ubuntu 20.04)

  pkg_removed:
  - linux-headers-5.4.0-29-generic
  - linux-headers-5.4.0-29
  - linux-headers-5.4.0-31-generic
  - linux-headers-5.4.0-31
  - linux-modules-extra-5.4.0-29-generic
  - linux-image-5.4.0-29-generic
  - linux-modules-extra-5.4.0-31-generic
  - linux-image-5.4.0-31-generic
  - linux-modules-5.4.0-29-generic
  - linux-modules-5.4.0-31-generic