@osaas/client-db 0.4.6 → 0.5.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/README.md +11 -9
- package/lib/index.d.ts +43 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +169 -1
- package/lib/index.js.map +1 -1
- package/package.json +5 -4
package/README.md
CHANGED
|
@@ -15,20 +15,22 @@ npm install --save @osaas/client-db
|
|
|
15
15
|
Example code creating a Valkey database and use a Redis client to connect with it
|
|
16
16
|
|
|
17
17
|
```javascript
|
|
18
|
-
import {
|
|
19
|
-
import { ValkeyDb } from '@osaas/client-db';
|
|
18
|
+
import { setupDatabase } from '@osaas/client-db';
|
|
20
19
|
import Redis from 'ioredis';
|
|
21
20
|
|
|
22
21
|
async function main() {
|
|
23
|
-
const
|
|
22
|
+
const dbUrl = await setupDatabase('valkey', 'myvalkey', {
|
|
23
|
+
password: 'secret'
|
|
24
|
+
});
|
|
25
|
+
const client = new Redis(dbUrl);
|
|
24
26
|
try {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
await client.subscribe('messages');
|
|
28
|
+
console.log('Waiting for messages...');
|
|
29
|
+
client.on('message', (channel, message) => {
|
|
30
|
+
console.log(`Received message: ${message} from ${channel}`);
|
|
31
|
+
});
|
|
30
32
|
} catch (err) {
|
|
31
|
-
|
|
33
|
+
console.error('Error:', err);
|
|
32
34
|
}
|
|
33
35
|
}
|
|
34
36
|
|
package/lib/index.d.ts
CHANGED
|
@@ -1,3 +1,46 @@
|
|
|
1
1
|
/** @module @osaas/client-db */
|
|
2
2
|
export { ValkeyDb } from './valkey';
|
|
3
|
+
export type DatabaseType = 'valkey' | 'postgres' | 'mariadb' | 'clickhouse' | 'couchdb';
|
|
4
|
+
export declare const DatabaseTypeToServiceId: Record<DatabaseType, string>;
|
|
5
|
+
export declare const DatabaseTypeToPort: Record<DatabaseType, number>;
|
|
6
|
+
export declare const DatabaseTypeToProtocol: Record<DatabaseType, string>;
|
|
7
|
+
export interface DatabaseOpts {
|
|
8
|
+
username?: string;
|
|
9
|
+
password?: string;
|
|
10
|
+
rootPassword?: string;
|
|
11
|
+
database?: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* @typedef {object} DatabaseOpts
|
|
15
|
+
* @property {string} [username] - The username for the database
|
|
16
|
+
* @property {string} [password] - The password for the database
|
|
17
|
+
* @property {string} [rootPassword] - The root password for the database
|
|
18
|
+
* @property {string} [database] - The database name
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
21
|
+
* Create a database instance if it does not exists
|
|
22
|
+
* and return the connection URL.
|
|
23
|
+
*
|
|
24
|
+
* @param {DatabaseType} type The type of the database.
|
|
25
|
+
* @param {string} name The name of the database instance.
|
|
26
|
+
* @param {DatabaseOpts} opts The options for the database.
|
|
27
|
+
* @returns The connection URL for the database.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* import { setupDatabase } from '@osaas/client-db';
|
|
31
|
+
* import Redis from 'ioredis';
|
|
32
|
+
*
|
|
33
|
+
* const dbUrl = await setupDatabase('valkey', 'myvalkey', { password: 'secret' });
|
|
34
|
+
* const client = new Redis(dbUrl);
|
|
35
|
+
* try {
|
|
36
|
+
* await client.subscribe('messages');
|
|
37
|
+
* console.log('Waiting for messages...');
|
|
38
|
+
* client.on('message', (channel, message) => {
|
|
39
|
+
* console.log(`Received message: ${message} from ${channel}`);
|
|
40
|
+
* });
|
|
41
|
+
* } catch (err) {
|
|
42
|
+
* console.error('Error:', err);
|
|
43
|
+
* }
|
|
44
|
+
*/
|
|
45
|
+
export declare function setupDatabase(type: DatabaseType, name: string, opts: DatabaseOpts): Promise<string>;
|
|
3
46
|
//# sourceMappingURL=index.d.ts.map
|
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,+BAA+B;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAqB/B,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,MAAM,MAAM,YAAY,GACpB,QAAQ,GACR,UAAU,GACV,SAAS,GACT,YAAY,GACZ,SAAS,CAAC;AAEd,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAMhE,CAAC;AACF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAM3D,CAAC;AACF,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAM/D,CAAC;AAEF,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,YAAY,EAClB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,YAAY,mBA+HnB"}
|
package/lib/index.js
CHANGED
|
@@ -1,7 +1,175 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/** @module @osaas/client-db */
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.ValkeyDb = void 0;
|
|
4
|
+
exports.setupDatabase = exports.DatabaseTypeToProtocol = exports.DatabaseTypeToPort = exports.DatabaseTypeToServiceId = exports.ValkeyDb = void 0;
|
|
5
|
+
const client_core_1 = require("@osaas/client-core");
|
|
6
|
+
const client_services_1 = require("@osaas/client-services");
|
|
5
7
|
var valkey_1 = require("./valkey");
|
|
6
8
|
Object.defineProperty(exports, "ValkeyDb", { enumerable: true, get: function () { return valkey_1.ValkeyDb; } });
|
|
9
|
+
exports.DatabaseTypeToServiceId = {
|
|
10
|
+
valkey: 'valkey-io-valkey',
|
|
11
|
+
postgres: 'birme-osc-postgresql',
|
|
12
|
+
mariadb: 'linuxserver-docker-mariadb',
|
|
13
|
+
clickhouse: 'clickhouse-clickhouse',
|
|
14
|
+
couchdb: 'apache-couchdb'
|
|
15
|
+
};
|
|
16
|
+
exports.DatabaseTypeToPort = {
|
|
17
|
+
valkey: 6379,
|
|
18
|
+
postgres: 5432,
|
|
19
|
+
mariadb: 3306,
|
|
20
|
+
clickhouse: 9000,
|
|
21
|
+
couchdb: 5984
|
|
22
|
+
};
|
|
23
|
+
exports.DatabaseTypeToProtocol = {
|
|
24
|
+
valkey: 'redis',
|
|
25
|
+
postgres: 'postgres',
|
|
26
|
+
mariadb: 'mysql',
|
|
27
|
+
clickhouse: 'clickhouse',
|
|
28
|
+
couchdb: 'https'
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* @typedef {object} DatabaseOpts
|
|
32
|
+
* @property {string} [username] - The username for the database
|
|
33
|
+
* @property {string} [password] - The password for the database
|
|
34
|
+
* @property {string} [rootPassword] - The root password for the database
|
|
35
|
+
* @property {string} [database] - The database name
|
|
36
|
+
*/
|
|
37
|
+
/**
|
|
38
|
+
* Create a database instance if it does not exists
|
|
39
|
+
* and return the connection URL.
|
|
40
|
+
*
|
|
41
|
+
* @param {DatabaseType} type The type of the database.
|
|
42
|
+
* @param {string} name The name of the database instance.
|
|
43
|
+
* @param {DatabaseOpts} opts The options for the database.
|
|
44
|
+
* @returns The connection URL for the database.
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* import { setupDatabase } from '@osaas/client-db';
|
|
48
|
+
* import Redis from 'ioredis';
|
|
49
|
+
*
|
|
50
|
+
* const dbUrl = await setupDatabase('valkey', 'myvalkey', { password: 'secret' });
|
|
51
|
+
* const client = new Redis(dbUrl);
|
|
52
|
+
* try {
|
|
53
|
+
* await client.subscribe('messages');
|
|
54
|
+
* console.log('Waiting for messages...');
|
|
55
|
+
* client.on('message', (channel, message) => {
|
|
56
|
+
* console.log(`Received message: ${message} from ${channel}`);
|
|
57
|
+
* });
|
|
58
|
+
* } catch (err) {
|
|
59
|
+
* console.error('Error:', err);
|
|
60
|
+
* }
|
|
61
|
+
*/
|
|
62
|
+
async function setupDatabase(type, name, opts) {
|
|
63
|
+
const ctx = new client_core_1.Context();
|
|
64
|
+
let instance;
|
|
65
|
+
switch (type) {
|
|
66
|
+
case 'valkey':
|
|
67
|
+
instance = await (0, client_services_1.getValkeyIoValkeyInstance)(ctx, name);
|
|
68
|
+
break;
|
|
69
|
+
case 'postgres':
|
|
70
|
+
instance = await (0, client_services_1.getBirmeOscPostgresqlInstance)(ctx, name);
|
|
71
|
+
break;
|
|
72
|
+
case 'mariadb':
|
|
73
|
+
instance = await (0, client_services_1.getLinuxserverDockerMariadbInstance)(ctx, name);
|
|
74
|
+
break;
|
|
75
|
+
case 'clickhouse':
|
|
76
|
+
instance = await (0, client_services_1.getClickhouseClickhouseInstance)(ctx, name);
|
|
77
|
+
break;
|
|
78
|
+
case 'couchdb':
|
|
79
|
+
instance = await (0, client_services_1.getApacheCouchdbInstance)(ctx, name);
|
|
80
|
+
break;
|
|
81
|
+
default:
|
|
82
|
+
throw new Error(`Unsupported database type: ${type}`);
|
|
83
|
+
}
|
|
84
|
+
if (!instance) {
|
|
85
|
+
switch (type) {
|
|
86
|
+
case 'valkey':
|
|
87
|
+
{
|
|
88
|
+
const options = {
|
|
89
|
+
name,
|
|
90
|
+
Password: opts.password
|
|
91
|
+
};
|
|
92
|
+
instance = await (0, client_services_1.createValkeyIoValkeyInstance)(ctx, options);
|
|
93
|
+
}
|
|
94
|
+
break;
|
|
95
|
+
case 'postgres':
|
|
96
|
+
{
|
|
97
|
+
if (!opts.password) {
|
|
98
|
+
throw new Error('Password is required for postgres');
|
|
99
|
+
}
|
|
100
|
+
const options = {
|
|
101
|
+
name,
|
|
102
|
+
PostgresUser: opts.username,
|
|
103
|
+
PostgresPassword: opts.password,
|
|
104
|
+
PostgresDb: opts.database
|
|
105
|
+
};
|
|
106
|
+
instance = await (0, client_services_1.createBirmeOscPostgresqlInstance)(ctx, options);
|
|
107
|
+
}
|
|
108
|
+
break;
|
|
109
|
+
case 'mariadb':
|
|
110
|
+
{
|
|
111
|
+
if (!opts.rootPassword) {
|
|
112
|
+
throw new Error('Root password is required for mariadb');
|
|
113
|
+
}
|
|
114
|
+
const options = {
|
|
115
|
+
name,
|
|
116
|
+
RootPassword: opts.rootPassword,
|
|
117
|
+
Database: opts.database,
|
|
118
|
+
User: opts.username,
|
|
119
|
+
Password: opts.password
|
|
120
|
+
};
|
|
121
|
+
instance = await (0, client_services_1.createLinuxserverDockerMariadbInstance)(ctx, options);
|
|
122
|
+
}
|
|
123
|
+
break;
|
|
124
|
+
case 'clickhouse':
|
|
125
|
+
{
|
|
126
|
+
const options = {
|
|
127
|
+
name,
|
|
128
|
+
Password: opts.password,
|
|
129
|
+
User: opts.username,
|
|
130
|
+
Db: opts.database
|
|
131
|
+
};
|
|
132
|
+
instance = await (0, client_services_1.createClickhouseClickhouseInstance)(ctx, options);
|
|
133
|
+
}
|
|
134
|
+
break;
|
|
135
|
+
case 'couchdb':
|
|
136
|
+
{
|
|
137
|
+
if (!opts.rootPassword) {
|
|
138
|
+
throw new Error('Root password is required for couchdb');
|
|
139
|
+
}
|
|
140
|
+
const options = {
|
|
141
|
+
name,
|
|
142
|
+
AdminPassword: opts.rootPassword
|
|
143
|
+
};
|
|
144
|
+
instance = await (0, client_services_1.createApacheCouchdbInstance)(ctx, options);
|
|
145
|
+
}
|
|
146
|
+
break;
|
|
147
|
+
default:
|
|
148
|
+
throw new Error(`Unsupported database type: ${type}`);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
switch (type) {
|
|
152
|
+
case 'valkey':
|
|
153
|
+
case 'postgres':
|
|
154
|
+
case 'mariadb':
|
|
155
|
+
case 'clickhouse': {
|
|
156
|
+
const token = await ctx.getServiceAccessToken(exports.DatabaseTypeToServiceId[type]);
|
|
157
|
+
const ports = await (0, client_core_1.getPortsForInstance)(ctx, exports.DatabaseTypeToServiceId[type], name, token);
|
|
158
|
+
const port = ports.find((p) => p.internalPort === exports.DatabaseTypeToPort[type]);
|
|
159
|
+
if (port) {
|
|
160
|
+
return `${exports.DatabaseTypeToProtocol[type]}://${opts.username || 'default'}${opts.password ? ':' + opts.password : ''}@${port.externalIp}:${port.externalPort}`;
|
|
161
|
+
}
|
|
162
|
+
throw new Error('Failed to get connection URL for database');
|
|
163
|
+
}
|
|
164
|
+
case 'couchdb': {
|
|
165
|
+
const url = new URL(instance.url);
|
|
166
|
+
url.password = instance.AdminPassword;
|
|
167
|
+
url.username = 'admin';
|
|
168
|
+
return url.toString();
|
|
169
|
+
}
|
|
170
|
+
default:
|
|
171
|
+
throw new Error(`Unsupported database type: ${type}`);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
exports.setupDatabase = setupDatabase;
|
|
7
175
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,+BAA+B;;;AAE/B,mCAAoC;AAA3B,kGAAA,QAAQ,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@osaas/client-db",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "Open Source Cloud Client SDK database library",
|
|
5
5
|
"author": "Eyevinn Open Source Cloud <osc@eyevinn.se>",
|
|
6
6
|
"homepage": "https://www.osaas.io",
|
|
@@ -26,11 +26,12 @@
|
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@osaas/client-core": "^0.15.1",
|
|
29
|
-
"@osaas/client-services": "^0.
|
|
30
|
-
"chalk": "4.1.2"
|
|
29
|
+
"@osaas/client-services": "^0.9.0",
|
|
30
|
+
"chalk": "4.1.2",
|
|
31
|
+
"ioredis": "^5.5.0"
|
|
31
32
|
},
|
|
32
33
|
"publishConfig": {
|
|
33
34
|
"access": "public"
|
|
34
35
|
},
|
|
35
|
-
"gitHead": "
|
|
36
|
+
"gitHead": "4413b4785d4361bf7e3d82908e9b81683d41eca9"
|
|
36
37
|
}
|