Skip to content

Additions to Ubuntu's app, including some rather useful sources.

Notifications You must be signed in to change notification settings

gosquared/apt-cookbook

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Description

Configures various APT components on Debian-like systems. Also includes a LWRP.

Requires the chef-extensions gem.

Recipes

default

The default recipe runs apt-get update during the Compile Phase of the Chef run to ensure that the system's package cache is updated with the latest. It is recommended that this recipe appear first in a node's run list (directly or through a role) to ensure that when installing packages, Chef will be able to download the latest version available on the remote APT repository.

This recipe also sets up a local cache directory for preseeding packages.

cacher

Installs the apt-cacher package and service so the system can provide APT caching. You can check the usage report at http://{hostname}:3142/report. The cacher recipe includes the cacher-client recipe, so it helps seed itself.

cacher-client

Configures the node to use the apt-cacher server as a client.

Resources/Providers

This cookbook contains an LWRP, apt_repository, which provides the add and remove actions for managing additional software repositories with entries in the /etc/apt/sources.list.d/ directory. The LWRP also supports passing in a key and keyserver as attributes.

  • add takes a number of attributes and creates a repository file and builds the repository listing.
  • remove deletes the /etc/apt/sources.list.d/#{new_resource.repo_name}-sources.list file identified by the repo_name passed as the resource name.

Usage

Put recipe[apt] first in the run list. If you have other recipes that you want to use to configure how apt behaves, like new sources, notify the execute resource to run, e.g.:

template "/etc/apt/sources.list.d/my_apt_sources.list" do
  notifies :run, resources(:execute => "apt-get update"), :immediately
end

The above will run during execution phase since it is a normal template resource, and should appear before other package resources that need the sources in the template.

Put recipe[apt::cacher] in the run_list for a server to provide APT caching and add recipe[apt::cacher-client] on the rest of the Debian-based nodes to take advantage of the caching server.

An example of The LWRP apt_repository add action:

apt_repository "zenoss" do
  uri "http://dev.zenoss.org/deb"
  distribution "main"
  components ["stable"]
  action :add
end

and the remove action:

apt_repository "zenoss" do
  action :remove
end

License and Author

Author:: Joshua Timberman ([email protected]) Author:: Matt Ray ([email protected]) Author:: Gerhard Lazu ([email protected])

Copyright 2009-2011 Opscode, Inc. Copyright 2012 Gerhard Lazu

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

Additions to Ubuntu's app, including some rather useful sources.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 100.0%