Skip to content

Commit

Permalink
Merge pull request #26 from raoulbhatia/fixes
Browse files Browse the repository at this point in the history
Enhancements by merging Debian defaults, puppetlabs-apt and own research
  • Loading branch information
igalic committed Sep 21, 2015
2 parents a5e8ebe + 0d2b73d commit 87f195a
Show file tree
Hide file tree
Showing 2 changed files with 165 additions and 15 deletions.
46 changes: 37 additions & 9 deletions manifests/params.pp
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
#
class unattended_upgrades::params {

if $::osfamily != 'Debian' {
Expand Down Expand Up @@ -35,21 +36,48 @@
'debian', 'raspbian': {
case $xfacts['lsbdistcodename'] {
'squeeze': {
$legacy_origin = true
$origins = ['${distro_id} oldstable', #lint:ignore:single_quote_string_with_variables
'${distro_id} ${distro_codename}-security', #lint:ignore:single_quote_string_with_variables
'${distro_id} ${distro_codename}-lts',] #lint:ignore:single_quote_string_with_variables
$legacy_origin = true
$origins = ['${distro_id} oldoldstable', #lint:ignore:single_quote_string_with_variables
'${distro_id} ${distro_codename}-security', #lint:ignore:single_quote_string_with_variables
'${distro_id} ${distro_codename}-lts',] #lint:ignore:single_quote_string_with_variables
}
'wheezy': {
$legacy_origin = false
$origins = ['origin=Debian,archive=stable,label=Debian-Security',
'origin=Debian,archive=oldstable,label=Debian-Security',]
}
default: {
$legacy_origin = false
$origins = ['origin=Debian,archive=stable,label=Debian-Security']
$legacy_origin = false
$origins = ['origin=Debian,codename=${distro_codename},label=Debian-Security',] #lint:ignore:single_quote_string_with_variables
}
}
}
'ubuntu': {
$legacy_origin = true
$origins = ['${distro_id} ${distro_codename}-security', #lint:ignore:single_quote_string_with_variables
'${distro_id} ${distro_codename}-updates',] #lint:ignore:single_quote_string_with_variables
# TODO do we really want to pull in ${distro_codename}-updates by default?
case $distcodename {
'precise': {
$legacy_origin = true
$origins = [
'${distro_id}:${distro_codename}-security', #lint:ignore:single_quote_string_with_variables
#'${distro_id}:${distro_codename}-updates', #lint:ignore:single_quote_string_with_variables
]

}
'trusty', 'utopic', 'vivid', 'wily': {
$legacy_origin = true
$origins = [
'${distro_id}:${distro_codename}-security', #lint:ignore:single_quote_string_with_variables
#'${distro_id}:${distro_codename}-updates', #lint:ignore:single_quote_string_with_variables
]
}
default: {
$legacy_origin = true
$origins = [
'${distro_id}:${distro_codename}-security', #lint:ignore:single_quote_string_with_variables
#'${distro_id}:${distro_codename}-updates', #lint:ignore:single_quote_string_with_variables
]
}
}
}
default: {
fail('Please explicitly specify unattended_upgrades::legacy_origin and unattended_upgrades::origins')
Expand Down
134 changes: 128 additions & 6 deletions spec/classes/unattended_upgrades_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
let(:facts) { {
:osfamily => 'Debian',
:lsbdistid => 'Debian',
:lsbistcodename => 'wheezy',
:lsbdistcodename => 'wheezy',
:lsbrelease => '7.0.3',
} }
let(:pre_condition) {
Expand Down Expand Up @@ -92,11 +92,94 @@
}
end

context 'with defaults on ubuntu' do
context 'with defaults on Debian 6 Squeeze' do
let(:facts) { {
:osfamily => 'Debian',
:lsbdistid => 'Debian',
:lsbdistcodename => 'squeeze',
:lsbdistrelease => '6.0.10',
} }
it {
should create_file(file_unattended).with({
'owner' => 'root',
'group' => 'root',
'mode' => '0644',
}).with_content(
# This section varies for different releases
/\Unattended-Upgrade::Allowed-Origins\ {\n
\t"\${distro_id}\ oldoldstable";\n
\t"\${distro_id}\ \${distro_codename}-security";\n
\t"\${distro_id}\ \${distro_codename}-lts";\n
};/x
)}
end

context 'with defaults on Debian 7 Wheezy' do
let(:facts) { {
:osfamily => 'Debian',
:lsbdistid => 'Debian',
:lsbdistcodename => 'wheezy',
:lsbdistrelease => '7.1',
} }
it {
should create_file(file_unattended).with({
'owner' => 'root',
'group' => 'root',
'mode' => '0644',
}).with_content(
# This section varies for different releases
/\Unattended-Upgrade::Origins-Pattern\ {\n
\t"origin=Debian,archive=stable,label=Debian-Security";\n
\t"origin=Debian,archive=oldstable,label=Debian-Security";\n
};/x
)}
end

context 'with defaults on Debian 8 Jessie' do
let(:facts) { {
:osfamily => 'Debian',
:lsbdistid => 'Debian',
:lsbdistcodename => 'jessie',
:lsbdistrelease => '8.2',
} }
it {
should create_file(file_unattended).with({
'owner' => 'root',
'group' => 'root',
'mode' => '0644',
}).with_content(
# This section varies for different releases
/\Unattended-Upgrade::Origins-Pattern\ {\n
\t"origin=Debian,codename=\${distro_codename},label=Debian-Security";\n
};/x
)}
end

context 'with defaults on Ubuntu 12.04LTS Precise Pangolin' do
let(:facts) { {
:osfamily => 'Debian',
:lsbdistid => 'Ubuntu',
:lsbdistcodename => 'precise',
:lsbrelease => '12.04',
} }
it {
should create_file(file_unattended).with({
'owner' => 'root',
'group' => 'root',
'mode' => '0644',
}).with_content(
# This is the only section that's different for Ubuntu compared to Debian
/\Unattended-Upgrade::Allowed-Origins\ {\n
\t"\${distro_id}\:\${distro_codename}-security";\n
};/x
)}
end

context 'with defaults on Ubuntu 14.04LTS Trusty Tahr' do
let(:facts) { {
:osfamily => 'Debian',
:lsbdistid => 'Ubuntu',
:lsbistcodename => 'trusty',
:lsbdistcodename => 'trusty',
:lsbrelease => '14.04',
} }
it {
Expand All @@ -107,8 +190,47 @@
}).with_content(
# This is the only section that's different for Ubuntu compared to Debian
/\Unattended-Upgrade::Allowed-Origins\ {\n
\t"\${distro_id}\ \${distro_codename}-security";\n
\t"\${distro_id}\ \${distro_codename}-updates";\n
\t"\${distro_id}\:\${distro_codename}-security";\n
};/x
)}
end

context 'with defaults on Ubuntu 15.04 Vivid Vervet' do
let(:facts) { {
:osfamily => 'Debian',
:lsbdistid => 'Ubuntu',
:lsbdistcodename => 'vivid',
:lsbrelease => '15.04',
} }
it {
should create_file(file_unattended).with({
'owner' => 'root',
'group' => 'root',
'mode' => '0644',
}).with_content(
# This is the only section that's different for Ubuntu compared to Debian
/\Unattended-Upgrade::Allowed-Origins\ {\n
\t"\${distro_id}\:\${distro_codename}-security";\n
};/x
)}
end

context 'with defaults on Ubuntu 15.10 Wily Werewolf' do
let(:facts) { {
:osfamily => 'Debian',
:lsbdistid => 'Ubuntu',
:lsbdistcodename => 'wily',
:lsbrelease => '15.10',
} }
it {
should create_file(file_unattended).with({
'owner' => 'root',
'group' => 'root',
'mode' => '0644',
}).with_content(
# This is the only section that's different for Ubuntu compared to Debian
/\Unattended-Upgrade::Allowed-Origins\ {\n
\t"\${distro_id}\:\${distro_codename}-security";\n
};/x
)}
end
Expand All @@ -117,7 +239,7 @@
let(:facts) { {
:osfamily => 'Debian',
:lsbdistid => 'Raspbian',
:lsbistcodename => 'jessie',
:lsbdistcodename => 'jessie',
:lsbrelease => '8.0',
} }
it {
Expand Down

0 comments on commit 87f195a

Please sign in to comment.