[WINOF] add new HPC example scripts; added new WIX include file to create %ProgramFil...
authorstansmith <stansmith@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Tue, 28 Jul 2009 19:06:35 +0000 (19:06 +0000)
committerstansmith <stansmith@ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86>
Tue, 28 Jul 2009 19:06:35 +0000 (19:06 +0000)
git-svn-id: svn://openib.tc.cornell.edu/gen1/trunk@2315 ad392aa1-c5ef-ae45-8dd8-e69d62a5ef86

WinOF/WIX/HPC/HPC.inc [new file with mode: 0644]
WinOF/WIX/HPC/OFA-cert-install.bat [new file with mode: 0644]
WinOF/WIX/HPC/WinOF-install.bat [new file with mode: 0644]
WinOF/WIX/HPC/cert-add.bat
WinOF/WIX/HPC/readme-HPC.txt [new file with mode: 0644]
WinOF/WIX/HPC/rem-cert-ADD.bat
WinOF/WIX/wlh/x64/wof.wxs

diff --git a/WinOF/WIX/HPC/HPC.inc b/WinOF/WIX/HPC/HPC.inc
new file mode 100644 (file)
index 0000000..9d25961
--- /dev/null
@@ -0,0 +1,25 @@
+<Include>\r
+   <Directory Id="cHPC" Name="HPC">\r
+          <Component Id="cCertPush"\r
+                     Guid="8B3AEC30-CFED-4d90-A48E-AD2C8C55FEFD">\r
+\r
+            <CreateFolder />\r
+\r
+            <File Id="cert_add.bat" Compressed="yes" DiskId="1"\r
+                     LongName="cert-add.bat" Name="cert-add.bat"\r
+                     Source="..\..\HPC\cert-add.bat" />\r
+            <File Id="rem_cert_add.bat" Compressed="yes" DiskId="1"\r
+                     LongName="rem-cert-add.bat" Name="remC-add.bat"\r
+                     Source="..\..\HPC\rem-cert-ADD.bat" />\r
+            <File Id="OFA_cert_install.bat" Compressed="yes" DiskId="1"\r
+                     LongName="OFA-cert-install.bat" Name="Cinstall.bat"\r
+                     Source="..\..\HPC\OFA-cert-install.bat" />\r
+            <File Id="WinOF_install.bat" Compressed="yes" DiskId="1"\r
+                     LongName="WinOF-install.bat" Name="Winstall.bat"\r
+                     Source="..\..\HPC\WinOF-install.bat" />\r
+            <File Id="readme_HPC.txt" Compressed="yes" DiskId="1"\r
+                     LongName="readme-HPC.txt" Name="readme.txt"\r
+                     Source="..\..\HPC\readme-HPC.txt" />\r
+          </Component>\r
+   </Directory>\r
+</Include>\r
diff --git a/WinOF/WIX/HPC/OFA-cert-install.bat b/WinOF/WIX/HPC/OFA-cert-install.bat
new file mode 100644 (file)
index 0000000..a76e79b
--- /dev/null
@@ -0,0 +1,32 @@
+@echo off\r
+rem Install OpenFabrics Alliance (OFA) Trusted SW Publisher certificate\r
+rem in the node local TRUSTEDPUBLISHER certificate store.\r
+rem This file is a no-args wrapper for rem-cert-ADD.bat; both in same folder.\r
+\r
+setlocal\r
+set OfACertID=71175fca6b85d5c2e0864df16349ad84\r
+set TARGET=c:\cert\r
+\r
+cd /d %TARGET%\r
+if ERRORLEVEL 1 (\r
+    echo %0 - unable to CD to folder %TARGET% ?\r
+    exit /B %ERRORLEVEL%\r
+)\r
+\r
+if not exist rem-cert-add.bat (\r
+    echo %0 Missing file rem-cert-add.bat, ABORT.\r
+    exit /B 1\r
+)\r
+rem Trusted Publisher cert file extracted from head-node\r
+if not exist OFA_TP.cer (\r
+    echo %0 Missing file OFA_TP.cert, ABORT.\r
+    exit /B 1\r
+)\r
+echo on\r
+call rem-cert-add.bat %OfACertID% %CD%\OFA_TP.cer\r
+\r
+@if %ERRORLEVEL% NEQ 0  echo %0 exit with error %ERRORLEVEL%\r
+\r
+@endlocal\r
+@exit /B %ERRORLEVEL%\r
+\r
diff --git a/WinOF/WIX/HPC/WinOF-install.bat b/WinOF/WIX/HPC/WinOF-install.bat
new file mode 100644 (file)
index 0000000..16f44b1
--- /dev/null
@@ -0,0 +1,24 @@
+@echo off\r
+setlocal\r
+\r
+set MSI=WOF_wlh_x64.msi\r
+\r
+set TARGET=c:\cert\r
+\r
+cd /d %TARGET%\r
+if ERRORLEVEL 1 (\r
+    echo %0 - unable to CD to folder %TARGET% ?\r
+    exit /B %ERRORLEVEL%\r
+)\r
+\r
+if not exist %MSI% (\r
+    echo %0 Missing WinOF installer %MSI%, ABORT.\r
+    exit /B 1\r
+)\r
+\r
+echo on\r
+start/wait msiexec /I %MSI% /quiet /qn /Lv msi.log\r
+\r
+@endlocal\r
+@exit /B %ERRORLEVEL%\r
+\r
index b438061..c3374c8 100644 (file)
@@ -9,18 +9,21 @@ rem Assumes the OFA cert is in the local Trusted Publisher certificate Store.
 \r
 if "%1" == "" (\r
 :usage\r
-    echo usage: %0 remote-node-visiable-share-path remote-node-hostnames\r
+    echo usage: %0 remote-node-visiable-share-path [remote-node-hostnames]\r
     echo   Valid ONLY for Server 2008 HPC.\r
     echo.\r
     echo Will use OFA Cert file named 'OFA_TP.cer' if present.\r
     echo Otherwise extract the OFA cert from the local Trusted Publisher store\r
     echo  for injection into remote node certificate store.\r
     echo.\r
-    echo example: %0 \\head-node\remShar cn1 cn2 cn3 cn4\r
+    echo example: install OFA certificate on remote nodes.\r
+    echo   %0 \\head-node\remShar cn1 cn2 cn3 cn4\r
+    echo example: extract OFA certificate to \\head-node\remShar\OFA_TP.cer\r
+    echo   %0 \\head-node\remShar\r
     exit /B 1\r
 )\r
 \r
