Commit graph

94 commits

Author SHA1 Message Date
Ryan Coleman
1218d1103c Updated CHANGELOG and Modulefile for 0.0.2
This commit updates both the Modulefile and CHANGELOG for the 0.0.2
Puppet Forge release.
2012-03-26 17:01:54 -07:00
Cody Herriges
551a0d2188 Merge pull request #36 from rcoleman/tickets/13261/improve_smoke_tests
Tickets/13261/improve smoke tests
2012-03-26 16:46:24 -07:00
Ryan Coleman
41cedbb7ba (#13261) Add real examples to smoke tests.
This commit modifies some smoke tests with real-world usage examples
instead of providing things like 'foo' that the module user must
replace in order to conduct a smoke test or try out example functionality.
2012-03-26 16:31:49 -07:00
Ryan Coleman
d159a78a8f (#13261) Add key.pp smoke test
This commit adds a smoke test for key.pp, adding a key declaration
for the puppetlabs apt source.
2012-03-26 16:31:49 -07:00
Ryan Coleman
7116c7a624 (#13261) Replace foo source with puppetlabs source
Prior to this commit, the source.pp test included an apt source
named foo which broke the apt-get update exec when applied on a
target system. This commit removes it in favor of the puppetlabs
apt source which is valid on all target platforms.
2012-03-26 16:31:48 -07:00
Ryan Coleman
1ead0bf3ab Ignore pkg directory.
This commit modifies .gitingore to ignore changes to the pkg directory
used when building Forge releases.
2012-03-26 16:31:12 -07:00
Ryan Coleman
cd7a3efdf0 Merge pull request #37 from kbarber/ticket/master/13289
Ticket/master/13289 Style violations & rspec cleanup
2012-03-23 16:02:26 -07:00
Ken Barber
9c13872b5a (#13289) Fix some more style violations 2012-03-21 13:35:48 +00:00
Ken Barber
0ea4ffa9a2 (#13289) Change test scaffolding to use a module & manifest dir fixture path
This removes the need for depending on a global site.pp, and depending on the
checked out apt module to be called 'apt' as well.

It pulls in stdlib via sub-modules as I don't have a better way to deal with
dependencies yet. It has pinned the revision for stdlib to 2.2.1 which is the
minimum required version for apt to work.
2012-03-21 13:21:50 +00:00
Ken Barber
a758247f26 (#13289) Clean up style violations and fix corresponding tests 2012-03-21 13:21:11 +00:00
Ken Barber
99c3fd354d (#13289) Add puppet lint tests to Rakefile 2012-03-21 13:19:05 +00:00
Matthaus Litteken
a11a7b091f Merge pull request #34 from pdxcat/apt_key_should_be_case_insensitive
(#13125) Apt keys should be case insensitive
2012-03-15 00:24:03 -07:00
William Van Hevelingen
5148cbf5a6 (#13125) Apt keys should be case insensitive
Previously lowercase keys would be installed every
puppet run because apt-key list returns an uppercase
key. This commit makes the comparison case insensitive.
2012-03-15 00:06:27 -07:00
Matthaus Litteken
3dd2d1f227 Merge pull request #32 from pdxcat/convert_apt__key_to_use_anchors
Convert apt::key to use anchors
2012-03-14 23:33:46 -07:00
Ryan Coleman
fa40ebae34 Merge pull request #33 from rcoleman/tickets/13016/create_CHANGELOG
(#13016) Add a CHANGELOG since first commit
Skipping the merge review rules on this harmless commit of a changelog.
2012-03-07 18:46:13 -08:00
Ryan Coleman
909942bfd5 (#13016) Add a CHANGELOG since first commit 2012-03-07 21:22:50 -05:00
Reid Vandewiele
b9607a440d Convert apt::key to use anchors
Previously, apt::key used a noop exec hack to do exactly what anchors were
intended to be used for. This commit removes the exec hack and achieves the
same end using Anchor resources from the puppetlabs/stdlib module.
2012-03-07 14:20:34 -08:00
Nan Liu
44fd06c4a4 Merge pull request #31 from pdxcat/fix_release_parameter_test
Modify apt::source release verification to work correctly with puppet-rspec
2012-03-07 11:24:21 -08:00
Reid Vandewiele
d4fec561f3 Modify apt::source release parameter test
This commit modifies the release parameter test in apt::source to work
correctly within puppet-rspec for edge-case resource definitions. Previously,
the test for the $release parameter was written as

`if ! $release { fail() }`

This commit updates the test to be written as

`if $release == undef { fail() }`

Additionally, the tests for correct behavior in the presence or absence of a
$release parameter have been beefed up.

The reason for making this change relates to examples such as the following
resource definition:

apt::source { "jenkins":
  location    => "http://pkg.jenkins-ci.org/debian",
  release     => "",
  repos       => "binary/",
  key         => "D50582E6",
  key_source  => "http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key",
  include_src => false,
}

Note that the $release parameter is given as the empty string. In practice,
this is perfectly valid and everything will work great. However, it seems that
the empty string gets interpreted by something in puppet-rspec as something
equivalent to "False", and thus when testing, the above resource definition
would fail with "Puppet::Error: lsbdistcodename fact not available: release
parameter required" even though the $release parameter has been explicitely
specified (as the empty string).

See also: https://github.com/rtyler/puppet-jenkins/issues/9
2012-03-07 10:10:46 -08:00
Matthaus Litteken
65a7a030e0 Merge pull request #30 from rcoleman/tickets/12917/add_contributors_to_readme
(#12917) Add contributors to README
2012-03-01 15:10:54 -08:00
Ryan Coleman
1132a07f3f (#12917) Add contributors to README
Prior to this commit, this modules README had no list of contributors.
This commit adds such a list and corrects a typo I overlooked on the
last pull request.
2012-03-01 15:04:51 -08:00
Ryan Coleman
76dbf992e0 Merge pull request #26 from pdxcat/ticket_12823_aptkey_defined_type
(#12823) Add apt::key defined type and modify apt::source to use it

Reviewed and tested by Ryan Coleman (ryan@puppetlabs.com)
2012-03-01 14:40:44 -08:00
Reid Vandewiele
8cdaf855a1 (#12823) Add apt::key defined type and modify apt::source to use it
Adding this defined type allows puppet to add keys to the apt keystore without
needing to add a corresponding source; it also adds the "key_source" parameter
for wget'ing keys from arbitrary URLs, and allows for keys to be explicity
removed.

apt::key allows a key to be ensured present multiple times to account for
apt::source resources that all reference the same key. However, this means
that it is possible for a given key to be defined multiple times with
differing source parameters. e.g.

apt::key { "Add key: 4BD6EC30 from Apt::Source bunny":
  key        => "4BD6EC30",
  key_server => "pgp.mit.edu",
}

apt::key { "Add key: 4BD6EC30 from Apt::Source rabbit":
  key        => "4BD6EC30",
  key_server => "keyserver.ubuntu.com",
}

The defined type will accept both definitions and will create multiple exec
resources. This was deemed preferable to the alternative (creating only one
exec resource) in that one broken definition won't hose an entire catalog. If
one definition fails to install the key because of a bad "key_server", the
next apt::key that uses the key will get it done.
2012-03-01 14:15:52 -08:00
Ryan Coleman
9f570782aa Merge pull request #27 from blkperl/ticket_12809_refactor_release
(#12809) $release should use $lsbdistcodename and fall back to manual in...

Reviewed and tested by Ryan Coleman (ryan@puppetlabs.com)
2012-03-01 13:37:51 -08:00
William Van Hevelingen
7c0d10b392 (#12809) $release should use $lsbdistcodename and fall back to manual input
This commit changes $release to default to Facter's $lsbdistcodename
and fall back to a Parse Error if $release is not set and $lsbdistcodename
does not exist. Previously $release was hardcoded to karmic.

This commit also modifies apt::ppa to use $release and sets the
files to be ensured so that they are not purged when purge_sources_list_d
is set to true.
2012-03-01 11:15:02 -08:00
Ryan Coleman
b1eb28956e Merge pull request #23 from haus/python_properties
Check if python-software-properties is defined before attempting to define it.

Reviewed and tested by Ryan Coleman (ryan@puppetlabs.com)
2012-02-24 11:20:52 -08:00
Ryan Coleman
fab62e6de7 Merge pull request #22 from haus/unique_required_packages
Allow duplicate required_packages between sources

Reviewed and tested by Ryan Coleman (ryan@puppetlabs.com)
2012-02-24 11:12:39 -08:00
Ryan Coleman
2a57cbb8ca Merge pull request #24 from haus/fix_source_key_tests
Fix source specs to test all key permutations

Reviewed and tested by Ryan Coleman (ryan@puppetlabs.com)
2012-02-24 10:56:55 -08:00
Matthaus Litteken
e68e663f28 Merge pull request #25 from rcoleman/ticket_12522_purge_option_take_2
(#12522) Split purge option to spare sources.list
2012-02-24 10:29:09 -08:00
Ryan Coleman
be2cc3ec1b (#12522) Adjust spec test for splitting purge
Now that the purge parameter is split into two, the spec test needs
adjusted. This commit makes that adjustment.
2012-02-24 10:17:26 -08:00
Ryan Coleman
7dc60ae5ea (#12522) Split purge option to spare sources.list
Prior to this commit, when using the purge option, unmanaged entries
in both /etc/apt/sources.list and sources.list.d would be purged.

This commit splits purge into purge_sources_list and purge_sources_list_d
which handle the purging of those items separately. Brief documentation on
each added to class documentation.
2012-02-24 09:27:28 -08:00
Matthaus Litteken
9059c4e2a8 Fix source specs to test all key permutations
Previously only one should in each block was being evaluated. This moves each
should to its own block so that all values are tested. It also adds another set
of params so that all useful permutations of key, key_server, and key_content
are generated. It also replaces the previous ternary assignment for param_set
with a hash merge.
2012-02-23 22:14:38 -08:00
Matthaus Litteken
8acb202685 Add test for python-software-properties package
This test adds the precondition that the python-software-packages package be
installed before the apt class is synced. If the defined function were not
called around the package resource, this test would fail with a duplicate
package resource error.
2012-02-23 21:40:42 -08:00
Peter Drake
a4af11f7bc Check if python-software-properties is defined before attempting to define it. 2012-02-23 21:27:48 -08:00
Matthaus Litteken
1dcbf3d303 Add tests for required_packages change
This updates the tests for the apt::source defined type to use the new name for
the exec resource and the new parameter for the same exec.
2012-02-23 21:04:57 -08:00
Matthaus Litteken
f3735d2ba2 Allow duplicate $required_packages
Previously, if more than one apt::source required the same packages to be
installed it would fail with a duplicate exec resource. This adds the name of
the source resource to the exec and gives the exec a name, moving it to a
command parameter for the exec.
2012-02-23 21:01:20 -08:00
Matthaus Litteken
8171d35470 Merge branch 'allow-same-key' 2012-02-23 20:54:10 -08:00
Matthaus Litteken
74c8371533 (#12430) Add tests for changes to apt module
This update reflects the changes to the apt module to allow duplicate keys. It
mostly involves tests for changes to the resource names to make them unique
between defines.
2012-02-23 20:51:27 -08:00
Christian G. Warden
97ebb2d5d5 Test two sources with the same key 2012-02-23 15:44:26 -08:00
Ryan Coleman
44510890b4 Merge pull request #17 from blkperl/ticket_12526_apt_disable_keys
(#12526) Add ability to reverse apt { disable_keys => true }

Reviewed by Ryan Coleman (ryan@puppetlabs.com)
2012-02-23 14:55:55 -08:00
William Van Hevelingen
1160bcd6d1 (#12526) Add ability to reverse apt { disable_keys => true }
The setting `disable_keys => true` parameter in the apt module creates
/etc/apt/apt.conf.d/99unauth with the contents
"APT::Get::AllowUnauthenticated 1;". Changing `disable_keys`
does not remove this file. This patch makes it so that
`disable_keys => false` will remove /etc/apt/apt.conf.d/99unauth.
2012-02-23 14:37:04 -08:00
Ryan Coleman
c09f476b9d Merge pull request #20 from blkperl/ticket_12522_purge_option
(#12522) Adding purge option to apt class

Reviewed by Ryan Coleman
2012-02-23 14:31:45 -08:00
William Van Hevelingen
923375f093 Merge pull request #1 from rcoleman/ticket_12522_purge_option
Add Modulefile to puppet-apt
2012-02-23 14:05:25 -08:00
Ryan Coleman
2842d73b95 Add Modulefile to puppet-apt
Now that puppet-apt depends on puppetlabs-stdlib, an explicit
dependency is required. Modulefile was entirely missing. This commit
adds on.
2012-02-23 14:01:31 -08:00
Christian G. Warden
c65774204d Allow the use of the same key in multiple sources
Allow the use of the same key in multiple sources by including the name
of the source in the declaration for the exec which adds the key.
2012-02-14 11:40:29 -08:00
William Van Hevelingen
8c279636f5 (#12522) Adding purge option to apt class
Adds a purge option to the apt class to remove repositories
that are not managed by apt::source
2012-02-14 10:51:56 -08:00
Matthaus Litteken
52adc3555c Merge pull request #18 from bodepd/apt_proxy_tests
(#12529) Add unit test for apt proxy settings
2012-02-13 10:02:50 -08:00
Dan Bode
997c9fdc40 (#12529) Add unit test for apt proxy settings
This commit adds unit tests to validate that the
apt proxy is configured as expected when the class
parameter proxy_host is set as a class parameter for
the apt class.
2012-02-13 09:58:30 -08:00
Ken Barber
3abad192fa Merge pull request #15 from bodepd/proxysupport
(#12529) Add parameter to support setting a proxy for apt
2012-02-08 15:20:32 -08:00
Dan Bode
50f3cca0c6 (#12529) Add parameter to support setting a proxy for apt
This commit adds two class parameter to apt that can be used to
specify a proxy to use with apt.

  - proxy_host
  - proxy_port
2012-02-08 15:06:53 -08:00