Commit graph

286 commits

Author SHA1 Message Date
Robert Drake
0dce05adae Add support for creating pins from main class
This lets you create apt::pin resources as an apt param hash.  It also
supplies appropriate tests and documentation.
2015-09-04 22:31:13 -04:00
Morgan Haskel
9f43b2db26 MODULES-2446 - Fix pinning for backports
The 2.x series added a changed behavior for backport pinning to pin to
origin instead of release. Pinning to release is the correct behavior
for backports though.
2015-08-26 16:29:54 -07:00
Brett Delle Grazie
9ad4fd682d MODULES-2269: Expose notify_update setting
* Expose the underlying notify_update setting of the apt::settings resource
This is because not all configuration file changes should trigger an apt::update notification
* apt::pin also shouldn't result in an apt-update call
Adding a pin configuration should apply to the next apt-get update call it shouldn't trigger one itself.
* Added documentation
* Add tests for apt::conf notify_update
2015-08-16 19:16:36 +01:00
Callahan, Michael Joseph
afa4d45ee9 Added an ensure parameter for user control of proxy presence. Defaults to undef to resist breaking any current setup.
added spec entry

Added validation

fixed ensure hash
2015-08-05 16:03:28 -04:00
Daniele Sluijters
2cf089576d Merge pull request #545 from raoulbhatia/master
Use Debian's new official mirrors redirector
2015-07-23 14:10:47 +02:00
Morgan Haskel
cd37fc34f2 MODULES-2190 - Fix anchor issues 2015-07-21 10:19:15 -07:00
Raoul Bhatia
b8462bdc43 Use Debian's new official mirrors redirector
See https://www.debian.org/News/weekly/2015/05/#httpredir
2015-07-05 09:17:12 +02:00
Morgan Haskel
74bb26d148 hashes are not supported in selectors 2015-06-17 14:56:22 -07:00
Morgan Haskel
a09dcafb32 typo 2015-06-17 13:24:49 -07:00
Morgan Haskel
8d98105774 Don't add puppetlabs sources for lucid
They no longer exist
2015-06-17 11:59:40 -07:00
Hunter Haugen
40c130c4cf Add helper to install puppet/pe/puppet-agent 2015-06-11 16:53:42 -07:00
Justin Stoller
6dba810090 (maint) allow setting PUPPET_VERSION in acceptance 2015-06-08 21:50:05 -07:00
Morgan Haskel
396f308e6a Compatibility between 1.8.x and 2.x for apt::source 2015-06-08 11:19:45 -07:00
Morgan Haskel
d50fef82e8 Make apt::key compatible with 1.8.x 2015-06-04 09:41:27 -07:00
Hunter Haugen
48152d4a89 Don't stub puppetversion
The puppetversion fact still needs to represent puppet's version that is being used to test
2015-05-06 15:10:05 -07:00
Morgan Haskel
1be2560e1e Stubbing File.file? is hard 2015-04-30 12:54:37 -07:00
Morgan Haskel
fe9741fe1d Merge pull request #505 from puppetlabs/install-lsb-release
Clear up lsb-release error
2015-04-29 15:38:38 -07:00
Daniele Sluijters
1318344500 Give clearer instructions around lsb-release 2015-04-29 21:04:27 +02:00
Dustin Lactin
6e51be76ea Added new apt_reboot_required fact, updated readme, and added unit tests 2015-04-29 11:36:51 -06:00
Morgan Haskel
21a2462a58 Compatibility for puppet < 3.5.0 2015-04-27 13:48:41 -07:00
Morgan Haskel
fff702270e Update tests to work with rspec-puppet 2.x
Also enable future parser testing. Need to allow failures with future
parser for now since none of the published gems have the fix for
PUP-4379
2015-04-22 16:40:48 -07:00
Morgan Haskel
2802868f96 Iterate through multiple keys 2015-04-20 12:44:42 -07:00
Morgan Haskel
3a20254108 Don't purge by default. That seems unnecessarily destructive. 2015-04-14 11:03:17 -07:00
Daniele Sluijters
fe60980781 apt::conf: Don't require content ensure=>absent. 2015-04-14 12:41:57 +02:00
Morgan Haskel
d3ca10fd2f Remove default support for Linux Mint and Cumulus Networks
NOTE: While out-of-the box support is disabled, it is still possible to
get the same configurations, it will just require explicitly setting the
necessary codename-munging.

This should only affect `apt::ppa`
2015-04-13 10:35:19 -07:00
Morgan Haskel
044fb5faf5 Add testing, docs, and examples for backports 2015-04-12 11:25:47 -07:00
Daniele Sluijters
791012b2c9 source: Support complex pin, like key does.
This adds support for passing in a full pin declaration as the pin
parameter on a source declaration.

It keeps the old behaviour intact, you can still simply do `pin => '10'`
and it will pin on origin with a priority of 10.

