From 56bf875c267bd633b7852ddf6fabc418b2d4d561 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Janne=20He=C3=9F?= Date: Sun, 12 Jun 2022 18:30:30 +0200 Subject: [PATCH] GitInput: Allow setting a umask --- src/lib/Hydra/Plugin/GitInput.pm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/lib/Hydra/Plugin/GitInput.pm b/src/lib/Hydra/Plugin/GitInput.pm index e5fc7de9..53094f69 100644 --- a/src/lib/Hydra/Plugin/GitInput.pm +++ b/src/lib/Hydra/Plugin/GitInput.pm @@ -126,6 +126,13 @@ sub fetchInput { _printIfDebug "'$name': override '$opt_name' with input value: $opt_value\n"; } + # Set desired umask + my $old_umask; + if (defined($cfg->{umask})) { + $old_umask = umask(); + umask($cfg->{umask}); + } + # Clone or update a branch of the repository into our SCM cache. my $cacheDir = getSCMCacheDir . "/git"; mkpath($cacheDir); @@ -239,6 +246,10 @@ sub fetchInput { my $gitTag = grab(cmd => ["git", "describe", "--always", "$revision"], dir => $clonePath, chomp => 1); my $shortRev = grab(cmd => ["git", "rev-parse", "--short", "$revision"], dir => $clonePath, chomp => 1); + if (defined($old_umask)) { + umask($old_umask); + } + return { uri => $uri , storePath => $storePath