-if "%2" == ""  goto usage\r
+if "%2" == ""  echo cert extraction only.\r
 \r
 where clusrun > Nul\r
 if ERRORLEVEL 1 (\r
@@ -50,6 +53,7 @@ rem Certificate ID's (Serial Number) for the OFA WinOF driver signing cert
 \r
 set OfaWinOfCertID=71175fca6b85d5c2e0864df16349ad84\r
 \r
+rem Opoenfabrics Alliance Trusted SW Publisher\r
 set CERTNAME=OFA_TP.cer\r
 \r
 if exist "%CERTNAME%" (\r
@@ -107,21 +111,31 @@ if not EXIST "%1\%CISF%" (
     set CPY_CISF=1\r
 )\r
 \r
-rem install OFA Trusted 3rd Party SW Publisher cert in remote nodes cert store using clusrun.\r
+rem install OFA Trusted 3rd Party SW Publisher cert in remote nodes cert store\r
+rem using clusrun.\r
+\r
+rem Cert extract only?\r
+if "%2" == "" (\r
+    echo Extract Cert ONLY!\r
+    goto xit\r
+)\r
 \r
 :again\r
 \r
-if "%2" == "" goto xit\r
 rem  echo call clusrun /node:%1 %1\%CISF% %OfaWinOfCertID% %1\%CERTNAME%\r
   clusrun /nodes:%2 %1\%CISF% %OfaWinOfCertID% %1\%CERTNAME%\r
   shift /2\r
-  if not "%2" == "" timeout /T 5\r
+  if "%2" == "" goto cpy_cleanup\r
+  timeout /T 5\r
   goto again\r
 \r
-:xit\r
 \r
-if not "%CPY_CERT%" == ""   del /F/Q %1\%CERTNAME%\r
-if not "%CPY_CISF%" == ""   del /F/Q %1\%CISF%\r
-if not "%EXTRACTED%" == ""  del /F/Q %CERTNAME%\r
+:cpy_cleanup\r
+\r
+if %CPY_CERT%  EQU 1   del /F %1\%CERTNAME%\r
+if %CPY_CISF%  EQU 1   del /F %1\%CISF%\r
+if %EXTRACTED% EQU 1   del /F %CERTNAME%\r
+\r
+:xit\r
 \r
 endlocal\r
diff --git a/WinOF/WIX/HPC/readme-HPC.txt b/WinOF/WIX/HPC/readme-HPC.txt
new file mode 100644 (file)
index 0000000..b4ebe70
--- /dev/null
@@ -0,0 +1,25 @@
+[7-28-09] stan.\r
+\r
+Files in this folder are Windows Server 2008 HPC specific.\r
+\r
+cert_add.bat\r
+  Extract OFA Trusted Publisher certificate to local file OFA_TP.cer then\r
+  insert OFA_TP.cer into remote node's Trusted Publisher certificate store.\r
+\r
+rem-cert-add.bat\r
+  Add Trusted Publisher certificate to local node's TP store. Can be run via\r
+  clusrun.exe or locally as a template step.\r
+\r
+Template installation examples:\r
+Batch files are part of an entire directory copied via the template to the\r
+node under provisioning. Template then executes\r
+  1) OFA-cert-install.bat\r
+  2) WinOF-install.bat\r
+\r
+OFA-cert-install.bat\r
+  No args wrapper for rem-cert-add.bat suitible to be run as part of a compute\r
+  node template.\r
+\r
+WinOF-install.bat\r
+  No args wrapper to quietly with logging install default WinOF on local node.\r
+\r
index 0c441ea..38a971d 100644 (file)
@@ -6,6 +6,8 @@ rem Remote Certificate add
 rem Install specified Digital Certificate in the local TrustedPublishers store.\r
 rem Intended to be called from clusrun in cert-add.bat script.\r
 \r