Should that not be what you want you can now pass in a full pin
declaration instead. We make no assumptions here, whatever you pass in
will be passed through to pin as-is with the exception of the values for
`ensure` and `before` which are always overridden by us to ensure
everything keeps working as designed.
2015-04-09 15:44:20 -07:00
Morgan Haskel
dc746734f1 Merge remote-tracking branch 'upstream/master' into merge_master_to_next 2015-03-25 18:32:09 -04:00
Morgan Haskel
911c4de90f (MODULES-1156, MODULES-769) Remove unnecessary anchors
`apt::ppa` and `apt::setting` don't actually include `apt::update` so
anchors are unnecessary. Move `apt` to use contain instead of anchors,
since it wasn't anchoring properly anyways. Update the tests to make
sure it can have settings and ppas depending on each other without
cycles.
2015-03-24 18:18:14 -04:00
Daniele Sluijters
ff51f714ab Merge pull request #472 from mhaskel/acceptance_test_fixes
Acceptance test fixes
2015-03-19 10:16:15 +01:00
Morgan Haskel
df47ca7ff4 Remove update['always'] = true support
We don't really need both of `update['always'] = true` and
`update['frequency'] = 'always'`.
2015-03-18 13:52:12 -07:00
Morgan Haskel
f5c6775564 Make the acceptance tests work 2015-03-18 12:56:29 -07:00
Morgan Haskel
6bf1ac351f Update all the unit tests to look for full fingerprints
Merged #466 too quickly
2015-03-16 16:40:46 -07:00
Patrick Gansterer
61a4fb6979 Fix gpg key checking warings after f588f26
Use the full fingerprint for all keys to silence the warning.
2015-03-16 19:34:24 +01:00
Morgan Haskel
81bb96c898 Update docs and test for $legacy_origin 2015-03-13 14:56:53 -07:00
Morgan Haskel
97f70034c9 Merge pull request #459 from tphoney/modules-1675_check_gpg_version
initial commit for apt_key checking
2015-03-13 14:40:43 -07:00
Morgan Haskel
0c35704245 Make installation of software-properties optional
This is cherry-picked from the PPA cleanup happening for the 2.0.0 release.

Conflicts:
	manifests/params.pp
	manifests/ppa.pp
2015-03-13 13:38:38 -07:00
tphoney
f588f2651a initial commit for gpg key checking
better attempt at gpg version checking

adding in key length warning

removing version check, adding key check

adding tests

clean up the code

small changes

use commands

documentation updates
2015-03-12 18:25:26 +00:00
Daniele Sluijters
41a2725683 apt::source: Make location mostly required.
In what universe does it make sense to create a `sources.list.d` entry
for a repository **without** specifying where this repository is?
😖

😞 😩 😧 😱

Only when removing the resource should a location not be required.
2015-03-06 17:40:45 +01:00
Daniele Sluijters
90bade9561 apt::source: Rename trusted_source.
It is weird that `trusted_source` would default to `false` as that would
imply that we normally don't trust our sources. This is opposite to the
truth, by default we trust them but only if the Releases file can be
verified (meaning it is signed by a GPG key known to apt).

What we were telling apt is that it should trust this source even if the
Releases file and the repository is unsigned. This is better captured
with `allow_unsigned` and better highlights the danger of what you're
doing, installing packages from a source we cannot authenticate.
2015-03-05 20:23:38 +01:00
Daniele Sluijters
a220dcf08c apt::source: Merge include_* options into hash.
This makes its behaviour similar to the `update`, `proxy` and `purge`
hashes on the main classes bringing its API more in line with the rest
of the module.
2015-03-05 17:37:51 +01:00
Morgan Haskel
001e3a42b9 Merge pull request #449 from puppetlabs/daenney/fix-strict-vars
apt: Fix all strict variable cases.
2015-03-03 08:54:27 -08:00
Daniele Sluijters
c57d2dd5dd apt: Fix all strict variable cases.
A few of these fixes are absolutely horrendous but we have no choice as
we need to stay current- and future-parser compatible for now.

Once we can go Puppet 4 only we can use the `$facts` hash lookup instead
which will return undef/nil for things that aren't set instead of them
not being defined at all.
2015-03-03 17:33:14 +01:00
Daniele Sluijters
7a35ea0355 apt::setting: Remove file_perms.
This was a great idea but is pretty pointless. It's also not being used
by anything and not exposed as a switch on the main class so it would
almost never affect any behaviour.
2015-03-02 20:37:01 +01:00
Daniele Sluijters
061bc49463 apt:🔑 Rename $key to $id to match apt_key. 2015-03-01 14:40:17 +01:00
Daniele Sluijters
ea4f615735 apt::source: Allow passing in a complex key.
Turn `$key` into something that accepts a string or a hash of four keys
representing the different options that can be passed on to `apt::key`.
2015-03-01 14:40:17 +01:00
Daniele Sluijters
0f3bdcdf5a apt(::key|_key) Remove the key.*_ prefixes.
Remove a lot of the redundant `key_` prefixes on `apt::key` and the
`keyserver_` prefix on `apt_key`.
2015-03-01 14:20:46 +01:00
Daniele Sluijters
95ae9ab48f apt: Add settings, keys and ppas.
* Allow any configuration of apt to be done through data bindings by
  passing in hashes representing the resources.
* Switch apt::ppa to use `distid` as set in `apt::params. This makes
  `apt::ppa` also work for LinuxMint.
2015-03-01 14:20:45 +01:00
Daniele Sluijters
fe228435b1 apt: Change how update is managed.
* Instead of having 4 options controlling purging we now have a single
  hash with four possible keys.
* Include `apt::update` only _after_ we've assembled the `$_update`
  hash.
2015-03-01 13:17:47 +01:00
Daniele Sluijters
a1ce8bdea4 apt: Change how purging is managed.
* Instead of having 4 options controlling purging we now have a single
  hash with four possible keys.
* We purge everything by default.
* `/etc/apt/preferences` is now always managed.
* Add missing `mode` to some of the files.
2015-02-28 16:50:31 +01:00