Commit graph

71 commits

Author SHA1 Message Date
Nick Berard
38263ac768 After the repository is added, the ${::apt::sources_list_d}/${sources_list_d_filename} file is created as an empty file.
The unless condition of Exec["add-apt-repository-${name}"] calls test -s, which returns 1 if the file is empty. Because
the file is empty, the unless condition is never true and the repository is added on every execution. This commit
replaces the -s test condition with -f, which is true if the file exists or false otherwise.
2016-07-01 17:31:05 -07:00
Tim Bishop
1f444343b4 Fix version check on 16.04.
The old test obviously broke on 16.04. Switch to using versioncmp
since it does the right thing for us.
2016-04-27 16:26:25 +01:00
Philipp Wagner
a02654e36c Look for correct sources.list.d file for apt::ppa
In Ubuntu 15.10 the path of the apt sources file, which is generated by
apt-add-repository, changed to include the distid. This breaks apt::ppa
idempotency, since it does not recognize the repository is already
added.

Reported on puppet-users as well:
https://groups.google.com/forum/#!topic/puppet-users/YzeMyZYUo98
2016-02-03 17:24:06 +01:00
matt.cover
08c8b58264 MODULES-2873 - Avoid duplicate package resources when package_manage => true 2016-02-02 08:54:43 -07:00
Tim Bishop
7fa207e335 Handle PPA names that contain a plus character.
It looks like add-apt-repository changes pluses to underscores when
creating the sources.list.d file. So the name it creates doesn't match
what Puppet expects, and the resource keeps applying on every Puppet
run.

This works around that problem.
2016-01-19 10:38:47 +00:00
Morgan Haskel
cd37fc34f2 MODULES-2190 - Fix anchor issues 2015-07-21 10:19:15 -07:00
Morgan Haskel
70c18639c1 Revert "Fix use of $::apt::params::backports and $::apt::params::xfacts." 2015-06-22 09:30:15 -07:00
Farzad FARID
93f40ca892 Fix use of $::apt::params::backports and $::apt::params::xfacts. 2015-06-22 15:27:44 +02:00
Daniele Sluijters
494abedaeb Work around PUP-4133 2015-04-29 21:07:16 +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
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
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
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
d81c3d9476 apt: Add proxy support on the class.
Re-introduce proxy support at the class level. Needing to configure a
proxy is such a common scenario that having it on the class is a
reasonable thing. It also affects `apt::ppa`.

Change `apt::ppa` to no longer have its own `proxy` parameter but use
the proxy as configured on the main `apt` class.
2015-02-27 21:14:24 +01:00
Morgan Haskel
3e44b685d2 proxy_* params were removed from class apt
Add them to PPA since they were being used there, and add a placeholder
example for setting up the proxy files.
2015-02-25 09:56:24 -08:00
Morgan Haskel
1b6e046bea PPA Cleanup, pt 1
Make the code much cleaner, but don't make a t&p.
2015-02-22 14:44:27 -08:00
Morgan Haskel
7c5a62f13e Stop redeclaring variables from params
It really seems unnecessary.
2015-02-21 12:18:15 -08:00
Morgan Haskel
0d9bab38cc Remove 'include apt::update'
It is included in `class apt`, and there are no promises about anything
working without that.
2015-02-20 10:47:35 -08:00
Morgan Haskel
501a1b5627 stop including params everywhere 2015-02-15 10:25:36 -08:00
Matthias Baur
1044886150 Fix some Puppet Lint errors 2014-09-05 18:51:39 +02:00
Morgan Haskel
d6bdb4d925 Cleaned up unit tests. 2014-08-04 19:44:19 -04:00
Daniel Friesen
0c2329bd57 Fix inconsistent $proxy_host handling in apt and apt::ppa.
- The default for $proxy_host is undef
- apt considers $proxy_set to be absent if $proxy_host is undef
- apt::ppa considers proxy_env to be empty if $proxy_host is false or ''

