Adding resources creation and other helper scripts

 - prepare.sh
   Create all manner of resources needed for testing
   Also, creating manifest with all names and IDs for future use
   Automated detect, download and create of images
   cirros35, cirros40, ubuntu16

 - add_user_to_image.sh
   Semi-manual script to add user to ubuntu image
 - entropy_bench.pl
   Benchmark entropy levels on host
 - poke.sh
   direct curl to project resource using token
 - profiled_run.sh
   Execute any command several time or one and calculate avg time
 - simple_profile.sh
   Execute resource listings and calculate avg time

Fixes for cleanup.sh
 - container deletion
 - cleaning flavors
 - mask now cleans all with 'cvp' too

Change-Id: I073857abc2fbee730b983b1d8655e0fa16fee3fc
Related-PROD: PROD-30951
diff --git a/scripts/entropy_bench.pl b/scripts/entropy_bench.pl
new file mode 100755
index 0000000..a8f6bd0
--- /dev/null
+++ b/scripts/entropy_bench.pl
@@ -0,0 +1,152 @@
+#!/usr/bin/perl
+
+eval 'exec /usr/bin/perl  -S $0 ${1+"$@"}'
+    if 0; # not running under some shell
+# $Id: entropy-random-bench,v 1.7 2014/11/27 21:58:22 dpchrist Exp $
+#######################################################################
+# Argument defaults -- edit to suit:
+
+my $entropy             = '/proc/sys/kernel/random/entropy_avail';
+my $random              = '/dev/urandom';
+my $duration            =   60.0;       # seconds
+my $entropy_upper       = 4095;         # bits
+my $entropy_lower       =    0;         # bits
+my $nap_upper           =   10.0;       # seconds
+my $nap_lower           =    1.0E-06;   # seconds
+my $gain                =   10.0;       # seconds / bit
+
+#######################################################################
+# The rest of the script should not be edited:
+
+use strict;
+use warnings;
+
+use Getopt::Long                qw(
+                                    :config
+                                    auto_help
+                                    auto_version
+                                );
+use Pod::Usage;
+use Time::HiRes         qw( sleep time );
+
+$| = 1;
+
+our $VERSION    = sprintf("%d.%03d", q$Revision: 1.7 $ =~ /(\d+)/g);
+my $man;
+
+GetOptions(
+    "entropy=s"         => \$entropy,
+    "random=s"          => \$random,
+    "duration=f"        => \$duration,
+    "entropy-upper=f"   => \$entropy_upper,
+    "entropy-lower=f"   => \$entropy_lower,
+    "nap-upper=f"       => \$nap_upper,
+    "nap-lower=f"       => \$nap_lower,
+    "gain=f"            => \$gain,
+    "man"               => \$man,
+) or pod2usage(2);
+pod2usage(-exitstatus => 0, -verbose => 2) if $man;
+
+my $entropy_span        = $entropy_upper - $entropy_lower;
+my $entropy_setpoint    = $entropy_upper / 2;
+my $nap_span            = $nap_upper - $nap_lower;
+my $nap_offset          = $nap_upper / 2;
+
+my $err;
+my $buf;
+my $e1;
+my $e2;
+my $t1;
+my $t2;
+my $rate;
+my $dt;
+my $signal;
+my $nap                 = $nap_lower;
+my $lastprint;
+
+open(my $random_fh, $random) or die "error opening $random: $!";
+$err = sysread($random_fh, $buf, 1);
+die "error reading $random: $!" unless defined $err && $err;
+
+### /proc/sys/kernel/random/entropy_avail is not world-readable, but
+### 'cat' can read it (?)
+$e1 = `cat $entropy`;
+chomp $e1;
+
+print "time (seconds)  entropy (bits)  random (bytes/second)\n",
+      "==============  ==============  ======================\n";
+my $begin = $lastprint = $t1 = time();
+my $end = $begin + $duration;
+do {
+    sleep($nap);
+
+    $err = sysread($random_fh, $buf, 1);
+    die "error reading $random: $!" unless defined $err;
+
+    $e2 = `cat $entropy`;
+    chomp $e2;
+
+    $t2 = time();
+    $dt = $t2 - $t1;
+    $rate = 1.0 / $dt;
+    if ($dt && ($lastprint + 1 < $t2)) {
+        $lastprint = $t2;
+        printf "%14.06f  %14i  %22.6f\n",
+            $t2 - $begin,
+            $e2,
+            $rate;
+    }
+    $signal = ($e2 - $entropy_setpoint) / $entropy_span;
+    $nap = -1.0 * $gain * $signal * $nap_span + $nap_offset;
+    $nap = $nap_lower if $nap       < $nap_lower;
+    $nap = $nap_upper if $nap_upper < $nap;
+    $e1 = $e2;
+    $t1 = $t2;
+} while ($t2 < $end);
+DONE:
+
+__END__
+
+=head1 NAME
+
+entropy-random-bench - Linux entropy pool / random number benchmark
+
+=head1 SYNOPSIS
+
+ entropy-random-bench.pl [options]
+
+  Options:
+   --entropy                    path to entropy availble file
+   --random                     path to random number file
+   --duration                   duration of benchmark
+   --entropy-upper              upper range value of entropy available
+   --entropy-lower              lower range value of entropy available
+   --nap-upper                  upper range value for sleep() calls
+   --nap-lower                  upper range value for sleep() calls
+   --gain                       timing loop proportional gain
+   --man                        print manual page and exit
+   --help, -?                   print usage message and exit
+
+=head1 DESCRIPTION
+
+Interactive benchmark for Linux entropy pool
+and random number generator.
+
+$Revision: 1.7 $
+
+=head1 SEE ALSO
+
+=head1 AUTHOR
+
+David Paul Christensen, E<lt>dpchrist@holgerdanske.comE<gt>
+
+=head1 COPYRIGHT AND LICENSE
+
+Copyright (C) 2014 by David Paul Christensen
+
+This library is free software; you can redistribute it and/or modify
+it under the same terms as Perl itself, either Perl version 5.14.2 or,
+at your option, any later version of Perl 5 you may have available.
+
+=cut
+