+rem    usage: %0 CertID TrustedPublisherCertFilename\r
+\r
 where certutil > Nul\r
 if ERRORLEVEL 1 (\r
     echo %0 Must be run on server 2008 HPC [clusrun.exe] ?\r
@@ -19,22 +21,20 @@ if "%1" == "" (
     exit /B 1\r
 )\r
 \r
-rem test for OFA cert in TrustedPublisher cert store\r
-certutil -store TRUSTEDPUBLISHER %1  1> Nul\r
-IF %ERRORLEVEL% NEQ 0 (\r
-rem    echo Installing %2 Cert on %computername%\r
-    echo.\r
-    certutil -addstore TRUSTEDPUBLISHER "%2" 1> Nul\r
-    IF ERRORLEVEL 0 (\r
-        echo %computername% SUCCESS: OFA TrustedPublisher cert installed\r
-    ) ELSE (\r
-        echo %computername% FAILURE: OFA TrustedPublisher cert failed to install err %ERRORLEVEL%\r
-    )\r
-    echo.\r
-) else (\r
+rem test for cert already in the TrustedPublisher cert store\r
+certutil -verifystore TRUSTEDPUBLISHER %1  1> Nul\r
+if %ERRORLEVEL% EQU 0 (\r
     echo.\r
     echo %computername% OFA TrustedPublisher Cert already installed.\r
-    echo.\r
+    exit /B 0\r
 )\r
-\r
+echo Installing %2 Cert on %computername%\r
+echo.\r
+certutil -f -addstore TRUSTEDPUBLISHER "%2" 1> Nul\r
+if %ERRORLEVEL% EQU 0 (\r
+    echo %computername% SUCCESS: OFA TrustedPublisher cert installed\r
+) else (\r
+    echo %computername% FAILURE: OFA TrustedPublisher cert install err %ERRORLEVEL%\r
+    echo.\r
+) \r
 endlocal\r
index ff172ae..ea2583e 100644 (file)
 \r
           <?include ..\..\common\dapl_rt.inc ?>\r
 \r
-          <Component Id="cCertPush"\r
-                     Guid="8B3AEC30-CFED-4d90-A48E-AD2C8C55FEFD">\r
-            <File Id="cert_add.bat" Compressed="yes" DiskId="1"\r
-                     LongName="cert-add.bat" Name="cert-add.bat"\r
-                     Source="cert-add.bat" />\r
-            <File Id="rem_cert_add.bat" Compressed="yes" DiskId="1"\r
-                     LongName="rem-cert-add.bat" Name="remC-add.bat"\r
-                     Source="rem-cert-add.bat" />\r
-          </Component>\r
+          <?include ..\..\HPC\HPC.inc ?>\r
 \r
         </Directory>\r
       </Directory>\r