@Override
public OpsTarget getTarget(String user, KeyPair sshKeyPair) throws OpsException {
OpsSystem opsSystem = OpsContext.get().getOpsSystem();
ISshContext sshContext = opsSystem.getSshContext();
SshConnection sshConnection = sshContext.getSshConnection(user);
String address = getNetworkPoint().getBestAddress(NetworkPoint.forMe());
try {
sshConnection.setHost(InetAddress.getByName(address));
} catch (UnknownHostException e) {
throw new OpsException("Error resolving address: " + address, e);
}
sshConnection.setKeyPair(sshKeyPair);
File tempDirBase = new File("/tmp/");
// TODO: Verify the server key once we've learned it
IServerKeyVerifier serverKeyVerifier = new AcceptAllLearningServerKeyVerifier();
sshConnection.setServerKeyVerifier(serverKeyVerifier);
return new SshOpsTarget(tempDirBase, this, sshConnection);
}