Merge pull request #1276 from donnadionne/python

Adding links to individual test logs in test result page.
diff --git a/tools/gce_setup/cloud_prod_runner.sh b/tools/gce_setup/cloud_prod_runner.sh
index e236c92..17441aa 100755
--- a/tools/gce_setup/cloud_prod_runner.sh
+++ b/tools/gce_setup/cloud_prod_runner.sh
@@ -32,6 +32,7 @@
 current_time=$(date "+%Y-%m-%d-%H-%M-%S")
 result_file_name=cloud_prod_result.$current_time.html
 echo $result_file_name
+log_link=https://pantheon.corp.google.com/m/cloudstorage/b/stoked-keyword-656-output/o/log_history
 
 main() {
   source grpc_docker.sh
@@ -42,11 +43,14 @@
   do
     for client in "${clients[@]}"
     do
-      if grpc_cloud_prod_test $test_case grpc-docker-testclients $client
+      log_file_name=cloud_{$test_case}_{$client}.txt 
+      if grpc_cloud_prod_test $test_case grpc-docker-testclients $client > /tmp/$log_file_name 2>&1
       then
-        echo "          ['$test_case', '$client', 'prod', true]," >> /tmp/cloud_prod_result.txt
+        gsutil cp /tmp/$log_file_name gs://stoked-keyword-656-output/log_history/$log_file_name
+        echo "          ['$test_case', '$client', 'prod', true, '<a href="$log_link/$log_file_name">log</a>']," >> /tmp/cloud_prod_result.txt
       else
-        echo "          ['$test_case', '$client', 'prod', false]," >> /tmp/cloud_prod_result.txt
+        gsutil cp /tmp/$log_file_name gs://stoked-keyword-656-output/log_history/$log_file_name
+        echo "          ['$test_case', '$client', 'prod', false, '<a href="$log_link/$log_file_name">log</a>']," >> /tmp/cloud_prod_result.txt
       fi
     done
   done
@@ -54,11 +58,14 @@
   do
     for client in "${clients[@]}"
     do
-      if grpc_cloud_prod_auth_test $test_case grpc-docker-testclients $client
+      log_file_name=cloud_{$test_case}_{$client}.txt 
+      if grpc_cloud_prod_auth_test $test_case grpc-docker-testclients $client > /tmp/$log_file_name 2>&1
       then
-        echo "          ['$test_case', '$client', 'prod', true]," >> /tmp/cloud_prod_result.txt
+        gsutil cp /tmp/$log_file_name gs://stoked-keyword-656-output/log_history/$log_file_name
+        echo "          ['$test_case', '$client', 'prod', true, '<a href="$log_link/$log_file_name">log</a>']," >> /tmp/cloud_prod_result.txt
       else
-        echo "          ['$test_case', '$client', 'prod', false]," >> /tmp/cloud_prod_result.txt
+        gsutil cp /tmp/$log_file_name gs://stoked-keyword-656-output/log_history/$log_file_name    
+        echo "          ['$test_case', '$client', 'prod', false, '<a href="$log_link/$log_file_name">log</a>']," >> /tmp/cloud_prod_result.txt
       fi
     done
   done
@@ -69,6 +76,7 @@
     gsutil cp /tmp/cloud_prod_result.html gs://stoked-keyword-656-output/result_history/$result_file_name
     rm /tmp/cloud_prod_result.txt
     rm /tmp/cloud_prod_result.html
+    rm /tmp/cloud*.txt
   fi
 }
 
diff --git a/tools/gce_setup/interop_test_runner.sh b/tools/gce_setup/interop_test_runner.sh
index 1c6122e..b9f026e 100755
--- a/tools/gce_setup/interop_test_runner.sh
+++ b/tools/gce_setup/interop_test_runner.sh
@@ -32,6 +32,7 @@
 current_time=$(date "+%Y-%m-%d-%H-%M-%S")
 result_file_name=interop_result.$current_time.html
 echo $result_file_name
+log_link=https://pantheon.corp.google.com/m/cloudstorage/b/stoked-keyword-656-output/o/log_history
 
 main() {
   source grpc_docker.sh
@@ -44,11 +45,14 @@
     do
       for server in "${servers[@]}"
       do
-        if grpc_interop_test $test_case grpc-docker-testclients $client grpc-docker-server $server
+        log_file_name=interop_{$test_case}_{$client}_{$server}.txt
+        if grpc_interop_test $test_case grpc-docker-testclients $client grpc-docker-server $server > /tmp/$log_file_name 2>&1
         then
-          echo "          ['$test_case', '$client', '$server', true]," >> /tmp/interop_result.txt
+          gsutil cp /tmp/$log_file_name gs://stoked-keyword-656-output/log_history/$log_file_name
+          echo "          ['$test_case', '$client', '$server', true, '<a href="$log_link/$log_file_name">log</a>']," >> /tmp/interop_result.txt
         else
-          echo "          ['$test_case', '$client', '$server', false]," >> /tmp/interop_result.txt
+          gsutil cp /tmp/$log_file_name gs://stoked-keyword-656-output/log_history/$log_file_name
+          echo "          ['$test_case', '$client', '$server', false, '<a href="$log_link/$log_file_name">log</a>']," >> /tmp/interop_result.txt
         fi
       done
     done
@@ -60,6 +64,7 @@
     gsutil cp /tmp/interop_result.html gs://stoked-keyword-656-output/result_history/$result_file_name
     rm /tmp/interop_result.txt
     rm /tmp/interop_result.html
+    rm /tmp/interop*.txt
   fi
 }
 
diff --git a/tools/gce_setup/post.html b/tools/gce_setup/post.html
index 57cbc8c..2cea050 100644
--- a/tools/gce_setup/post.html
+++ b/tools/gce_setup/post.html
@@ -1,8 +1,7 @@
         ]);
 
         var table = new google.visualization.Table(document.getElementById('table_div'));
-
-        table.draw(data, {showRowNumber: true});
+        table.draw(data, {showRowNumber: true, allowHtml: true});
       }
     </script>
   </head>
diff --git a/tools/gce_setup/pre.html b/tools/gce_setup/pre.html
index 74ce5ce..79aa8fa 100644
--- a/tools/gce_setup/pre.html
+++ b/tools/gce_setup/pre.html
@@ -11,4 +11,5 @@
         data.addColumn('string', 'Client');
         data.addColumn('string', 'Server');
         data.addColumn('boolean', 'Pass');
+        data.addColumn('string', 'LogLink');
         data.addRows([