diff --git a/packages/node_modules/@node-red/editor-client/locales/en-US/editor.json b/packages/node_modules/@node-red/editor-client/locales/en-US/editor.json
index a5f232aa6..ed4d4f9a6 100755
--- a/packages/node_modules/@node-red/editor-client/locales/en-US/editor.json
+++ b/packages/node_modules/@node-red/editor-client/locales/en-US/editor.json
@@ -977,7 +977,8 @@
"passphrase": "Passphrase",
"retry": "Retry",
"update-failed": "Failed to update auth",
- "unhandled": "Unhandled error response"
+ "unhandled": "Unhandled error response",
+ "host-key-verify-failed": "
Host key verification failed.
The repository host key could not be verified. Please update your known_hosts
file and try again."
},
"create-branch-list": {
"invalid": "Invalid branch",
diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/projects/projects.js b/packages/node_modules/@node-red/editor-client/src/js/ui/projects/projects.js
index 0c297c82a..da54a81c8 100755
--- a/packages/node_modules/@node-red/editor-client/src/js/ui/projects/projects.js
+++ b/packages/node_modules/@node-red/editor-client/src/js/ui/projects/projects.js
@@ -1939,100 +1939,121 @@ RED.projects = (function() {
}
}).fail(function(xhr,textStatus,err) {
var responses;
+
if (options.responses && options.responses[xhr.status]) {
responses = options.responses[xhr.status];
if (typeof responses === 'function') {
resultCallback = responses;
resultCallbackArgs = {error:responses.statusText};
return;
- } else if (options.handleAuthFail !== false && xhr.responseJSON.code === 'git_auth_failed') {
- var url = activeProject.git.remotes[xhr.responseJSON.remote||options.remote||'origin'].fetch;
+ } else if (options.handleAuthFail !== false && (xhr.responseJSON.code === 'git_auth_failed' || xhr.responseJSON.code === 'git_host_key_verification_failed')) {
+ if (xhr.responseJSON.code === 'git_auth_failed') {
+ var url = activeProject.git.remotes[xhr.responseJSON.remote||options.remote||'origin'].fetch;
- var message = $('
'+
+ var message = $('
'+
'
'+RED._("projects.send-req.auth-req")+':
'+
'
'+
'
');
- var isSSH = false;
- if (/^https?:\/\//.test(url)) {
- $('
'+
- '
').appendTo(message);
- } else if (/^(?:ssh|[\d\w\.\-_]+@[\w\.]+):(?:\/\/)?/.test(url)) {
- isSSH = true;
- var row = $('
').appendTo(message);
- $('
').appendTo(row);
- var projectRepoSSHKeySelect = $('