- mkfifo "$name.in", 0600;
- mkfifo "$name.out", 0600;
- get_logger->trace("Starting VM $name");
- $vm{$name} = Expect::Simple->new({
- Cmd => "$ENV{GRUNTMASTER_VM} $name",
- Prompt => '# ',
- DisconnectCmd => 'exit',
- RawPty => 1,
- Timeout => 10,
- });
+ my $cmd = $ENV{GRUNTMASTER_VM} . ' ' . $name;
+ $cmd .= ' ' . $arg if $arg;
+ get_logger->trace("Starting VM $name ($cmd)");
+ $vm{$name} = Expect->new;
+ $vm{$name}->raw_pty(1);
+ $vm{$name}->log_stdout(0);
+ $vm{$name}->spawn($cmd);
+ $vm{$name}->expect(50, '# ') or get_logger->logdie("Error while starting VM $name: ". $vm{$name}->error);
+ $vm{$name}->send("rm -rf ~/work/*\n");
+ $vm{$name}->expect(50, '# ')