This results in apt::ppa to consider $proxy_host to be set when the default undef is used
breaking ppa resources because $proxy_env becomes:
  [http_proxy=http://:8080, https_proxy=http://:8080]

Fix this by making both apt and apt::ppa consider $proxy_host to be unset when it is
any of false, '', or undef.
2014-07-10 16:57:38 -07:00
Morgan Haskel
b2381c6673 Fixing lint and adding the trusty nodeset (not sure how that was missed) 2014-05-20 16:24:28 -04:00
Frédéric DROUET
f546dc2d37 Fix typo in ppa.pp 2014-03-20 23:09:07 +01:00
Hunter Haugen
4c9174e517 Merge pull request #227 from daniellawrence/file_perms_apt_ppa
Force owner and mode on ppa files
2014-02-25 09:30:37 -08:00
Hunter Haugen
944f9d5064 Merge branch '1.4.x' 2014-02-24 13:36:48 -08:00
Hunter Haugen
904fb4a293 Don't pass options to ppa on lucid
Lucid (10.04) has `add-apt-repository` but it doesn't accept any
options. The define defaulted to `-y` but this changes that on lucid.

This was made 7 months ago, so apparently no one cares about 10.04 any
more.
2014-02-20 16:43:48 -08:00
Daniel Lawrence
0bf44fc167 Force owner and mode on ppa files 2014-02-19 11:41:01 +11:00
Hunter Haugen
4b8aa9e55a Revert "Undo backwards-incompatible changes and features."
This reverts commit f9e2fe2a7c.
2014-02-14 14:49:43 -08:00
Hunter Haugen
f9e2fe2a7c Undo backwards-incompatible changes and features.
Undoes the parameter changes in #140 and #184
2014-02-14 14:33:30 -08:00
Ashley Penney
558954bedf Ensure apt::ppa fails on non-Ubuntu. 2014-01-09 14:35:17 -05:00
Tsuharesu Luciel
2f6edabc4c (#201) Use root to exec
User root is needed to execute this command.

If someone changes the default Exec user, apt-add-repository will fail.
2013-12-30 16:01:56 -02:00
Marco Nenciarini
935d3ce15b Fix the name of sources.list.d file resource in apt::ppa 2013-12-02 13:40:22 +01:00
Chris Weyl
3499896505 add an 'ensure' parameter to apt::ppa
...as sometimes we want to get rid of them. :)

We leave this a little loose; rather than simply requiring a boolean for
$ensure, we set the stage for doing an easy switch to also allowing 'purge' at
some point in the future.
2013-11-08 16:54:11 -08:00
Ashley Penney
33064128b9 getparam() isn't available in all stdlib versions.
There's no need for getparam() here when a regular variable works
just fine.
2013-10-16 13:08:03 -04:00
Ashley Penney
39cbeeb9d2 This work flips from onlyif to unless (mistakenly looked at the
wrong return code).
2013-10-08 10:50:30 -07:00
Ashley Penney
2f9c16a273 This switches us to doing a test -s instead of checking for the
files existence as add-apt-repository --remove leaves a 0 byte file
behind instead of deleting everything properly.
2013-10-02 14:46:00 -04:00
Ryan Culbertson
e97942f2d6 Fixed several lint warnings and errors 2013-09-04 17:32:42 -04:00
Hunter Haugen
6cde028332 Merge pull request #145 from PierreGambarotto/master
ppa: fix empty environment definition in exec ressource when no proxy
2013-07-31 09:32:27 -07:00
nagas
63a0db4cf2 pass flags as string of single letter 2013-07-22 14:48:32 +02:00
Oleiade
878bc0217e Fix: apt::ppa options parameter to pass options to apt-add-repository command 2013-07-16 15:31:19 +02:00
Pierre Gambarotto
19fbdab794 ppa: fix empty environment definition in exec ressource when no proxy 2013-07-16 09:52:06 +02:00
Pierre Gambarotto
c21730c01d proxy support for apt::ppa 2013-07-11 15:29:38 +02:00
Michael Moll
eee5ff8e38 whitespace fixes 2013-01-12 00:21:39 +01:00
Jarl Nicolson
ac86fab459 Changed PPA manifest and tests for new package which started in Quantal 2012-11-05 19:33:38 +10:00
Erik Dalén
a3d782c3b5 Fix style errors 2012-08-21 22:55:24 +02:00
Nan Liu
2dcec036ca Add logoutput on_failure for all exec resources.
We need more information to debug issues on exec failure. This change
enables logouput => on_failure.
2012-06-07 14:53:41 -07:00
Branan Purvine-Riley
83e20806b2 (#14657) Fix filename when there is a period in the PPA 2012-05-22 17:22:18 -07:00
Nan Liu
e3784987fc Fix dependency issues introduced with anchor.
apt::ppa and apt::builddep requires apt class. The anchor introduced for
containment of apt-get update causes a dependency loop. apt::ppa appears
to depend on apt class sources.d direcory. While apt::builddep have no
clear reason for a dependency on apt class. This change refactor both
define type, so they no longer cause a dependency loop.
2012-05-09 12:04:17 -07:00
Nan Liu
322f3b68e7 Fix style related issues in module. 2012-05-08 10:47:43 -07:00