JAL-3281 first bit of perl task/JAL-3281_Automatic_installers_download_table_generation
authorBen Soares <bsoares@dundee.ac.uk>
Tue, 28 May 2019 15:33:06 +0000 (16:33 +0100)
committerBen Soares <bsoares@dundee.ac.uk>
Tue, 28 May 2019 15:33:06 +0000 (16:33 +0100)
utils/install4j/outputs_to_table.pl [new file with mode: 0755]

diff --git a/utils/install4j/outputs_to_table.pl b/utils/install4j/outputs_to_table.pl
new file mode 100755 (executable)
index 0000000..3b9b9be
--- /dev/null
@@ -0,0 +1,33 @@
+#!/usr/bin/env perl
+
+use strict;
+use warnings;
+
+my @oses = qw(macos windows shell unix jar);
+
+my $osinstallers = {};
+
+while(my $line = <STDIN>) {
+  chomp $line;
+  $line =~ s/#.*//;
+  my ($id, $os, $name, $file) = split(m/\t/, $line);
+  next unless $id and $os and $name and $file and (-e $file);
+
+  my $size = -s $file;
+  my $mbsize;
+  if ($size > 0) {
+    $mbsize = sprintf("%.1f",$size/(2**20));
+  }
+
+  if ($name =~ m/\bShell\b/) {
+    $os = "shell";
+  }
+
+
+  if ($file =~ m/(NETWORK|OFFLINE)/) {
+    my $type = $1;
+    $osinstallers->{$os} = {} unless ref($osinstallers->{$os}) eq "HASH";
+    $osinstallers->{$os}{$type} = { os => $os, name => $name, file => $file, size => $mbsize };
+  }
+}
+