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.
Files changed (69) hide show
  1. package/README.md +110 -260
  2. package/dist/api/schemas/index.d.ts +20 -20
  3. package/dist/app.d.ts.map +1 -1
  4. package/dist/app.js +12 -0
  5. package/dist/app.js.map +1 -1
  6. package/dist/bin/clawsql.js +0 -0
  7. package/dist/cli/commands/clusters.d.ts +1 -1
  8. package/dist/cli/commands/clusters.d.ts.map +1 -1
  9. package/dist/cli/commands/clusters.js +291 -56
  10. package/dist/cli/commands/clusters.js.map +1 -1
  11. package/dist/cli/commands/templates.d.ts +11 -0
  12. package/dist/cli/commands/templates.d.ts.map +1 -0
  13. package/dist/cli/commands/templates.js +206 -0
  14. package/dist/cli/commands/templates.js.map +1 -0
  15. package/dist/cli/formatter.d.ts +24 -0
  16. package/dist/cli/formatter.d.ts.map +1 -1
  17. package/dist/cli/formatter.js +22 -0
  18. package/dist/cli/formatter.js.map +1 -1
  19. package/dist/cli/index.d.ts.map +1 -1
  20. package/dist/cli/index.js +2 -0
  21. package/dist/cli/index.js.map +1 -1
  22. package/dist/cli/raw-input.d.ts +9 -1
  23. package/dist/cli/raw-input.d.ts.map +1 -1
  24. package/dist/cli/raw-input.js +146 -10
  25. package/dist/cli/raw-input.js.map +1 -1
  26. package/dist/cli/repl.d.ts.map +1 -1
  27. package/dist/cli/repl.js +94 -29
  28. package/dist/cli/repl.js.map +1 -1
  29. package/dist/cli/ui/components.d.ts.map +1 -1
  30. package/dist/cli/ui/components.js +21 -5
  31. package/dist/cli/ui/components.js.map +1 -1
  32. package/dist/cli/utils/args.d.ts +25 -0
  33. package/dist/cli/utils/args.d.ts.map +1 -0
  34. package/dist/cli/utils/args.js +51 -0
  35. package/dist/cli/utils/args.js.map +1 -0
  36. package/dist/config/settings.d.ts +38 -6
  37. package/dist/config/settings.d.ts.map +1 -1
  38. package/dist/config/settings.js +8 -0
  39. package/dist/config/settings.js.map +1 -1
  40. package/dist/core/provisioning/cluster-provisioner.d.ts +99 -0
  41. package/dist/core/provisioning/cluster-provisioner.d.ts.map +1 -0
  42. package/dist/core/provisioning/cluster-provisioner.js +415 -0
  43. package/dist/core/provisioning/cluster-provisioner.js.map +1 -0
  44. package/dist/core/provisioning/index.d.ts +12 -0
  45. package/dist/core/provisioning/index.d.ts.map +1 -0
  46. package/dist/core/provisioning/index.js +21 -0
  47. package/dist/core/provisioning/index.js.map +1 -0
  48. package/dist/core/provisioning/predefined-templates.d.ts +43 -0
  49. package/dist/core/provisioning/predefined-templates.d.ts.map +1 -0
  50. package/dist/core/provisioning/predefined-templates.js +117 -0
  51. package/dist/core/provisioning/predefined-templates.js.map +1 -0
  52. package/dist/core/provisioning/template-manager.d.ts +113 -0
  53. package/dist/core/provisioning/template-manager.d.ts.map +1 -0
  54. package/dist/core/provisioning/template-manager.js +274 -0
  55. package/dist/core/provisioning/template-manager.js.map +1 -0
  56. package/dist/core/routing/proxysql-manager.d.ts +17 -0
  57. package/dist/core/routing/proxysql-manager.d.ts.map +1 -1
  58. package/dist/core/routing/proxysql-manager.js +77 -0
  59. package/dist/core/routing/proxysql-manager.js.map +1 -1
  60. package/dist/types/index.d.ts +52 -0
  61. package/dist/types/index.d.ts.map +1 -1
  62. package/dist/types/index.js +45 -1
  63. package/dist/types/index.js.map +1 -1
  64. package/dist/utils/database.d.ts.map +1 -1
  65. package/dist/utils/database.js +40 -0
  66. package/dist/utils/database.js.map +1 -1
  67. package/docker/Dockerfile.allinone +1 -1
  68. package/docker/Dockerfile.node +1 -1
  69. package/package.json +1 -1
@@ -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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"}
@@ -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
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
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;IA4H9B;;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"}
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"}
@@ -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":"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"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/utils/database.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@
9
9
  # - Grafana (visualization)
10
10
  # - Supervisord (process manager)
11
11
 
12
- FROM node:20-slim AS clawsql-builder
12
+ FROM node:22-slim AS clawsql-builder
13
13
 
14
14
  WORKDIR /build
15
15
  COPY package.json package-lock.json* ./
@@ -4,7 +4,7 @@
4
4
  # =============================================================================
5
5
  # Runtime stage - uses pre-built dist folder
6
6
  # =============================================================================
7
- FROM node:20-alpine
7
+ FROM node:22-alpine
8
8
 
9
9
  WORKDIR /app
10
10
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "clawsql",
3
- "version": "0.2.4",
3
+ "version": "0.2.7",
4
4
  "description": "MySQL Cluster Automation and Operations Management System",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",