mirror of https://github.com/sipwise/ngcpcfg.git
Change get_debian_release into set_debian_info, and make the former call the latter. This new library will populate debian.version and debian.codename from the current system. Change-Id: If0d5ed6da359b35e9ef4a6135944c3a7a58848c1mr9.3
parent
cdfb5a8f3d
commit
fdac9467a1
@ -0,0 +1,51 @@
|
|||||||
|
[%
|
||||||
|
# vi: ft=tt2
|
||||||
|
|
||||||
|
# Sets the Debian release information for the node calling this function.
|
||||||
|
#
|
||||||
|
# This sets the global variables:
|
||||||
|
# debian.codename
|
||||||
|
# debian.version
|
||||||
|
-%]
|
||||||
|
[% PERL -%]
|
||||||
|
my $version_file = '/etc/debian_version';
|
||||||
|
my $debian_codename;
|
||||||
|
my $debian_version;
|
||||||
|
my $debian_version_major;
|
||||||
|
|
||||||
|
open my $hh, '<', $version_file or die "Error opening $version_file";
|
||||||
|
$debian_version = <$hh>;
|
||||||
|
close $hh;
|
||||||
|
chomp $debian_version;
|
||||||
|
die "Fatal error retrieving Debian release version from $version_file"
|
||||||
|
unless length $debian_version;
|
||||||
|
|
||||||
|
my %versions = (
|
||||||
|
8 => 'jessie',
|
||||||
|
9 => 'stretch',
|
||||||
|
10 => 'buster',
|
||||||
|
11 => 'bullseye',
|
||||||
|
);
|
||||||
|
my %codenames = map { $versions{$_} => $_ } keys %versions;
|
||||||
|
|
||||||
|
if ($debian_version =~ m/^([0-9]+)\.[0-9]+/) {
|
||||||
|
$debian_version_major = $1;
|
||||||
|
$debian_codename = $versions{$debian_version_major};
|
||||||
|
die "Error: unsupported Debian release $debian_version"
|
||||||
|
unless defined $debian_codename;
|
||||||
|
} elsif ($debian_version =~ m{^([[:alnum:]]+)/sid}) {
|
||||||
|
$debian_codename = $1;
|
||||||
|
$debian_version_major = $codenames{$debian_codename};
|
||||||
|
die "Error: unsupported Debian codename $debian_codename"
|
||||||
|
unless defined $debian_version_major;
|
||||||
|
} else {
|
||||||
|
die "Fatal error retrieving Debian release codename [$debian_version]";
|
||||||
|
}
|
||||||
|
|
||||||
|
$stash->update({
|
||||||
|
debian => {
|
||||||
|
version => $debian_version_major,
|
||||||
|
codename => $debian_codename,
|
||||||
|
}
|
||||||
|
});
|
||||||
|
[% END -%]
|
Loading…
Reference in new issue