diff options
author | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2014-01-19 01:57:22 +0000 |
---|---|---|
committer | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2014-01-19 01:57:22 +0000 |
commit | e1babed90f59ff09a97ff75793488e0e7b874252 (patch) | |
tree | b840000168bb4243d00a6088a37ad8883517378c | |
parent | c2a0ff7beedc33a80fa2e1eb4d09d7da170b0eb7 (diff) |
Quirks mechanism
-rwxr-xr-x | dgit | 20 |
1 files changed, 17 insertions, 3 deletions
@@ -489,16 +489,30 @@ sub cfg { badcfg "need value for one of: @_"; } -sub access_distro () { +sub access_basedistro () { return cfg("dgit-suite.$isuite.distro", "dgit.default.distro"); } +sub access_quirk () { + # returns (quirk name, distro to use instead, quirk-specific info) + my $basedistro = access_basedistro(); + return ('none',$basedistro); +} + +sub access_distro () { + return (access_quirk())[1]; +} + sub access_cfg (@) { my (@keys) = @_; + my $basedistro = access_basedistro(); my $distro = $idistro || access_distro(); - my $value = cfg(map { ("dgit-distro.$distro.$_", - "dgit.default.$_") } @keys); + my $value = cfg(map { + ("dgit-distro.$distro.$_", + "dgit-distro.$basedistro.$_", + "dgit.default.$_") + } @keys); return $value; } |