clawsql 0.2.4 → 0.2.7
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 +110 -260
- package/dist/api/schemas/index.d.ts +20 -20
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +12 -0
- package/dist/app.js.map +1 -1
- package/dist/bin/clawsql.js +0 -0
- package/dist/cli/commands/clusters.d.ts +1 -1
- package/dist/cli/commands/clusters.d.ts.map +1 -1
- package/dist/cli/commands/clusters.js +291 -56
- package/dist/cli/commands/clusters.js.map +1 -1
- package/dist/cli/commands/templates.d.ts +11 -0
- package/dist/cli/commands/templates.d.ts.map +1 -0
- package/dist/cli/commands/templates.js +206 -0
- package/dist/cli/commands/templates.js.map +1 -0
- package/dist/cli/formatter.d.ts +24 -0
- package/dist/cli/formatter.d.ts.map +1 -1
- package/dist/cli/formatter.js +22 -0
- package/dist/cli/formatter.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +2 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/raw-input.d.ts +9 -1
- package/dist/cli/raw-input.d.ts.map +1 -1
- package/dist/cli/raw-input.js +146 -10
- package/dist/cli/raw-input.js.map +1 -1
- package/dist/cli/repl.d.ts.map +1 -1
- package/dist/cli/repl.js +94 -29
- package/dist/cli/repl.js.map +1 -1
- package/dist/cli/ui/components.d.ts.map +1 -1
- package/dist/cli/ui/components.js +21 -5
- package/dist/cli/ui/components.js.map +1 -1
- package/dist/cli/utils/args.d.ts +25 -0
- package/dist/cli/utils/args.d.ts.map +1 -0
- package/dist/cli/utils/args.js +51 -0
- package/dist/cli/utils/args.js.map +1 -0
- package/dist/config/settings.d.ts +38 -6
- package/dist/config/settings.d.ts.map +1 -1
- package/dist/config/settings.js +8 -0
- package/dist/config/settings.js.map +1 -1
- package/dist/core/provisioning/cluster-provisioner.d.ts +99 -0
- package/dist/core/provisioning/cluster-provisioner.d.ts.map +1 -0
- package/dist/core/provisioning/cluster-provisioner.js +415 -0
- package/dist/core/provisioning/cluster-provisioner.js.map +1 -0
- package/dist/core/provisioning/index.d.ts +12 -0
- package/dist/core/provisioning/index.d.ts.map +1 -0
- package/dist/core/provisioning/index.js +21 -0
- package/dist/core/provisioning/index.js.map +1 -0
- package/dist/core/provisioning/predefined-templates.d.ts +43 -0
- package/dist/core/provisioning/predefined-templates.d.ts.map +1 -0
- package/dist/core/provisioning/predefined-templates.js +117 -0
- package/dist/core/provisioning/predefined-templates.js.map +1 -0
- package/dist/core/provisioning/template-manager.d.ts +113 -0
- package/dist/core/provisioning/template-manager.d.ts.map +1 -0
- package/dist/core/provisioning/template-manager.js +274 -0
- package/dist/core/provisioning/template-manager.js.map +1 -0
- package/dist/core/routing/proxysql-manager.d.ts +17 -0
- package/dist/core/routing/proxysql-manager.d.ts.map +1 -1
- package/dist/core/routing/proxysql-manager.js +77 -0
- package/dist/core/routing/proxysql-manager.js.map +1 -1
- package/dist/types/index.d.ts +52 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +45 -1
- package/dist/types/index.js.map +1 -1
- package/dist/utils/database.d.ts.map +1 -1
- package/dist/utils/database.js +40 -0
- package/dist/utils/database.js.map +1 -1
- package/docker/Dockerfile.allinone +1 -1
- package/docker/Dockerfile.node +1 -1
- package/package.json +1 -1
package/dist/types/index.d.ts
CHANGED
|
@@ -49,6 +49,19 @@ export declare enum FailureType {
|
|
|
49
49
|
DISK_FULL = "disk_full",
|
|
50
50
|
MEMORY_EXHAUSTED = "memory_exhausted"
|
|
51
51
|
}
|
|
52
|
+
/** Replication mode for cluster templates */
|
|
53
|
+
export declare enum ReplicationMode {
|
|
54
|
+
ASYNC = "async",
|
|
55
|
+
SEMI_SYNC = "semi-sync",
|
|
56
|
+
GROUP_REPLICATION = "group-replication"
|
|
57
|
+
}
|
|
58
|
+
/** Provisioning status for template-based clusters */
|
|
59
|
+
export declare enum ProvisionStatus {
|
|
60
|
+
PENDING = "pending",
|
|
61
|
+
PROVISIONING = "provisioning",
|
|
62
|
+
READY = "ready",
|
|
63
|
+
FAILED = "failed"
|
|
64
|
+
}
|
|
52
65
|
/** Represents a discovered MySQL instance */
|
|
53
66
|
export interface MySQLInstance {
|
|
54
67
|
host: string;
|
|
@@ -135,6 +148,41 @@ export interface HealthCheckResult {
|
|
|
135
148
|
message: string;
|
|
136
149
|
threshold?: number;
|
|
137
150
|
}
|
|
151
|
+
/** Topology template for cluster provisioning */
|
|
152
|
+
export interface TopologyTemplate {
|
|
153
|
+
templateId: string;
|
|
154
|
+
name: string;
|
|
155
|
+
description?: string;
|
|
156
|
+
primaryCount: number;
|
|
157
|
+
replicaCount: number;
|
|
158
|
+
replicationMode: ReplicationMode;
|
|
159
|
+
settings?: {
|
|
160
|
+
maxReplicationLag?: number;
|
|
161
|
+
failoverPriority?: 'lowest-lag' | 'highest-binlog';
|
|
162
|
+
};
|
|
163
|
+
createdAt: Date;
|
|
164
|
+
updatedAt: Date;
|
|
165
|
+
}
|
|
166
|
+
/** Cluster metadata for provisioned clusters */
|
|
167
|
+
export interface ClusterMetadata {
|
|
168
|
+
clusterId: string;
|
|
169
|
+
templateId?: string;
|
|
170
|
+
assignedPort?: number;
|
|
171
|
+
writerHostgroup?: number;
|
|
172
|
+
readerHostgroup?: number;
|
|
173
|
+
provisionStatus: ProvisionStatus;
|
|
174
|
+
createdAt: Date;
|
|
175
|
+
updatedAt: Date;
|
|
176
|
+
}
|
|
177
|
+
/** Provisioned instance for template-based clusters */
|
|
178
|
+
export interface ProvisionedInstance {
|
|
179
|
+
clusterId: string;
|
|
180
|
+
host: string;
|
|
181
|
+
port: number;
|
|
182
|
+
role: 'primary' | 'replica';
|
|
183
|
+
sequence: number;
|
|
184
|
+
provisionedAt: Date;
|
|
185
|
+
}
|
|
138
186
|
/** Create a unique instance ID from host and port */
|
|
139
187
|
export declare function createInstanceId(host: string, port: number): string;
|
|
140
188
|
/** Create a default MySQL instance */
|
|
@@ -155,6 +203,10 @@ export declare function getInstanceCount(cluster: MySQLCluster): number;
|
|
|
155
203
|
export declare function getHealthyCount(cluster: MySQLCluster): number;
|
|
156
204
|
/** Get overall cluster health status */
|
|
157
205
|
export declare function getClusterHealthStatus(cluster: MySQLCluster): HealthStatus;
|
|
206
|
+
/** Create a topology template */
|
|
207
|
+
export declare function createTopologyTemplate(templateId: string, overrides?: Partial<TopologyTemplate>): TopologyTemplate;
|
|
208
|
+
/** Create cluster metadata */
|
|
209
|
+
export declare function createClusterMetadata(clusterId: string, overrides?: Partial<ClusterMetadata>): ClusterMetadata;
|
|
158
210
|
/** Instance with merged Orchestrator and ProxySQL data */
|
|
159
211
|
export interface MergedInstanceInfo {
|
|
160
212
|
host: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* TypeScript interfaces and enums converted from Python dataclasses.
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.FailureType = exports.FailoverState = exports.AlertSeverity = exports.HealthStatus = exports.InstanceState = exports.InstanceRole = void 0;
|
|
8
|
+
exports.ProvisionStatus = exports.ReplicationMode = exports.FailureType = exports.FailoverState = exports.AlertSeverity = exports.HealthStatus = exports.InstanceState = exports.InstanceRole = void 0;
|
|
9
9
|
exports.createInstanceId = createInstanceId;
|
|
10
10
|
exports.createMySQLInstance = createMySQLInstance;
|
|
11
11
|
exports.createMySQLCluster = createMySQLCluster;
|
|
@@ -16,6 +16,8 @@ exports.isHealthy = isHealthy;
|
|
|
16
16
|
exports.getInstanceCount = getInstanceCount;
|
|
17
17
|
exports.getHealthyCount = getHealthyCount;
|
|
18
18
|
exports.getClusterHealthStatus = getClusterHealthStatus;
|
|
19
|
+
exports.createTopologyTemplate = createTopologyTemplate;
|
|
20
|
+
exports.createClusterMetadata = createClusterMetadata;
|
|
19
21
|
// =============================================================================
|
|
20
22
|
// Enums
|
|
21
23
|
// =============================================================================
|
|
@@ -71,6 +73,21 @@ var FailureType;
|
|
|
71
73
|
FailureType["DISK_FULL"] = "disk_full";
|
|
72
74
|
FailureType["MEMORY_EXHAUSTED"] = "memory_exhausted";
|
|
73
75
|
})(FailureType || (exports.FailureType = FailureType = {}));
|
|
76
|
+
/** Replication mode for cluster templates */
|
|
77
|
+
var ReplicationMode;
|
|
78
|
+
(function (ReplicationMode) {
|
|
79
|
+
ReplicationMode["ASYNC"] = "async";
|
|
80
|
+
ReplicationMode["SEMI_SYNC"] = "semi-sync";
|
|
81
|
+
ReplicationMode["GROUP_REPLICATION"] = "group-replication";
|
|
82
|
+
})(ReplicationMode || (exports.ReplicationMode = ReplicationMode = {}));
|
|
83
|
+
/** Provisioning status for template-based clusters */
|
|
84
|
+
var ProvisionStatus;
|
|
85
|
+
(function (ProvisionStatus) {
|
|
86
|
+
ProvisionStatus["PENDING"] = "pending";
|
|
87
|
+
ProvisionStatus["PROVISIONING"] = "provisioning";
|
|
88
|
+
ProvisionStatus["READY"] = "ready";
|
|
89
|
+
ProvisionStatus["FAILED"] = "failed";
|
|
90
|
+
})(ProvisionStatus || (exports.ProvisionStatus = ProvisionStatus = {}));
|
|
74
91
|
// =============================================================================
|
|
75
92
|
// Helper Functions
|
|
76
93
|
// =============================================================================
|
|
@@ -150,4 +167,31 @@ function getClusterHealthStatus(cluster) {
|
|
|
150
167
|
return HealthStatus.DEGRADED;
|
|
151
168
|
return HealthStatus.UNHEALTHY;
|
|
152
169
|
}
|
|
170
|
+
/** Create a topology template */
|
|
171
|
+
function createTopologyTemplate(templateId, overrides) {
|
|
172
|
+
return {
|
|
173
|
+
templateId,
|
|
174
|
+
name: overrides?.name ?? 'unnamed',
|
|
175
|
+
description: overrides?.description,
|
|
176
|
+
primaryCount: overrides?.primaryCount ?? 1,
|
|
177
|
+
replicaCount: overrides?.replicaCount ?? 2,
|
|
178
|
+
replicationMode: overrides?.replicationMode ?? ReplicationMode.ASYNC,
|
|
179
|
+
settings: overrides?.settings,
|
|
180
|
+
createdAt: overrides?.createdAt ?? new Date(),
|
|
181
|
+
updatedAt: overrides?.updatedAt ?? new Date(),
|
|
182
|
+
};
|
|
183
|
+
}
|
|
184
|
+
/** Create cluster metadata */
|
|
185
|
+
function createClusterMetadata(clusterId, overrides) {
|
|
186
|
+
return {
|
|
187
|
+
clusterId,
|
|
188
|
+
templateId: overrides?.templateId,
|
|
189
|
+
assignedPort: overrides?.assignedPort,
|
|
190
|
+
writerHostgroup: overrides?.writerHostgroup,
|
|
191
|
+
readerHostgroup: overrides?.readerHostgroup,
|
|
192
|
+
provisionStatus: overrides?.provisionStatus ?? ProvisionStatus.PENDING,
|
|
193
|
+
createdAt: overrides?.createdAt ?? new Date(),
|
|
194
|
+
updatedAt: overrides?.updatedAt ?? new Date(),
|
|
195
|
+
};
|
|
196
|
+
}
|
|
153
197
|
//# sourceMappingURL=index.js.map
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/utils/database.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAMnC;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC;AAEzC;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,IAAI,CAAgC;IAE5C;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgC9B;;;OAGG;YACW,gBAAgB;
|
|
1
|
+
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/utils/database.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAMnC;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC;AAEzC;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,IAAI,CAAgC;IAE5C;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAgC9B;;;OAGG;YACW,gBAAgB;IAoK9B;;OAEG;IACG,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAS3E;;OAEG;IACG,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAUjG;;OAEG;IACG,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,OAAO,EAAO,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAUnF;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC;IAOpD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ5B;;OAEG;IACH,WAAW,IAAI,OAAO;CAGvB;AAKD;;GAEG;AACH,wBAAgB,WAAW,IAAI,eAAe,CAK7C;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,eAAe,CAAC,CAM7D"}
|
package/dist/utils/database.js
CHANGED
|
@@ -164,6 +164,46 @@ class DatabaseManager {
|
|
|
164
164
|
INDEX idx_audit_entity (entity_type, entity_id),
|
|
165
165
|
INDEX idx_audit_time (changed_at)
|
|
166
166
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
167
|
+
|
|
168
|
+
-- Topology templates for cluster provisioning
|
|
169
|
+
CREATE TABLE IF NOT EXISTS topology_templates (
|
|
170
|
+
template_id VARCHAR(36) PRIMARY KEY,
|
|
171
|
+
name VARCHAR(64) NOT NULL,
|
|
172
|
+
description TEXT,
|
|
173
|
+
primary_count INT DEFAULT 1,
|
|
174
|
+
replica_count INT DEFAULT 2,
|
|
175
|
+
replication_mode ENUM('async', 'semi-sync', 'group-replication') DEFAULT 'async',
|
|
176
|
+
settings JSON,
|
|
177
|
+
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
178
|
+
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
179
|
+
UNIQUE KEY uk_name (name)
|
|
180
|
+
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
181
|
+
|
|
182
|
+
-- Cluster metadata for provisioned clusters
|
|
183
|
+
CREATE TABLE IF NOT EXISTS cluster_metadata (
|
|
184
|
+
cluster_id VARCHAR(128) PRIMARY KEY,
|
|
185
|
+
template_id VARCHAR(36),
|
|
186
|
+
assigned_port INT,
|
|
187
|
+
writer_hostgroup INT,
|
|
188
|
+
reader_hostgroup INT,
|
|
189
|
+
provision_status ENUM('pending', 'provisioning', 'ready', 'failed') DEFAULT 'pending',
|
|
190
|
+
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
191
|
+
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
192
|
+
FOREIGN KEY (template_id) REFERENCES topology_templates(template_id)
|
|
193
|
+
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
194
|
+
|
|
195
|
+
-- Provisioned instances for template-based clusters
|
|
196
|
+
CREATE TABLE IF NOT EXISTS provisioned_instances (
|
|
197
|
+
id INT AUTO_INCREMENT PRIMARY KEY,
|
|
198
|
+
cluster_id VARCHAR(128) NOT NULL,
|
|
199
|
+
host VARCHAR(255) NOT NULL,
|
|
200
|
+
port INT NOT NULL,
|
|
201
|
+
role ENUM('primary', 'replica') NOT NULL,
|
|
202
|
+
sequence INT NOT NULL,
|
|
203
|
+
provisioned_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
204
|
+
UNIQUE KEY uk_cluster_instance (cluster_id, host, port),
|
|
205
|
+
INDEX idx_cluster (cluster_id)
|
|
206
|
+
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
167
207
|
`;
|
|
168
208
|
const statements = schema.split(';').filter(s => s.trim());
|
|
169
209
|
for (const statement of statements) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/utils/database.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;
|
|
1
|
+
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/utils/database.ts"],"names":[],"mappings":"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"}
|
package/docker/Dockerfile.node
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
# =============================================================================
|
|
5
5
|
# Runtime stage - uses pre-built dist folder
|
|
6
6
|
# =============================================================================
|
|
7
|
-
FROM node:
|
|
7
|
+
FROM node:22-alpine
|
|
8
8
|
|
|
9
9
|
WORKDIR /app
|
|
10
10
|
|