blob: 63fe12e2ac88d948873c52b1a8eeca76f9db2314 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
# This script sets up VMPI.
$pathToExes = "..\\..\\..\\game\\bin"; # assuming we're under hl2\src\devtools\bin.
my $baseNetworkPath = @ARGV[0];
if ( $baseNetworkPath )
{
my @filesToCopy = (
"tier0.dll",
"vstdlib.dll",
"vmpi_service.exe",
"vmpi_service_ui.exe",
"vmpi_service_install.exe",
"WaitAndRestart.exe",
"vmpi_transfer.exe",
"filesystem_stdio.dll" );
# Verify that the files we're interested in exist.
foreach $filename ( @filesToCopy )
{
my $fullFilename = "$pathToExes\\$filename";
if ( !( -e $fullFilename ) )
{
die "Missing $fullFilename.\n";
}
}
# Create the directories on the network.
if ( !( -e $baseNetworkPath ) )
{
mkdir $baseNetworkPath or die "Can't create directory: $baseNetworkPath";
}
if ( !( -e "$baseNetworkPath\\services" ) )
{
mkdir( "$baseNetworkPath\\services" ) or die "ERROR: Can't create directory: $baseNetworkPath\\services";
}
# Now copy all the files up.
foreach $filename ( @filesToCopy )
{
my $fullFilename = "$pathToExes\\$filename";
`"copy $fullFilename $baseNetworkPath\\services"`;
}
print "\n";
print "Finished installing VMPI into $baseNetworkPath.\n\n";
print "Have all available worker machines run:\n";
print " $baseNetworkPath\\services\\vmpi_service_install.exe\n";
print "to setup the worker service.\n";
}
else
{
print "setup_vmpi.pl <UNC path to a server all machines can access>\n";
print "example: setup_vmpi.pl \\\\ftknox\\scratch\\vmpi\n";
}
|