@theia/remote 1.74.0-next.9 → 1.74.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/electron-node/ssh/remote-ssh-connection-provider.d.ts.map +1 -1
- package/lib/electron-node/ssh/remote-ssh-connection-provider.js +14 -9
- package/lib/electron-node/ssh/remote-ssh-connection-provider.js.map +1 -1
- package/lib/electron-node/ssh/remote-ssh-connection-provider.spec.d.ts +2 -0
- package/lib/electron-node/ssh/remote-ssh-connection-provider.spec.d.ts.map +1 -0
- package/lib/electron-node/ssh/remote-ssh-connection-provider.spec.js +119 -0
- package/lib/electron-node/ssh/remote-ssh-connection-provider.spec.js.map +1 -0
- package/package.json +8 -8
- package/src/electron-node/ssh/remote-ssh-connection-provider.spec.ts +129 -0
- package/src/electron-node/ssh/remote-ssh-connection-provider.ts +16 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-ssh-connection-provider.d.ts","sourceRoot":"","sources":["../../../src/electron-node/ssh/remote-ssh-connection-provider.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAE3B,OAAO,UAAU,GAAG,QAAQ,kBAAkB,CAAC,CAAC;AAChD,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAW,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEzF,OAAO,EAAE,2BAA2B,EAAE,kCAAkC,EAAE,SAAS,EAAE,MAAM,sDAAsD,CAAC;AAClJ,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAsB,MAAM,iBAAiB,CAAC;AAE9H,OAAO,EAAE,wBAAwB,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGnE,qBACa,+BAAgC,YAAW,2BAA2B;IAG/E,SAAS,CAAC,QAAQ,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAGpE,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC;IAG7D,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,wBAAwB,CAAC;IAGnE,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;IAGnD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAGlD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEnC,SAAS,CAAC,kBAAkB,SAAK;IACjC,SAAS,CAAC,oBAAoB,SAAK;IAE7B,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"remote-ssh-connection-provider.d.ts","sourceRoot":"","sources":["../../../src/electron-node/ssh/remote-ssh-connection-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,16 +38,21 @@ let RemoteSSHConnectionProviderImpl = class RemoteSSHConnectionProviderImpl {
|
|
|
38
38
|
const sshConfig = await this.doGetSSHConfig(customConfigFile);
|
|
39
39
|
const host2 = host.trim().split(':');
|
|
40
40
|
const record = Object.fromEntries(Object.entries(sshConfig.compute(host2[0])).map(([k, v]) => [k.toLowerCase(), v]));
|
|
41
|
+
const hostArray = typeof record.host === 'string' ? [record.host] : record.host;
|
|
41
42
|
// Generate a regexp to find wildcards and process the hostname with the wildcards
|
|
42
|
-
if (
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
if (
|
|
50
|
-
record.
|
|
43
|
+
if (hostArray) {
|
|
44
|
+
for (const hostPattern of hostArray) {
|
|
45
|
+
const checkHost = new RegExp('^' + hostPattern
|
|
46
|
+
.replace(/([^\w\*\?])/g, '\\$1')
|
|
47
|
+
.replace(/([\?]+)/g, (...m) => '(' + '.'.repeat(m[1].length) + ')')
|
|
48
|
+
.replace(/\*/g, '(.+)') + '$');
|
|
49
|
+
const match = host2[0].match(checkHost);
|
|
50
|
+
if (match) {
|
|
51
|
+
record.host = host2[0];
|
|
52
|
+
if (record.hostname) {
|
|
53
|
+
record.hostname = record.hostname.replace('%h', match[1]);
|
|
54
|
+
}
|
|
55
|
+
break;
|
|
51
56
|
}
|
|
52
57
|
}
|
|
53
58
|
if (host2[1]) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remote-ssh-connection-provider.js","sourceRoot":"","sources":["../../../src/electron-node/ssh/remote-ssh-connection-provider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"remote-ssh-connection-provider.js","sourceRoot":"","sources":["../../../src/electron-node/ssh/remote-ssh-connection-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-ssh-connection-provider.spec.d.ts","sourceRoot":"","sources":["../../../src/electron-node/ssh/remote-ssh-connection-provider.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2026 Tom Aviv.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
const chai_1 = require("chai");
|
|
19
|
+
const ssh_config_1 = require("ssh-config");
|
|
20
|
+
const remote_ssh_connection_provider_1 = require("./remote-ssh-connection-provider");
|
|
21
|
+
/**
|
|
22
|
+
* Parses the SSH config from an in-memory string instead of a file,
|
|
23
|
+
* so tests don't need to touch the file system.
|
|
24
|
+
*/
|
|
25
|
+
class TestableRemoteSSHConnectionProvider extends remote_ssh_connection_provider_1.RemoteSSHConnectionProviderImpl {
|
|
26
|
+
constructor() {
|
|
27
|
+
super(...arguments);
|
|
28
|
+
this.configContent = '';
|
|
29
|
+
}
|
|
30
|
+
async doGetSSHConfig() {
|
|
31
|
+
return ssh_config_1.default.parse(this.configContent);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
describe('RemoteSSHConnectionProviderImpl#matchSSHConfigHost', () => {
|
|
35
|
+
function createProvider(configContent) {
|
|
36
|
+
const provider = new TestableRemoteSSHConnectionProvider();
|
|
37
|
+
provider.configContent = configContent;
|
|
38
|
+
return provider;
|
|
39
|
+
}
|
|
40
|
+
it('should match a single-pattern host entry and expand %h', async () => {
|
|
41
|
+
const provider = createProvider(`Host my-*
|
|
42
|
+
HostName %h.example.com
|
|
43
|
+
`);
|
|
44
|
+
const record = await provider.matchSSHConfigHost('my-server');
|
|
45
|
+
(0, chai_1.expect)(record?.hostname).to.equal('server.example.com');
|
|
46
|
+
});
|
|
47
|
+
it('should replace the host pattern with the concrete host on match', async () => {
|
|
48
|
+
const provider = createProvider(`Host my-*
|
|
49
|
+
Port 2200
|
|
50
|
+
`);
|
|
51
|
+
const record = await provider.matchSSHConfigHost('my-server');
|
|
52
|
+
(0, chai_1.expect)(record?.host).to.equal('my-server');
|
|
53
|
+
});
|
|
54
|
+
it('should handle a multi-pattern host entry (host as string array)', async () => {
|
|
55
|
+
const provider = createProvider(`Host web-* db-*
|
|
56
|
+
Port 2022
|
|
57
|
+
`);
|
|
58
|
+
const record = await provider.matchSSHConfigHost('web-1');
|
|
59
|
+
(0, chai_1.expect)(record?.host).to.equal('web-1');
|
|
60
|
+
(0, chai_1.expect)(record?.port).to.equal('2022');
|
|
61
|
+
});
|
|
62
|
+
it('should match against subsequent patterns of a multi-pattern host entry', async () => {
|
|
63
|
+
const provider = createProvider(`Host web-* db-*
|
|
64
|
+
HostName %h.cluster.local
|
|
65
|
+
`);
|
|
66
|
+
const record = await provider.matchSSHConfigHost('db-3');
|
|
67
|
+
(0, chai_1.expect)(record?.host).to.equal('db-3');
|
|
68
|
+
(0, chai_1.expect)(record?.hostname).to.equal('3.cluster.local');
|
|
69
|
+
});
|
|
70
|
+
it('should match a non-glob host entry', async () => {
|
|
71
|
+
const provider = createProvider(`Host build-server
|
|
72
|
+
HostName 192.168.1.10
|
|
73
|
+
`);
|
|
74
|
+
const record = await provider.matchSSHConfigHost('build-server');
|
|
75
|
+
(0, chai_1.expect)(record?.host).to.equal('build-server');
|
|
76
|
+
(0, chai_1.expect)(record?.hostname).to.equal('192.168.1.10');
|
|
77
|
+
});
|
|
78
|
+
it('should match a multi-pattern host entry with non-glob values', async () => {
|
|
79
|
+
const provider = createProvider(`Host alpha beta
|
|
80
|
+
Port 2022
|
|
81
|
+
`);
|
|
82
|
+
const first = await provider.matchSSHConfigHost('alpha');
|
|
83
|
+
(0, chai_1.expect)(first?.host).to.equal('alpha');
|
|
84
|
+
(0, chai_1.expect)(first?.port).to.equal('2022');
|
|
85
|
+
const second = await provider.matchSSHConfigHost('beta');
|
|
86
|
+
(0, chai_1.expect)(second?.host).to.equal('beta');
|
|
87
|
+
(0, chai_1.expect)(second?.port).to.equal('2022');
|
|
88
|
+
});
|
|
89
|
+
it('should expand ? wildcards', async () => {
|
|
90
|
+
const provider = createProvider(`Host server-??
|
|
91
|
+
HostName %h.internal
|
|
92
|
+
`);
|
|
93
|
+
const record = await provider.matchSSHConfigHost('server-01');
|
|
94
|
+
(0, chai_1.expect)(record?.host).to.equal('server-01');
|
|
95
|
+
(0, chai_1.expect)(record?.hostname).to.equal('01.internal');
|
|
96
|
+
});
|
|
97
|
+
it('should apply the port from the host string', async () => {
|
|
98
|
+
const provider = createProvider(`Host my-*
|
|
99
|
+
HostName %h.example.com
|
|
100
|
+
`);
|
|
101
|
+
const record = await provider.matchSSHConfigHost('my-server:2222');
|
|
102
|
+
(0, chai_1.expect)(record?.hostname).to.equal('server.example.com');
|
|
103
|
+
(0, chai_1.expect)(record?.port).to.equal('2222');
|
|
104
|
+
});
|
|
105
|
+
it('should return an empty record when no host entry matches', async () => {
|
|
106
|
+
const provider = createProvider(`Host my-*
|
|
107
|
+
HostName %h.example.com
|
|
108
|
+
`);
|
|
109
|
+
const record = await provider.matchSSHConfigHost('other-host');
|
|
110
|
+
(0, chai_1.expect)(record?.host).to.equal(undefined);
|
|
111
|
+
(0, chai_1.expect)(record?.hostname).to.equal(undefined);
|
|
112
|
+
});
|
|
113
|
+
it('should return an empty record for an empty config', async () => {
|
|
114
|
+
const provider = createProvider('');
|
|
115
|
+
const record = await provider.matchSSHConfigHost('any-host');
|
|
116
|
+
(0, chai_1.expect)(record).to.deep.equal({});
|
|
117
|
+
});
|
|
118
|
+
});
|
|
119
|
+
//# sourceMappingURL=remote-ssh-connection-provider.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-ssh-connection-provider.spec.js","sourceRoot":"","sources":["../../../src/electron-node/ssh/remote-ssh-connection-provider.spec.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@theia/remote",
|
|
3
|
-
"version": "1.74.0
|
|
3
|
+
"version": "1.74.0",
|
|
4
4
|
"description": "Theia - Remote",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@theia/core": "1.74.0
|
|
7
|
-
"@theia/filesystem": "1.74.0
|
|
8
|
-
"@theia/userstorage": "1.74.0
|
|
9
|
-
"@theia/variable-resolver": "1.74.0
|
|
10
|
-
"@theia/workspace": "1.74.0
|
|
6
|
+
"@theia/core": "1.74.0",
|
|
7
|
+
"@theia/filesystem": "1.74.0",
|
|
8
|
+
"@theia/userstorage": "1.74.0",
|
|
9
|
+
"@theia/variable-resolver": "1.74.0",
|
|
10
|
+
"@theia/workspace": "1.74.0",
|
|
11
11
|
"archiver": "^5.3.2",
|
|
12
12
|
"decompress": "^4.2.1",
|
|
13
13
|
"decompress-tar": "^4.1.1",
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"watch": "theiaext watch"
|
|
57
57
|
},
|
|
58
58
|
"devDependencies": {
|
|
59
|
-
"@theia/ext-scripts": "1.
|
|
59
|
+
"@theia/ext-scripts": "1.74.0",
|
|
60
60
|
"@types/archiver": "^5.3.4",
|
|
61
61
|
"@types/decompress": "^4.2.7",
|
|
62
62
|
"@types/express-http-proxy": "^1.6.7",
|
|
@@ -67,5 +67,5 @@
|
|
|
67
67
|
"nyc": {
|
|
68
68
|
"extends": "../../configs/nyc.json"
|
|
69
69
|
},
|
|
70
|
-
"gitHead": "
|
|
70
|
+
"gitHead": "7b7376225f0825b4f13d296d686cc13db95fdb69"
|
|
71
71
|
}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
// *****************************************************************************
|
|
2
|
+
// Copyright (C) 2026 Tom Aviv.
|
|
3
|
+
//
|
|
4
|
+
// This program and the accompanying materials are made available under the
|
|
5
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
+
//
|
|
8
|
+
// This Source Code may also be made available under the following Secondary
|
|
9
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
+
// with the GNU Classpath Exception which is available at
|
|
12
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
13
|
+
//
|
|
14
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
15
|
+
// *****************************************************************************
|
|
16
|
+
|
|
17
|
+
import { expect } from 'chai';
|
|
18
|
+
import SshConfig from 'ssh-config';
|
|
19
|
+
import { RemoteSSHConnectionProviderImpl } from './remote-ssh-connection-provider';
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Parses the SSH config from an in-memory string instead of a file,
|
|
23
|
+
* so tests don't need to touch the file system.
|
|
24
|
+
*/
|
|
25
|
+
class TestableRemoteSSHConnectionProvider extends RemoteSSHConnectionProviderImpl {
|
|
26
|
+
configContent = '';
|
|
27
|
+
|
|
28
|
+
override async doGetSSHConfig(): Promise<SshConfig> {
|
|
29
|
+
return SshConfig.parse(this.configContent);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
describe('RemoteSSHConnectionProviderImpl#matchSSHConfigHost', () => {
|
|
34
|
+
|
|
35
|
+
function createProvider(configContent: string): TestableRemoteSSHConnectionProvider {
|
|
36
|
+
const provider = new TestableRemoteSSHConnectionProvider();
|
|
37
|
+
provider.configContent = configContent;
|
|
38
|
+
return provider;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
it('should match a single-pattern host entry and expand %h', async () => {
|
|
42
|
+
const provider = createProvider(`Host my-*
|
|
43
|
+
HostName %h.example.com
|
|
44
|
+
`);
|
|
45
|
+
const record = await provider.matchSSHConfigHost('my-server');
|
|
46
|
+
expect(record?.hostname).to.equal('server.example.com');
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
it('should replace the host pattern with the concrete host on match', async () => {
|
|
50
|
+
const provider = createProvider(`Host my-*
|
|
51
|
+
Port 2200
|
|
52
|
+
`);
|
|
53
|
+
const record = await provider.matchSSHConfigHost('my-server');
|
|
54
|
+
expect(record?.host).to.equal('my-server');
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
it('should handle a multi-pattern host entry (host as string array)', async () => {
|
|
58
|
+
const provider = createProvider(`Host web-* db-*
|
|
59
|
+
Port 2022
|
|
60
|
+
`);
|
|
61
|
+
const record = await provider.matchSSHConfigHost('web-1');
|
|
62
|
+
expect(record?.host).to.equal('web-1');
|
|
63
|
+
expect(record?.port).to.equal('2022');
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
it('should match against subsequent patterns of a multi-pattern host entry', async () => {
|
|
67
|
+
const provider = createProvider(`Host web-* db-*
|
|
68
|
+
HostName %h.cluster.local
|
|
69
|
+
`);
|
|
70
|
+
const record = await provider.matchSSHConfigHost('db-3');
|
|
71
|
+
expect(record?.host).to.equal('db-3');
|
|
72
|
+
expect(record?.hostname).to.equal('3.cluster.local');
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
it('should match a non-glob host entry', async () => {
|
|
76
|
+
const provider = createProvider(`Host build-server
|
|
77
|
+
HostName 192.168.1.10
|
|
78
|
+
`);
|
|
79
|
+
const record = await provider.matchSSHConfigHost('build-server');
|
|
80
|
+
expect(record?.host).to.equal('build-server');
|
|
81
|
+
expect(record?.hostname).to.equal('192.168.1.10');
|
|
82
|
+
});
|
|
83
|
+
|
|
84
|
+
it('should match a multi-pattern host entry with non-glob values', async () => {
|
|
85
|
+
const provider = createProvider(`Host alpha beta
|
|
86
|
+
Port 2022
|
|
87
|
+
`);
|
|
88
|
+
const first = await provider.matchSSHConfigHost('alpha');
|
|
89
|
+
expect(first?.host).to.equal('alpha');
|
|
90
|
+
expect(first?.port).to.equal('2022');
|
|
91
|
+
|
|
92
|
+
const second = await provider.matchSSHConfigHost('beta');
|
|
93
|
+
expect(second?.host).to.equal('beta');
|
|
94
|
+
expect(second?.port).to.equal('2022');
|
|
95
|
+
});
|
|
96
|
+
|
|
97
|
+
it('should expand ? wildcards', async () => {
|
|
98
|
+
const provider = createProvider(`Host server-??
|
|
99
|
+
HostName %h.internal
|
|
100
|
+
`);
|
|
101
|
+
const record = await provider.matchSSHConfigHost('server-01');
|
|
102
|
+
expect(record?.host).to.equal('server-01');
|
|
103
|
+
expect(record?.hostname).to.equal('01.internal');
|
|
104
|
+
});
|
|
105
|
+
|
|
106
|
+
it('should apply the port from the host string', async () => {
|
|
107
|
+
const provider = createProvider(`Host my-*
|
|
108
|
+
HostName %h.example.com
|
|
109
|
+
`);
|
|
110
|
+
const record = await provider.matchSSHConfigHost('my-server:2222');
|
|
111
|
+
expect(record?.hostname).to.equal('server.example.com');
|
|
112
|
+
expect(record?.port).to.equal('2222');
|
|
113
|
+
});
|
|
114
|
+
|
|
115
|
+
it('should return an empty record when no host entry matches', async () => {
|
|
116
|
+
const provider = createProvider(`Host my-*
|
|
117
|
+
HostName %h.example.com
|
|
118
|
+
`);
|
|
119
|
+
const record = await provider.matchSSHConfigHost('other-host');
|
|
120
|
+
expect(record?.host).to.equal(undefined);
|
|
121
|
+
expect(record?.hostname).to.equal(undefined);
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
it('should return an empty record for an empty config', async () => {
|
|
125
|
+
const provider = createProvider('');
|
|
126
|
+
const record = await provider.matchSSHConfigHost('any-host');
|
|
127
|
+
expect(record).to.deep.equal({});
|
|
128
|
+
});
|
|
129
|
+
});
|
|
@@ -65,17 +65,23 @@ export class RemoteSSHConnectionProviderImpl implements RemoteSSHConnectionProvi
|
|
|
65
65
|
Object.entries(sshConfig.compute(host2[0])).map(([k, v]) => [k.toLowerCase(), v])
|
|
66
66
|
);
|
|
67
67
|
|
|
68
|
+
const hostArray = typeof record.host === 'string' ? [record.host] : record.host;
|
|
69
|
+
|
|
68
70
|
// Generate a regexp to find wildcards and process the hostname with the wildcards
|
|
69
|
-
if (
|
|
70
|
-
const
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
if (
|
|
78
|
-
record.
|
|
71
|
+
if (hostArray) {
|
|
72
|
+
for (const hostPattern of hostArray) {
|
|
73
|
+
const checkHost = new RegExp('^' + hostPattern
|
|
74
|
+
.replace(/([^\w\*\?])/g, '\\$1')
|
|
75
|
+
.replace(/([\?]+)/g, (...m) => '(' + '.'.repeat(m[1].length) + ')')
|
|
76
|
+
.replace(/\*/g, '(.+)') + '$');
|
|
77
|
+
|
|
78
|
+
const match = host2[0].match(checkHost);
|
|
79
|
+
if (match) {
|
|
80
|
+
record.host = host2[0];
|
|
81
|
+
if (record.hostname) {
|
|
82
|
+
record.hostname = (<string>record.hostname).replace('%h', match[1]);
|
|
83
|
+
}
|
|
84
|
+
break;
|
|
79
85
|
}
|
|
80
86
|
}
|
|
81
87
|
|