From: Ethan Mallove (Ethan.Mallove_at_[hidden])
Date: 2006-07-14 13:04:06


Here's the log which was not added to the repository because I accidentally
typed "c" at the "a)bort, c)ontinue, e)dit" svn commit prompt.

- Show user where the perfbase HTTP POST is going in host:port/dir
  format.
- env_proxy => 1 is unreliable. Look for the proxy in the user's env and
  explicitly set it for the UserAgent
- Allow for sending data to perfbase _and_ output to perfbase debug
  files (before it had to be one or the other). Note: to turn off
  uploading test results to perfbase, set perfbase_url to an invalid
  url
- Adjusted some MTT defaults
- Some typos fixed

-Ethan

em162155_at_[hidden] wrote On 07/14/06 11:47,:
> Author: em162155
> Date: 2006-07-14 11:46:44 -0400 (Fri, 14 Jul 2006)
> New Revision: 196
>
> Modified:
> trunk/lib/MTT/Defaults.pm
> trunk/lib/MTT/Reporter/Perfbase.pm
> trunk/server/mtt_config.php.perfbase.sample
> trunk/server/perfbase.php
> Log:
>
>
> Modified: trunk/lib/MTT/Defaults.pm
> ===================================================================
> --- trunk/lib/MTT/Defaults.pm 2006-07-11 16:42:27 UTC (rev 195)
> +++ trunk/lib/MTT/Defaults.pm 2006-07-14 15:46:44 UTC (rev 196)
> @@ -25,7 +25,7 @@
>
> http_agents => "wget lynx curl",
>
> - known_compiler_names => "gnu pgi intel kai absoft pathscale none",
> + known_compiler_names => "gnu pgi intel kai absoft pathscale sun none",
> };
>
> # User-defined configuration
> @@ -60,7 +60,7 @@
>
> # Test run phase
> our $Test_run = {
> - perfbase_xml => "inp_test_run.xml",
> + perfbase_xml => "inp_test_run_correctness.xml",
> argv => "",
> np => 2,
> np_ok => 1,
>
> Modified: trunk/lib/MTT/Reporter/Perfbase.pm
> ===================================================================
> --- trunk/lib/MTT/Reporter/Perfbase.pm 2006-07-11 16:42:27 UTC (rev 195)
> +++ trunk/lib/MTT/Reporter/Perfbase.pm 2006-07-14 15:46:44 UTC (rev 196)
> @@ -3,6 +3,7 @@
> # Copyright (c) 2005-2006 The Trustees of Indiana University.
> # All rights reserved.
> # Copyright (c) 2006 Cisco Systems, Inc. All rights reserved.
> +# Copyright (c) 2006 Sun Microsystems, Inc. All rights reserved.
> # $COPYRIGHT$
> #
> # Additional copyrights may follow
> @@ -25,6 +26,7 @@
> my $password;
> my $realm;
> my $url;
> +my $port;
>
> # platform common name
> my $platform;
> @@ -58,7 +60,7 @@
> ++$count if ($password);
> ++$count if ($realm);
> if ($count > 0 && $count != 3) {
> - Warning("Perfbase Reporter section [$section]: if password, username, or relam is specified, they all must be specified.\n");
> + Warning("Perfbase Reporter section [$section]: if password, username, or realm is specified, they all must be specified.\n");
> return undef;
> }
> $platform = Value($ini, $section, "perfbase_platform");
> @@ -66,24 +68,40 @@
> # Extract the host and port from the URL. Needed for the
> # credentials section.
>
> - my $port;
> + my $dir;
> my $host = $url;
> - if ($host =~ /http:\/\/([-a-zA-Z0-9.]+):(\d+)/) {
> + if ($host =~ /(http:\/\/[-a-zA-Z0-9.]+):(\d+)\/(.*)$/) {
> $host = $1;
> $port = $2;
> - } elsif ($host =~ /http:\/\/([-a-zA-Z0-9.]+)/) {
> + $dir = $3;
> + } elsif ($host =~ /(http:\/\/[-a-zA-Z0-9.]+)\/(.*)$/) {
> $host = $1;
> + $dir = $2;
> $port = 80;
> - } elsif ($host =~ /https:\/\/([-a-zA-Z0-9.]+)/) {
> + } elsif ($host =~ /(https:\/\/[-a-zA-Z0-9.]+)\/(.*)$/) {
> $host = $1;
> + $dir = $2;
> $port = 443;
> } else {
> return undef;
> }
> + $url = "$host:$port/$dir";
>
> + # Look for the proxy server in the environment,
> + # and take the first one we find
> + my $proxy;
> + foreach my $p (grep(/http_proxy/i, keys %ENV)) {
> + if ($ENV{$p}) {
> + $proxy = $ENV{$p};
> + $proxy = "http://$proxy" if ($proxy !~ /https?:/);
> + last;
> + }
> + }
> +
> # Create the Perl LWP stuff to setup for HTTP PUT's later
>
> - $ua = LWP::UserAgent->new({ env_proxy => 1 });
> + $ua = LWP::UserAgent->new();
> + $ua->proxy(['http', 'ftp'], $proxy);
> $ua->agent("MPI Test Perfbase Reporter");
> if ($realm && $username && $password) {
> Verbose(" Set HTTP credentials for realm \"$realm\"\n");
> @@ -186,10 +204,10 @@
> PBXML => $xml,
> };
>
> - if (0 && !$debug_filename) {
> + if ($url) {
> # Do the post and get the response.
>
> - Debug("Submitting to perbase...\n");
> + Debug("Submitting to perfbase...\n");
> my $response = $ua->post($url, $form);
> if ($response->is_success()) {
> ++$successes;
> @@ -199,7 +217,9 @@
> $response->status_line . "\n" . $response->content);
> }
> Debug("Perfbase submit complete\n");
> - } else {
> + }
> +
> + if ($debug_filename) {
> # Write out what we *would* have sent via HTTP to a
> # file
>
> @@ -212,7 +232,7 @@
> Debug("Debug perfbase file write complete\n");
>
> ++$successes;
> - push(@success_outputs, "Wrote to file $f");
> + push(@success_outputs, "Wrote to file $f\n");
> }
> } else {
> Warning("No perfbase_xml field in the INI specification; skipping perfbase reporting!\n");
> @@ -223,7 +243,7 @@
>
> if ($successes > 0) {
> if ($fails == 0) {
> - Verbose(">> Reported $successes outputs to perfbase\n");
> + Verbose(">> Reported $successes output(s) to perfbase\n");
> Debug(@success_outputs);
> }
> }
>
> Modified: trunk/server/mtt_config.php.perfbase.sample
> ===================================================================
> --- trunk/server/mtt_config.php.perfbase.sample 2006-07-11 16:42:27 UTC (rev 195)
> +++ trunk/server/mtt_config.php.perfbase.sample 2006-07-14 15:46:44 UTC (rev 196)
> @@ -9,17 +9,17 @@
> # $HEADER$
> #
>
> -$local = "/u/jsquyres/perfbase";
> +$local = $_ENV[HOME];
>
> $mtt_pb_config = array
> (
> env => array
> (
> - PATH => "$local:/opt/python-2.4/bin:" . $_ENV[PATH],
> + PATH => "$local:/opt/python-2.4/bin:/opt/perfbase-0.9.1/bin:" . $_ENV[PATH],
> PYTHONPATH => "$local/lib/python2.4:$local/lib/python2.4/site-packages" . (isset($_ENV[PYTHONPATH]) ? ":$_ENV[PYTHONPATH]" : ""),
> PB_DBUSER => "postgres",
> PB_DBPASSWD => "insert password here",
> ),
> - cwd => "/tmp",
> + cwd => ".",
> debug => 1,
> );
>
> Modified: trunk/server/perfbase.php
> ===================================================================
> --- trunk/server/perfbase.php 2006-07-11 16:42:27 UTC (rev 195)
> +++ trunk/server/perfbase.php 2006-07-14 15:46:44 UTC (rev 196)
> @@ -156,7 +156,7 @@
> $status = proc_close($process);
> if (0 != $status) {
> mtt_error("501 Perfbase exited with error",
> - "Perfbase returned with exit status $status. Its output was:\n$output");
> + "Perfbase returned with exit status $status. Its output was:\n$output\n");
> } else {
> mtt_debug("perfbase input: succeeded\n$output\n");
> }
>
> _______________________________________________
> mtt-svn mailing list
> mtt-svn_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/mtt-svn