Merge pull request #5272 from stefangr/bitbucket-https-fallback-to-ssh
Bitbucket https fallback to sshpull/5277/merge
commit
14555de3ca
|
@ -112,7 +112,7 @@ class Git
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} elseif (preg_match('{^https://(bitbucket.org)/(.*)}', $url, $match)) { //bitbucket oauth
|
} elseif (preg_match('{^https://(bitbucket\.org)/(.*)(\.git)?$}U', $url, $match)) { //bitbucket oauth
|
||||||
$bitbucketUtil = new Bitbucket($this->io, $this->config, $this->process);
|
$bitbucketUtil = new Bitbucket($this->io, $this->config, $this->process);
|
||||||
|
|
||||||
if (!$this->io->hasAuthentication($match[1])) {
|
if (!$this->io->hasAuthentication($match[1])) {
|
||||||
|
@ -141,6 +141,13 @@ class Git
|
||||||
if (0 === $this->process->execute($command, $ignoredOutput, $cwd)) {
|
if (0 === $this->process->execute($command, $ignoredOutput, $cwd)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
} else { // Falling back to ssh
|
||||||
|
$sshUrl = 'git@bitbucket.org:' . $match[2] . '.git';
|
||||||
|
$this->io->writeError(' No bitbucket authentication configured. Falling back to ssh.');
|
||||||
|
$command = call_user_func($commandCallable, $sshUrl);
|
||||||
|
if (0 === $this->process->execute($command, $ignoredOutput, $cwd)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} elseif ($this->isAuthenticationFailure($url, $match)) { // private non-github repo that failed to authenticate
|
} elseif ($this->isAuthenticationFailure($url, $match)) { // private non-github repo that failed to authenticate
|
||||||
if (strpos($match[2], '@')) {
|
if (strpos($match[2], '@')) {
|
||||||
|
|
Loading…
Reference in New Issue