A puppet module to manage an apt-cacher-ng service and its configuration. Applying aptcacherng
to a node will configure the node to act as a caching proxy for apt (and other) package management systems.
Use of aptcacherng
causes installation of the apt-cacher-ng
package, generation of the config file /etc/apt-cacher-ng/acng.conf
, and the apt-cacher-ng
service to run and be enabled.
Quickest way to get an apt caching proxy using defaults:
class {'aptcacherng':}
This will apply all resources and leave you with apt-cacher-ng
running on port 3142
.
Simply declaring the aptcacherng
class for a node, will apply the class using standard apt-cacher-ng
defaults:
- CacheDir: /var/cache/apt-cacher-ng
- LogDir: /var/log/apt-cacher-ng
- Port: 3142
- ReportPage: acng-report.html
- ExTreshold: 4
All apt-cacher-ng
config file directives are available as parameters to the aptcacherng
class. For example, to change the directory where apt-cacher-ng
will store its cache:
class {'aptcacherng':
cachedir => '/data/apt/apt-cacher-ng'
}
Or, in a YAML hiera data source—for example—you could make use of automatic parameter lookups like so:
---
classes:
- aptcacherng
aptcacherng::cachedir: "/data/apt/apt-cacher-ng"
If you wish to make aptcacherng
install a specific apt-cacher-ng
package, you may pass the packagename
string parameter when declaring the class.
If you're using the puppetlabs-apt
module, telling apt
to use your apt-cacher-ng
service is simple. For example:
class {'apt':
proxy_host => 'server.name.com',
proxy_port => '3142',
}
Only debian based distributions are currently supported.
Development takes place in the puppet-aptcacherng GitHub repository. Pull Requests happily accepted.