|
@@ -87,32 +87,28 @@ class SvnDriver extends VcsDriver
|
|
|
$output
|
|
|
);
|
|
|
|
|
|
- // this could be any failure
|
|
|
- if ($status > 0 && $this->io->isInteractive()) {
|
|
|
-
|
|
|
- // the error is not auth-related
|
|
|
- if (strpos($output, 'authorization failed:') === false) {
|
|
|
- return $output;
|
|
|
- }
|
|
|
+ if ($status == 0) {
|
|
|
+ return $output;
|
|
|
+ }
|
|
|
|
|
|
- // no authorization has been detected so far
|
|
|
- if (!$this->useAuth) {
|
|
|
- $this->io->write("The Subversion server ({$this->baseUrl}) requested credentials:");
|
|
|
+ // this could be any failure, since SVN exits with 1 always
|
|
|
+ if (!$this->io->isInteractive()) {
|
|
|
+ return $output;
|
|
|
+ }
|
|
|
|
|
|
- $this->svnUsername = $this->io->ask("Username");
|
|
|
- $this->svnPassword = $this->io->askAndHideAnswer("Password");
|
|
|
- $this->useAuth = true;
|
|
|
+ // the error is not auth-related
|
|
|
+ if (strpos($output, 'authorization failed:') === false) {
|
|
|
+ return $output;
|
|
|
+ }
|
|
|
|
|
|
- $pleaseCache = $this->io->askConfirmation("Should Subversion cache these credentials?", false);
|
|
|
- if ($pleaseCache === true) {
|
|
|
- $this->useCache = true;
|
|
|
- }
|
|
|
+ // no authorization has been detected so far
|
|
|
+ if (!$this->useAuth) {
|
|
|
+ $this->useAuth = $this->util->doAuthDance()->hasAuth();
|
|
|
|
|
|
- // restart the process
|
|
|
- $output = $this->execute($command, $url);
|
|
|
- } else {
|
|
|
- $this->io->write("Authorization failed: {$svnCommand}");
|
|
|
- }
|
|
|
+ // restart the process
|
|
|
+ $output = $this->execute($command, $url);
|
|
|
+ } else {
|
|
|
+ $this->io->write("Authorization failed: {$svnCommand}");
|
|
|
}
|
|
|
return $output;
|
|
|
}
|