Changeset 469


Ignore:
Timestamp:
Dec 7, 2009, 8:47:36 PM (14 years ago)
Author:
sebas
Message:

manejo de filtro por impresora, de ppd con un path local o sino un archivo desde puppet: una masa todo esto

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/puppet/modules/cups/manifests/init.pp

    r468 r469  
    55
    66   package { "cupsys": ensure => "installed" }
     7   package { [ "hplip", "hpijs-ppds" ]: ensure => installed; }
    78
    89   file { "/etc/cups/cupsd.conf":
     
    1314   }
    1415
     16   file { "/etc/cups/printers.conf":
     17      ensure => present,
     18      require => Package["cupsys"],
     19      owner => "root", group => "lp", mode => "600",
     20   }
     21
     22
    1523#   service { "cups":
    1624#      enable => true,
     
    2028}
    2129
    22 define cups::printer ($printer, $p_deviceuri, $p_description, $p_location, $p_pathppd, $p_accept = "", $p_enable = "" )
     30define cups::printer ($printer, $p_deviceuri, $p_description, $p_location, $p_pathppd = "", $p_ppd = "", $p_filter = "", $p_accept = "", $p_enable = "" )
    2331 {
    2432   include cups::server
    2533
    26   exec { "cups_create_printer_$name":
    27     command => "lpadmin -p $printer -v $p_deviceuri -D '$p_description' -L '$p_location' -P $p_pathppd",
    28     path => "/bin:/sbin:/usr/sbin:/usr/bin",
    29     unless => "/bin/grep $printer /etc/cups/printers.conf",
    30     require => Package["cupsys"],
     34  if $p_pathppd {
     35    exec { "cups_create_printer_$name":
     36      command => "lpadmin -p $printer -v $p_deviceuri -D '$p_description' -L '$p_location' -P $p_pathppd",
     37      path => "/bin:/sbin:/usr/sbin:/usr/bin",
     38      unless => "/bin/grep $printer /etc/cups/printers.conf",
     39      require => [Package["cupsys"], Package["hplip"], Package["hpijs-ppds"]],
     40    }
     41  } else {
     42     file { "/etc/cups/ppd/$p_ppd":
     43     ensure => present,
     44     owner => "root", group => "root", mode => "644",
     45     source  => "puppet:///files/cups/$name/$p_ppd",
     46     require => [Package["cupsys"], Package["hplip"], Package["hpijs-ppds"]],
     47    }
     48    $p_pathppdd = "/etc/cups/ppd/"
     49
     50    exec { "cups_create_printer_$name":
     51      command => "lpadmin -p $printer -v $p_deviceuri -D '$p_description' -L '$p_location' -P $p_pathppdd$p_ppd",
     52      path => "/bin:/sbin:/usr/sbin:/usr/bin",
     53      unless => "/bin/grep $printer /etc/cups/printers.conf",
     54      require => [Package["cupsys"], Package["hplip"], Package["hpijs-ppds"]],
     55    }
     56  }
     57
     58  if $p_filter {
     59     file { "/usr/lib/cups/filter/$p_filter":
     60     ensure => present,
     61     owner => "root", group => "root", mode => "755",
     62     source  => "puppet:///files/cups/$name/$p_filter",
     63     require => exec["cups_create_printer_$name"],
     64    }
     65  } else {
     66    debug ("'$printer' doesn't need a special filter")
    3167  }
    3268
     
    5389  }
    5490
    55    file { "/etc/cups/printers.conf":
    56       ensure => present,
    57       require => Package["cupsys"],
    58       owner => "root", group => "lp", mode => "600",
    59    }
    60 
    61    service { "cups":
    62       enable => true,
    63       ensure => running,
    64       subscribe => [ Package["cupsys"], File["/etc/cups/printers.conf"] ],
    65    }
     91#   service { "cups":
     92#      enable => true,
     93#      ensure => running,
     94#      subscribe => [ Package["cupsys"], File["/etc/cups/printers.conf"] ],
     95#   }
    6696}
    6797
Note: See TracChangeset for help on using the changeset viewer.