in src/main/java/com/amazonaws/schemamanager/repo/BitBucketRepoClient.java [51:94]
public void init(String url, String branch) {
final String passphrase = config.getCredentials();
final String sshFileLoc = config.getSshKeyFile();
SshSessionFactory sshSessionFactory = new JschConfigSessionFactory() {
@Override
protected void configure( Host host, Session session ) {
session.setConfig("StrictHostKeyChecking", "no");
}
@Override
protected JSch createDefaultJSch( FS fs ) throws JSchException {
JSch defaultJSch = super.createDefaultJSch( fs );
if (sshFileLoc != null && !sshFileLoc.isEmpty()) {
defaultJSch.addIdentity(sshFileLoc, passphrase);
log.info("Using ssh key from: " + sshFileLoc);
}
return defaultJSch;
}
};
Git git = null;
try {
git = Git.cloneRepository()
.setDirectory(localDir)
.setURI(url)
.setBranchesToClone(Arrays.asList(branch))
.setBranch(branch)
.setCloneAllBranches(true)
.setTransportConfigCallback( new TransportConfigCallback() {
@Override
public void configure( Transport transport ) {
SshTransport sshTransport = ( SshTransport )transport;
sshTransport.setSshSessionFactory( sshSessionFactory );
}
})
.call();
} catch (Exception e) {
log.error("Failed to initialize GitRepoClient... ", e);
return;
}
this.repository = git.getRepository();
}