Unverified Commit 887d21dd authored by Robin H. Johnson's avatar Robin H. Johnson
Browse files

Do not rebuild on removal.


Signed-off-by: default avatarRobin H. Johnson <robbat2@gentoo.org>
parent 581869ce
...@@ -8,6 +8,10 @@ Status](https://travis-ci.org/gentoo/puppet-portage.png?branch=master)](https:// ...@@ -8,6 +8,10 @@ Status](https://travis-ci.org/gentoo/puppet-portage.png?branch=master)](https://
## /etc/portage/package.\*/\* ## /etc/portage/package.\*/\*
If `target` contains a `/`, then the value of `target` will used as-is.
Otherwise it will be prefixed with the relevant directory for that resource
type.
### package\_use ### package\_use
package_use { 'app-admin/puppet': package_use { 'app-admin/puppet':
......
...@@ -131,6 +131,11 @@ define portage::package ( ...@@ -131,6 +131,11 @@ define portage::package (
default => $name, default => $name,
} }
$removing = $ensure ? {
/(absent|purged)/ => true,
default => false,
}
if $use_target { if $use_target {
$assigned_use_target = $use_target $assigned_use_target = $use_target
} }
...@@ -166,7 +171,7 @@ define portage::package ( ...@@ -166,7 +171,7 @@ define portage::package (
$assigned_unmask_target = $target $assigned_unmask_target = $target
} }
if $use { if $use && !$removing {
package_use { $name: package_use { $name:
use => $use, use => $use,
version => $use_version, version => $use_version,
...@@ -183,7 +188,7 @@ define portage::package ( ...@@ -183,7 +188,7 @@ define portage::package (
} }
} }
if $keywords or $keywords_version { if !$removing && ($keywords or $keywords_version) {
if $keywords == 'all' { if $keywords == 'all' {
$assigned_keywords = undef $assigned_keywords = undef
} }
...@@ -205,7 +210,7 @@ define portage::package ( ...@@ -205,7 +210,7 @@ define portage::package (
notify => [Exec["rebuild_${atom}"], Package[$name]], notify => [Exec["rebuild_${atom}"], Package[$name]],
} }
} }
if $accept_keywords or $accept_keywords_version { if !$removing && ($accept_keywords or $accept_keywords_version) {
if $accept_keywords == 'all' { if $accept_keywords == 'all' {
$assigned_accept_keywords = undef $assigned_accept_keywords = undef
} }
...@@ -228,7 +233,7 @@ define portage::package ( ...@@ -228,7 +233,7 @@ define portage::package (
} }
} }
if $mask_version or $mask_slot { if !$removing && ($mask_version or $mask_slot) {
if $mask_version == 'all' { if $mask_version == 'all' {
$assigned_mask_version = undef $assigned_mask_version = undef
} }
...@@ -250,7 +255,7 @@ define portage::package ( ...@@ -250,7 +255,7 @@ define portage::package (
} }
} }
if $unmask_version or $unmask_slot { if !$removing && ($unmask_version or $unmask_slot) {
if $unmask_version == 'all' { if $unmask_version == 'all' {
$assigned_unmask_version = undef $assigned_unmask_version = undef
} }
...@@ -272,8 +277,12 @@ define portage::package ( ...@@ -272,8 +277,12 @@ define portage::package (
} }
} }
$rebuild_command = $removing ? {
true => "/bin/true",
false => "${portage::emerge_command} --changed-use -u1 ${atom}"
}
exec { "rebuild_${atom}": exec { "rebuild_${atom}":
command => "${portage::emerge_command} --changed-use -u1 ${atom}", command => $rebuild_command,
refreshonly => true, refreshonly => true,
timeout => 43200, timeout => 43200,
path => ['/usr/local/sbin','/usr/local/bin', path => ['/usr/local/sbin','/usr/local/bin',
......
{ {
"name": "gentoo-portage", "name": "gentoo-portage",
"version": "2.3.0", "version": "2.3.1",
"author": "Gentoo", "author": "Gentoo",
"summary": "Puppet types and providers for Gentoo portage", "summary": "Puppet types and providers for Gentoo portage",
"license": "GPL-2.0", "license": "GPL-2.0",
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment