Modify print server role - drivers

This commit is contained in:
bnolge
2026-03-17 17:00:10 +03:00
parent 4fa64277bb
commit 330a3d99be
+36 -27
View File
@@ -1,41 +1,34 @@
--- ---
- name: Установка необходимых пакетов печати - name: 1. Установка пакетов (включая фильтры и dbus для HP)
apt: apt:
name: name:
- cups - cups
- hplip - cups-filters
- printer-driver-hpcups - printer-driver-hpcups
- hplip
- dbus
state: present state: present
update_cache: yes update_cache: yes
- name: Добавление пользователя ladmin в группу администраторов CUPS - name: 2. Добавление ladmin в группу администраторов CUPS
user: user:
name: ladmin name: ladmin
groups: lpadmin groups: lpadmin
append: yes append: yes
- name: Остановка сервиса CUPS перед обновлением конфига - name: 3. Обеспечение работы D-Bus (нужен для драйверов HP)
service: service:
name: cups name: dbus
state: stopped state: started
enabled: yes
- name: Развертывание конфигурации принтеров из шаблона - name: 4. Отключение Colord в cups-files.conf (убирает таймауты)
template: lineinfile:
src: printers.conf.j2 path: /etc/cups/cups-files.conf
dest: /etc/cups/printers.conf line: "CreateSelfSignedCerts No"
owner: root insertafter: EOF
group: lp
mode: '0600'
- name: Копирование PPD файла (настройки дуплекса и драйвера) - name: 5. Развертывание основного конфига cupsd.conf
copy:
src: HP_P2015d.ppd
dest: /etc/cups/ppd/HP_P2015d.ppd
owner: root
group: root
mode: '0644'
- name: Развертывание основного конфигурационного файла CUPS
template: template:
src: cupsd.conf.j2 src: cupsd.conf.j2
dest: /etc/cups/cupsd.conf dest: /etc/cups/cupsd.conf
@@ -44,8 +37,24 @@
mode: '0644' mode: '0644'
notify: restart_cups notify: restart_cups
- name: Запуск и включение сервиса CUPS - name: 6. Настройка принтера через системную команду lpadmin (перезаписываем всегда)
service: ansible.builtin.shell: >
name: cups lpadmin -p "HP"
state: started -v "socket://192.168.20.249:9100"
enabled: yes -m "drv:///hp/hpcups.drv/hp-laserjet_p2015d_series.ppd"
-D "HP"
-E
become: true
register: printer_setup # Переименовал здесь, чтобы соответствовало вашим планам
changed_when: printer_setup.rc == 0
- name: 7. Установка принтера по умолчанию
ansible.builtin.command: "lpadmin -d {{ printer_name | default('HP') }}"
when: printer_setup.changed
become: true
register: default_res
changed_when: default_res.rc == 0
- name: 8. Очистка старых зависших заданий (кракозябр)
command: cancel -a
when: printer_setup.changed