@tamyla/clodo-framework 2.0.19 ā 3.0.2
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/CHANGELOG.md +206 -62
- package/bin/clodo-service.js +32 -56
- package/bin/database/README.md +33 -0
- package/bin/database/deployment-db-manager.js +527 -0
- package/bin/database/enterprise-db-manager.js +736 -0
- package/bin/database/wrangler-d1-manager.js +775 -0
- package/bin/shared/cloudflare/domain-discovery.js +636 -0
- package/bin/shared/cloudflare/domain-manager.js +952 -0
- package/bin/shared/cloudflare/index.js +8 -0
- package/bin/shared/cloudflare/ops.js +359 -0
- package/bin/shared/config/index.js +1 -1
- package/bin/shared/database/connection-manager.js +374 -0
- package/bin/shared/database/index.js +7 -0
- package/bin/shared/database/orchestrator.js +726 -0
- package/bin/shared/deployment/auditor.js +969 -0
- package/bin/shared/deployment/index.js +10 -0
- package/bin/shared/deployment/rollback-manager.js +570 -0
- package/bin/shared/deployment/validator.js +779 -0
- package/bin/shared/index.js +32 -0
- package/bin/shared/monitoring/health-checker.js +484 -0
- package/bin/shared/monitoring/index.js +8 -0
- package/bin/shared/monitoring/memory-manager.js +387 -0
- package/bin/shared/monitoring/production-monitor.js +391 -0
- package/bin/shared/production-tester/api-tester.js +82 -0
- package/bin/shared/production-tester/auth-tester.js +132 -0
- package/bin/shared/production-tester/core.js +197 -0
- package/bin/shared/production-tester/database-tester.js +109 -0
- package/bin/shared/production-tester/index.js +77 -0
- package/bin/shared/production-tester/load-tester.js +131 -0
- package/bin/shared/production-tester/performance-tester.js +103 -0
- package/bin/shared/security/api-token-manager.js +312 -0
- package/bin/shared/security/index.js +8 -0
- package/bin/shared/security/secret-generator.js +937 -0
- package/bin/shared/security/secure-token-manager.js +398 -0
- package/bin/shared/utils/error-recovery.js +225 -0
- package/bin/shared/utils/graceful-shutdown-manager.js +390 -0
- package/bin/shared/utils/index.js +9 -0
- package/bin/shared/utils/interactive-prompts.js +146 -0
- package/bin/shared/utils/interactive-utils.js +530 -0
- package/bin/shared/utils/rate-limiter.js +246 -0
- package/dist/database/database-orchestrator.js +34 -12
- package/dist/deployment/index.js +2 -2
- package/dist/orchestration/multi-domain-orchestrator.js +8 -6
- package/dist/service-management/GenerationEngine.js +76 -28
- package/dist/service-management/ServiceInitializer.js +5 -3
- package/dist/shared/cloudflare/domain-manager.js +1 -1
- package/dist/shared/cloudflare/ops.js +27 -12
- package/dist/shared/config/index.js +1 -1
- package/dist/shared/deployment/index.js +2 -2
- package/dist/shared/security/secret-generator.js +4 -2
- package/dist/shared/utils/error-recovery.js +1 -1
- package/dist/shared/utils/graceful-shutdown-manager.js +4 -3
- package/dist/utils/deployment/secret-generator.js +19 -6
- package/package.json +7 -6
- package/bin/shared/config/customer-cli.js +0 -182
- package/dist/shared/config/customer-cli.js +0 -175
package/CHANGELOG.md
CHANGED
|
@@ -1,105 +1,249 @@
|
|
|
1
|
-
## [
|
|
1
|
+
## [3.0.2](https://github.com/tamylaa/clodo-framework/compare/v3.0.1...v3.0.2) (2025-10-14)
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
### Bug Fixes
|
|
5
5
|
|
|
6
|
-
*
|
|
7
|
-
* Consolidate configuration management and organize documentation ([e3a3d44](https://github.com/tamylaa/clodo-framework/commit/e3a3d448a74b214d75ae669f3a17e3a6ddb36ac4))
|
|
8
|
-
* Resolve ESLint errors in security and config modules ([1080cdb](https://github.com/tamylaa/clodo-framework/commit/1080cdbb69b3ae29158b6af705d8fd376c95da7b))
|
|
6
|
+
* suppress secret audit logging in test/CI environments ([daa58e0](https://github.com/tamylaa/clodo-framework/commit/daa58e013f8c3c37bb251a658b78f011a56dab3f))
|
|
9
7
|
|
|
10
|
-
## [
|
|
8
|
+
## [3.0.1](https://github.com/tamylaa/clodo-framework/compare/v3.0.0...v3.0.1) (2025-10-14)
|
|
11
9
|
|
|
12
10
|
|
|
13
11
|
### Bug Fixes
|
|
14
12
|
|
|
15
|
-
*
|
|
13
|
+
* reset version to 2.0.20 for clean semantic release ([724df16](https://github.com/tamylaa/clodo-framework/commit/724df162d3fdb4a35cfc50a2cc045a714c56ba6f))
|
|
16
14
|
|
|
17
|
-
|
|
15
|
+
# [3.0.0](https://github.com/tamylaa/clodo-framework/compare/v2.0.20...v3.0.0) (2025-10-14)
|
|
18
16
|
|
|
19
17
|
|
|
20
18
|
### Bug Fixes
|
|
21
19
|
|
|
22
|
-
*
|
|
20
|
+
* include all bin/shared files and correct imports to use dist/ ([268b525](https://github.com/tamylaa/clodo-framework/commit/268b5254d269951e78d481840a9a0fbba486c879)), closes [#deploy-v3](https://github.com/tamylaa/clodo-framework/issues/deploy-v3)
|
|
21
|
+
* resolve async logging and migration command issues (v3.0.2) ([0ed0112](https://github.com/tamylaa/clodo-framework/commit/0ed0112b2d26983fbd1329dce88286d4eca6d63b))
|
|
22
|
+
* resolve test failures and add comprehensive validation ([5abcacb](https://github.com/tamylaa/clodo-framework/commit/5abcacb39f97bcf58f92a75a8ed2602381b6c266))
|
|
23
|
+
* use temp directory in generation-engine-unit test for CI/CD compatibility ([a28a923](https://github.com/tamylaa/clodo-framework/commit/a28a92311fa6d8b1c6bd95a354c5e7cd4ada3b48))
|
|
23
24
|
|
|
24
|
-
## [2.0.16](https://github.com/tamylaa/clodo-framework/compare/v2.0.15...v2.0.16) (2025-10-12)
|
|
25
25
|
|
|
26
|
+
### BREAKING CHANGES
|
|
26
27
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
* comprehensive readline state management and stdin restoration ([a0716fe](https://github.com/tamylaa/clodo-framework/commit/a0716fef9a5db8211b851ab7861bf2419f31e7fa))
|
|
28
|
+
* none
|
|
29
|
+
VALIDATION: Dry-run test PASSED with real Cloudflare API integration
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
Validation Reports:
|
|
32
|
+
- PRODUCTION_VALIDATION_REPORT.md - Full validation analysis
|
|
33
|
+
- DEPLOY_COMMAND_VALIDATION.md - Deploy command documentation
|
|
34
|
+
- DRY_RUN_TEST_RESULTS.md - Dry-run test with real API
|
|
35
|
+
- VALIDATION_SUMMARY.md - Executive summary
|
|
32
36
|
|
|
37
|
+
Confidence: 95% - Ready for production deployment
|
|
33
38
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
* improve customer selection UX with number support ([2e10d56](https://github.com/tamylaa/clodo-framework/commit/2e10d562061c478ecc238e1185e2514af453d00e))
|
|
37
|
-
|
|
38
|
-
## [2.0.14](https://github.com/tamylaa/clodo-framework/compare/v2.0.13...v2.0.14) (2025-10-12)
|
|
39
|
+
## [3.0.1](https://github.com/tamylaa/clodo-framework/compare/v3.0.0...v3.0.1) (2025-10-14)
|
|
39
40
|
|
|
40
41
|
|
|
41
42
|
### Bug Fixes
|
|
42
43
|
|
|
43
|
-
*
|
|
44
|
-
* remove require() calls in ESM modules ([a1783f9](https://github.com/tamylaa/clodo-framework/commit/a1783f9c75c59ae8ce9daacbc223ad80b17d61bc))
|
|
44
|
+
* include all bin/shared files and correct imports to use dist/ ([268b525](https://github.com/tamylaa/clodo-framework/commit/268b5254d269951e78d481840a9a0fbba486c879)), closes [#deploy-v3](https://github.com/tamylaa/clodo-framework/issues/deploy-v3)
|
|
45
45
|
|
|
46
|
-
|
|
46
|
+
# [3.0.0](https://github.com/tamylaa/clodo-framework/compare/v2.0.20...v3.0.0) (2025-10-14)
|
|
47
47
|
|
|
48
48
|
|
|
49
49
|
### Bug Fixes
|
|
50
50
|
|
|
51
|
-
*
|
|
52
|
-
|
|
53
|
-
## [2.0.12](https://github.com/tamylaa/clodo-framework/compare/v2.0.11...v2.0.12) (2025-10-12)
|
|
54
|
-
|
|
51
|
+
* resolve test failures and add comprehensive validation ([5abcacb](https://github.com/tamylaa/clodo-framework/commit/5abcacb39f97bcf58f92a75a8ed2602381b6c266))
|
|
52
|
+
* use temp directory in generation-engine-unit test for CI/CD compatibility ([a28a923](https://github.com/tamylaa/clodo-framework/commit/a28a92311fa6d8b1c6bd95a354c5e7cd4ada3b48))
|
|
55
53
|
|
|
56
|
-
### Bug Fixes
|
|
57
|
-
|
|
58
|
-
* correct zone details property access in auto-discovery ([bfca8af](https://github.com/tamylaa/clodo-framework/commit/bfca8af21a28e96e3fa8809d38de997982723d5a))
|
|
59
54
|
|
|
60
|
-
|
|
55
|
+
### BREAKING CHANGES
|
|
61
56
|
|
|
57
|
+
* none
|
|
58
|
+
VALIDATION: Dry-run test PASSED with real Cloudflare API integration
|
|
62
59
|
|
|
63
|
-
|
|
60
|
+
Validation Reports:
|
|
61
|
+
- PRODUCTION_VALIDATION_REPORT.md - Full validation analysis
|
|
62
|
+
- DEPLOY_COMMAND_VALIDATION.md - Deploy command documentation
|
|
63
|
+
- DRY_RUN_TEST_RESULTS.md - Dry-run test with real API
|
|
64
|
+
- VALIDATION_SUMMARY.md - Executive summary
|
|
64
65
|
|
|
65
|
-
|
|
66
|
+
Confidence: 95% - Ready for production deployment
|
|
66
67
|
|
|
67
|
-
## [2.0.
|
|
68
|
+
## [2.0.20](https://github.com/tamylaa/clodo-framework/compare/v2.0.19...v2.0.20) (2025-10-13)
|
|
68
69
|
|
|
69
70
|
|
|
70
71
|
### Bug Fixes
|
|
71
72
|
|
|
72
|
-
*
|
|
73
|
-
|
|
74
|
-
## [2.0.9](https://github.com/tamylaa/clodo-framework/compare/v2.0.8...v2.0.9) (2025-10-12)
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
### Bug Fixes
|
|
78
|
-
|
|
79
|
-
* re-release v2.0.8 features that were missing from npm package ([33cf712](https://github.com/tamylaa/clodo-framework/commit/33cf71267c07610e04bd8c752db4385c6f5ca603))
|
|
80
|
-
|
|
81
|
-
## [2.0.8](https://github.com/tamylaa/clodo-framework/compare/v2.0.7...v2.0.8) (2025-10-12)
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
### Bug Fixes
|
|
85
|
-
|
|
86
|
-
* clean up skipped security validation test with proper TODO ([722afbe](https://github.com/tamylaa/clodo-framework/commit/722afbe056be6f8ccb623acbbd3ab9ac4ce75caa))
|
|
87
|
-
* Enhanced customer config, CloudflareAPI utility, and code consolidation ([447ed9b](https://github.com/tamylaa/clodo-framework/commit/447ed9b5d8a2bb806386fc334e2e8bf4efeff43b))
|
|
88
|
-
* implement missing deployment phase methods in MultiDomainOrchestrator ([b0cb1e8](https://github.com/tamylaa/clodo-framework/commit/b0cb1e828679df61d9ebde2551599f47ddeb20d2))
|
|
89
|
-
* integrate CloudflareAPI auto-discovery and cleanup duplicates ([8166d18](https://github.com/tamylaa/clodo-framework/commit/8166d189bbe1e5b78db8f24d56221f0e18e72021))
|
|
90
|
-
* resolve ESLint no-undef errors in cloudflare index.js ([1a2bb7f](https://github.com/tamylaa/clodo-framework/commit/1a2bb7fa175bab142f3d5be451cb44ef1b9d8747))
|
|
91
|
-
|
|
92
|
-
## [2.0.8](https://github.com/tamylaa/clodo-framework/compare/v2.0.7...v2.0.8) (2025-10-12)
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
### Bug Fixes
|
|
96
|
-
|
|
97
|
-
* clean up skipped security validation test with proper TODO ([722afbe](https://github.com/tamylaa/clodo-framework/commit/722afbe056be6f8ccb623acbbd3ab9ac4ce75caa))
|
|
98
|
-
* Enhanced customer config, CloudflareAPI utility, and code consolidation ([447ed9b](https://github.com/tamylaa/clodo-framework/commit/447ed9b5d8a2bb806386fc334e2e8bf4efeff43b))
|
|
99
|
-
* implement missing deployment phase methods in MultiDomainOrchestrator ([b0cb1e8](https://github.com/tamylaa/clodo-framework/commit/b0cb1e828679df61d9ebde2551599f47ddeb20d2))
|
|
100
|
-
* integrate CloudflareAPI auto-discovery and cleanup duplicates ([8166d18](https://github.com/tamylaa/clodo-framework/commit/8166d189bbe1e5b78db8f24d56221f0e18e72021))
|
|
101
|
-
* resolve ESLint no-undef errors in cloudflare index.js ([1a2bb7f](https://github.com/tamylaa/clodo-framework/commit/1a2bb7fa175bab142f3d5be451cb44ef1b9d8747))
|
|
73
|
+
* Complete consolidation cleanup - fix all bin file imports ([4132a2c](https://github.com/tamylaa/clodo-framework/commit/4132a2c0878df84ccc0bd78c6964657810d1f4dc))
|
|
102
74
|
|
|
75
|
+
## [2.0.19](https://github.com/tamylaa/clodo-framework/compare/v2.0.18...v2.0.19) (2025-10-12)
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
### Bug Fixes
|
|
79
|
+
|
|
80
|
+
* Add comprehensive deployment configuration implementation status ([025fe82](https://github.com/tamylaa/clodo-framework/commit/025fe821a76ba9ac8cb87d14f2a116a5e8e58c43))
|
|
81
|
+
* Consolidate configuration management and organize documentation ([e3a3d44](https://github.com/tamylaa/clodo-framework/commit/e3a3d448a74b214d75ae669f3a17e3a6ddb36ac4))
|
|
82
|
+
* Resolve ESLint errors in security and config modules ([1080cdb](https://github.com/tamylaa/clodo-framework/commit/1080cdbb69b3ae29158b6af705d8fd376c95da7b))
|
|
83
|
+
* Complete consolidation cleanup - fix all bin file imports ([4132a2c](https://github.com/tamylaa/clodo-framework/commit/4132a2c))
|
|
84
|
+
|
|
85
|
+
### BREAKING CHANGES
|
|
86
|
+
|
|
87
|
+
**This release includes breaking changes due to configuration consolidation. Please review the migration guide below.**
|
|
88
|
+
|
|
89
|
+
#### Removed Package Exports:
|
|
90
|
+
- `@tamyla/clodo-framework/config/customer-loader` ā **Use** `@tamyla/clodo-framework/utils/config` instead
|
|
91
|
+
- `@tamyla/clodo-framework/config/cli` ā **Deprecated** (no direct replacement)
|
|
92
|
+
|
|
93
|
+
#### Removed CLI Commands:
|
|
94
|
+
- `clodo-customer-config` ā **Use** `clodo-service deploy` instead
|
|
95
|
+
|
|
96
|
+
#### Migration Guide:
|
|
97
|
+
|
|
98
|
+
**For External Package Users:**
|
|
99
|
+
```javascript
|
|
100
|
+
// OLD (v2.0.18 and earlier - BROKEN in v2.0.19+)
|
|
101
|
+
import { CustomerConfigLoader } from '@tamyla/clodo-framework/config/customer-loader';
|
|
102
|
+
const loader = new CustomerConfigLoader();
|
|
103
|
+
const config = loader.loadConfig('customer', 'production');
|
|
104
|
+
|
|
105
|
+
// NEW (v2.0.19+)
|
|
106
|
+
import { UnifiedConfigManager } from '@tamyla/clodo-framework/utils/config';
|
|
107
|
+
const manager = new UnifiedConfigManager();
|
|
108
|
+
const config = manager.loadCustomerConfig('customer', 'production');
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
**Method Mappings:**
|
|
112
|
+
- `CustomerConfigLoader.loadConfig(customer, env)` ā `UnifiedConfigManager.loadCustomerConfig(customer, env)`
|
|
113
|
+
- `CustomerConfigLoader.parseToStandardFormat(config)` ā `UnifiedConfigManager.parseToStandardFormat(config)`
|
|
114
|
+
- `ConfigPersistenceManager.configExists(customer, env)` ā `UnifiedConfigManager.configExists(customer, env)`
|
|
115
|
+
- `ConfigPersistenceManager.displayCustomerConfig(customer, env)` ā `UnifiedConfigManager.displayCustomerConfig(customer, env)`
|
|
116
|
+
- `ConfigPersistenceManager.getConfiguredCustomers()` ā `UnifiedConfigManager.listCustomers()`
|
|
117
|
+
- `ConfigPersistenceManager.saveDeploymentConfig(customer, env, config)` ā `UnifiedConfigManager.saveCustomerConfig(customer, env, config)`
|
|
118
|
+
|
|
119
|
+
**For CLI Users:**
|
|
120
|
+
```bash
|
|
121
|
+
# OLD (v2.0.18 and earlier)
|
|
122
|
+
clodo-customer-config create my-customer
|
|
123
|
+
|
|
124
|
+
# NEW (v2.0.19+)
|
|
125
|
+
clodo-service deploy
|
|
126
|
+
# Then select customer interactively
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
#### What Was Consolidated:
|
|
130
|
+
- **Deleted files** (backed up in `backups/pre-consolidation-cleanup_2025-10-12_21-05-59/`):
|
|
131
|
+
- `src/config/customer-config-loader.js` (1,849 bytes)
|
|
132
|
+
- `src/config/CustomerConfigCLI.js` (14,892 bytes)
|
|
133
|
+
- `src/utils/deployment/ConfigurationManager.js` (9,235 bytes)
|
|
134
|
+
- `src/utils/deployment/ConfigMutator.js` (8,342 bytes)
|
|
135
|
+
- `src/utils/deployment/DeploymentManager.js` (6,819 bytes)
|
|
136
|
+
- `src/utils/deployment/config-persistence.js` (6,656 bytes)
|
|
137
|
+
- `bin/shared/config/customer-cli.js` (deprecated CLI wrapper)
|
|
138
|
+
|
|
139
|
+
- **New consolidated files**:
|
|
140
|
+
- `src/utils/config/unified-config-manager.js` (493 lines) - All customer config operations
|
|
141
|
+
- `src/utils/config/wrangler-config-manager.js` (392 lines) - All wrangler.toml operations
|
|
142
|
+
|
|
143
|
+
#### Why This Change?
|
|
144
|
+
- **Reduced Complexity**: 47,793 bytes of duplicate code consolidated into 885 lines
|
|
145
|
+
- **Better Maintainability**: Single source of truth for config operations
|
|
146
|
+
- **Improved Testing**: Consolidated logic = easier to test
|
|
147
|
+
- **Clearer Architecture**: Documented 3-layer config system (wrangler.toml ā customer .env ā domains.js)
|
|
148
|
+
|
|
149
|
+
#### Documentation:
|
|
150
|
+
- See `docs/DOMAIN_CONFIGURATION_ARCHITECTURE.md` for complete architecture guide (28 pages)
|
|
151
|
+
- See `docs/CONSOLIDATION_IMPACT_ANALYSIS.md` for detailed impact analysis
|
|
152
|
+
- See `docs/DEPLOYMENT_CONFIGURATION_STATUS.md` for implementation proof
|
|
153
|
+
|
|
154
|
+
## [2.0.18](https://github.com/tamylaa/clodo-framework/compare/v2.0.17...v2.0.18) (2025-10-12)
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
### Bug Fixes
|
|
158
|
+
|
|
159
|
+
* **deployment:** Critical deployment fixes - migrations, worker deployment, status tracking ([23c07e9](https://github.com/tamylaa/clodo-framework/commit/23c07e9a68fa4eb52ccd0df9421eff7d91919cb1)), closes [#2](https://github.com/tamylaa/clodo-framework/issues/2) [#3](https://github.com/tamylaa/clodo-framework/issues/3) [#4](https://github.com/tamylaa/clodo-framework/issues/4)
|
|
160
|
+
|
|
161
|
+
## [2.0.17](https://github.com/tamylaa/clodo-framework/compare/v2.0.16...v2.0.17) (2025-10-12)
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
### Bug Fixes
|
|
165
|
+
|
|
166
|
+
* use ConfigurationValidator as static class, not instance ([12caaeb](https://github.com/tamylaa/clodo-framework/commit/12caaeba17426239f98dacd2fdb36ac45a7a496b))
|
|
167
|
+
|
|
168
|
+
## [2.0.16](https://github.com/tamylaa/clodo-framework/compare/v2.0.15...v2.0.16) (2025-10-12)
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
### Bug Fixes
|
|
172
|
+
|
|
173
|
+
* comprehensive readline state management and stdin restoration ([a0716fe](https://github.com/tamylaa/clodo-framework/commit/a0716fef9a5db8211b851ab7861bf2419f31e7fa))
|
|
174
|
+
|
|
175
|
+
## [2.0.15](https://github.com/tamylaa/clodo-framework/compare/v2.0.14...v2.0.15) (2025-10-12)
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
### Bug Fixes
|
|
179
|
+
|
|
180
|
+
* improve customer selection UX with number support ([2e10d56](https://github.com/tamylaa/clodo-framework/commit/2e10d562061c478ecc238e1185e2514af453d00e))
|
|
181
|
+
|
|
182
|
+
## [2.0.14](https://github.com/tamylaa/clodo-framework/compare/v2.0.13...v2.0.14) (2025-10-12)
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
### Bug Fixes
|
|
186
|
+
|
|
187
|
+
* add missing readdirSync import in config-persistence.js ([767efc4](https://github.com/tamylaa/clodo-framework/commit/767efc4aa839c7afa592fe3a1df21b62870bdf23))
|
|
188
|
+
* remove require() calls in ESM modules ([a1783f9](https://github.com/tamylaa/clodo-framework/commit/a1783f9c75c59ae8ce9daacbc223ad80b17d61bc))
|
|
189
|
+
|
|
190
|
+
## [2.0.13](https://github.com/tamylaa/clodo-framework/compare/v2.0.12...v2.0.13) (2025-10-12)
|
|
191
|
+
|
|
192
|
+
|
|
193
|
+
### Bug Fixes
|
|
194
|
+
|
|
195
|
+
* comprehensive deployment and architectural integration fixes ([2a9db26](https://github.com/tamylaa/clodo-framework/commit/2a9db264c0d60f1669597885105cc1fdc0cc2e87))
|
|
196
|
+
|
|
197
|
+
## [2.0.12](https://github.com/tamylaa/clodo-framework/compare/v2.0.11...v2.0.12) (2025-10-12)
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
### Bug Fixes
|
|
201
|
+
|
|
202
|
+
* correct zone details property access in auto-discovery ([bfca8af](https://github.com/tamylaa/clodo-framework/commit/bfca8af21a28e96e3fa8809d38de997982723d5a))
|
|
203
|
+
|
|
204
|
+
## [2.0.11](https://github.com/tamylaa/clodo-framework/compare/v2.0.10...v2.0.11) (2025-10-12)
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
### Bug Fixes
|
|
208
|
+
|
|
209
|
+
* correct domain selection parsing in auto-discovery ([ea80443](https://github.com/tamylaa/clodo-framework/commit/ea80443bf9968d592f066e7d5d13ee47d6fde889))
|
|
210
|
+
|
|
211
|
+
## [2.0.10](https://github.com/tamylaa/clodo-framework/compare/v2.0.9...v2.0.10) (2025-10-12)
|
|
212
|
+
|
|
213
|
+
|
|
214
|
+
### Bug Fixes
|
|
215
|
+
|
|
216
|
+
* move interactive-prompts to src/ to fix published package imports ([94fc31c](https://github.com/tamylaa/clodo-framework/commit/94fc31c0afa91c52f2073b3ab9f766693c5f68e0))
|
|
217
|
+
|
|
218
|
+
## [2.0.9](https://github.com/tamylaa/clodo-framework/compare/v2.0.8...v2.0.9) (2025-10-12)
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
### Bug Fixes
|
|
222
|
+
|
|
223
|
+
* re-release v2.0.8 features that were missing from npm package ([33cf712](https://github.com/tamylaa/clodo-framework/commit/33cf71267c07610e04bd8c752db4385c6f5ca603))
|
|
224
|
+
|
|
225
|
+
## [2.0.8](https://github.com/tamylaa/clodo-framework/compare/v2.0.7...v2.0.8) (2025-10-12)
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
### Bug Fixes
|
|
229
|
+
|
|
230
|
+
* clean up skipped security validation test with proper TODO ([722afbe](https://github.com/tamylaa/clodo-framework/commit/722afbe056be6f8ccb623acbbd3ab9ac4ce75caa))
|
|
231
|
+
* Enhanced customer config, CloudflareAPI utility, and code consolidation ([447ed9b](https://github.com/tamylaa/clodo-framework/commit/447ed9b5d8a2bb806386fc334e2e8bf4efeff43b))
|
|
232
|
+
* implement missing deployment phase methods in MultiDomainOrchestrator ([b0cb1e8](https://github.com/tamylaa/clodo-framework/commit/b0cb1e828679df61d9ebde2551599f47ddeb20d2))
|
|
233
|
+
* integrate CloudflareAPI auto-discovery and cleanup duplicates ([8166d18](https://github.com/tamylaa/clodo-framework/commit/8166d189bbe1e5b78db8f24d56221f0e18e72021))
|
|
234
|
+
* resolve ESLint no-undef errors in cloudflare index.js ([1a2bb7f](https://github.com/tamylaa/clodo-framework/commit/1a2bb7fa175bab142f3d5be451cb44ef1b9d8747))
|
|
235
|
+
|
|
236
|
+
## [2.0.8](https://github.com/tamylaa/clodo-framework/compare/v2.0.7...v2.0.8) (2025-10-12)
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
### Bug Fixes
|
|
240
|
+
|
|
241
|
+
* clean up skipped security validation test with proper TODO ([722afbe](https://github.com/tamylaa/clodo-framework/commit/722afbe056be6f8ccb623acbbd3ab9ac4ce75caa))
|
|
242
|
+
* Enhanced customer config, CloudflareAPI utility, and code consolidation ([447ed9b](https://github.com/tamylaa/clodo-framework/commit/447ed9b5d8a2bb806386fc334e2e8bf4efeff43b))
|
|
243
|
+
* implement missing deployment phase methods in MultiDomainOrchestrator ([b0cb1e8](https://github.com/tamylaa/clodo-framework/commit/b0cb1e828679df61d9ebde2551599f47ddeb20d2))
|
|
244
|
+
* integrate CloudflareAPI auto-discovery and cleanup duplicates ([8166d18](https://github.com/tamylaa/clodo-framework/commit/8166d189bbe1e5b78db8f24d56221f0e18e72021))
|
|
245
|
+
* resolve ESLint no-undef errors in cloudflare index.js ([1a2bb7f](https://github.com/tamylaa/clodo-framework/commit/1a2bb7fa175bab142f3d5be451cb44ef1b9d8747))
|
|
246
|
+
|
|
103
247
|
## [2.0.7](https://github.com/tamylaa/clodo-framework/compare/v2.0.6...v2.0.7) (2025-10-12)
|
|
104
248
|
|
|
105
249
|
|
package/bin/clodo-service.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
1
|
+
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Clodo Framework - Unified Three-Tier Service Management CLI
|
|
@@ -428,17 +428,15 @@ program
|
|
|
428
428
|
try {
|
|
429
429
|
// Use existing reusable components
|
|
430
430
|
const { InputCollector } = await import('../dist/service-management/InputCollector.js');
|
|
431
|
-
const {
|
|
431
|
+
const { UnifiedConfigManager } = await import('../dist/utils/config/unified-config-manager.js');
|
|
432
432
|
const { ConfirmationHandler } = await import('../dist/service-management/handlers/ConfirmationHandler.js');
|
|
433
433
|
const { MultiDomainOrchestrator } = await import('../dist/orchestration/multi-domain-orchestrator.js');
|
|
434
|
-
const { ConfigPersistenceManager } = await import('../dist/utils/deployment/config-persistence.js');
|
|
435
434
|
|
|
436
435
|
console.log(chalk.cyan('\nš Clodo Framework Deployment'));
|
|
437
436
|
console.log(chalk.white('Using Three-Tier Input Architecture\n'));
|
|
438
437
|
|
|
439
438
|
const isInteractive = options.interactive && !options.nonInteractive;
|
|
440
|
-
const
|
|
441
|
-
const configPersistence = new ConfigPersistenceManager();
|
|
439
|
+
const configManager = new UnifiedConfigManager();
|
|
442
440
|
const inputCollector = new InputCollector({ interactive: isInteractive });
|
|
443
441
|
const confirmationHandler = new ConfirmationHandler({ interactive: isInteractive });
|
|
444
442
|
|
|
@@ -446,74 +444,50 @@ program
|
|
|
446
444
|
let source = 'interactive';
|
|
447
445
|
|
|
448
446
|
try {
|
|
449
|
-
// Try
|
|
447
|
+
// Try UnifiedConfigManager to load existing config
|
|
450
448
|
let storedConfig = null;
|
|
451
449
|
|
|
452
450
|
if (options.customer && options.env) {
|
|
453
|
-
// Check
|
|
454
|
-
if (
|
|
451
|
+
// Check UnifiedConfigManager for existing config
|
|
452
|
+
if (configManager.configExists(options.customer, options.env)) {
|
|
455
453
|
console.log(chalk.green(`ā
Found existing configuration for ${options.customer}/${options.env}\n`));
|
|
456
|
-
|
|
454
|
+
configManager.displayCustomerConfig(options.customer, options.env);
|
|
457
455
|
|
|
458
456
|
if (!isInteractive) {
|
|
459
457
|
// Non-interactive: auto-load the config
|
|
460
|
-
|
|
461
|
-
storedConfig
|
|
462
|
-
|
|
463
|
-
|
|
458
|
+
storedConfig = configManager.loadCustomerConfig(options.customer, options.env);
|
|
459
|
+
if (storedConfig) {
|
|
460
|
+
coreInputs = storedConfig;
|
|
461
|
+
source = 'stored-config';
|
|
462
|
+
}
|
|
464
463
|
} else {
|
|
465
464
|
// Interactive: ask if they want to use it
|
|
466
465
|
const useExisting = await inputCollector.question('\n š” Use existing configuration? (Y/n): ');
|
|
467
466
|
|
|
468
467
|
if (useExisting.toLowerCase() !== 'n') {
|
|
469
|
-
|
|
470
|
-
storedConfig
|
|
471
|
-
|
|
472
|
-
|
|
468
|
+
storedConfig = configManager.loadCustomerConfig(options.customer, options.env);
|
|
469
|
+
if (storedConfig) {
|
|
470
|
+
coreInputs = storedConfig;
|
|
471
|
+
source = 'stored-config';
|
|
472
|
+
}
|
|
473
473
|
} else {
|
|
474
474
|
console.log(chalk.white('\n š Collecting new configuration...\n'));
|
|
475
475
|
}
|
|
476
476
|
}
|
|
477
477
|
} else {
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
if (storedConfig) {
|
|
482
|
-
source = 'stored-config';
|
|
483
|
-
console.log(chalk.cyan('š Found Existing Configuration (legacy)\n'));
|
|
484
|
-
configLoader.displayConfig(storedConfig.parsed);
|
|
485
|
-
|
|
486
|
-
if (!isInteractive) {
|
|
487
|
-
// Non-interactive: use stored config as-is
|
|
488
|
-
coreInputs = storedConfig.parsed;
|
|
489
|
-
console.log(chalk.green('\nā
Using stored configuration (non-interactive mode)\n'));
|
|
490
|
-
} else {
|
|
491
|
-
// Interactive: ask to confirm or re-collect
|
|
492
|
-
const useStored = await inputCollector.question('\nUse this configuration? (Y/n): ');
|
|
493
|
-
|
|
494
|
-
if (useStored.toLowerCase() !== 'n') {
|
|
495
|
-
coreInputs = storedConfig.parsed;
|
|
496
|
-
console.log(chalk.green('\nā
Using stored configuration\n'));
|
|
497
|
-
} else {
|
|
498
|
-
console.log(chalk.white('\nCollecting new configuration...\n'));
|
|
499
|
-
source = 'interactive';
|
|
500
|
-
}
|
|
501
|
-
}
|
|
502
|
-
} else {
|
|
503
|
-
console.log(chalk.yellow(`ā ļø No configuration found for ${options.customer}/${options.env}`));
|
|
504
|
-
console.log(chalk.white('Collecting inputs interactively...\n'));
|
|
505
|
-
}
|
|
478
|
+
console.log(chalk.yellow(`ā ļø No configuration found for ${options.customer}/${options.env}`));
|
|
479
|
+
console.log(chalk.white('Collecting inputs interactively...\n'));
|
|
506
480
|
}
|
|
507
481
|
|
|
508
|
-
// Use stored config if we found it
|
|
482
|
+
// Use stored config if we found it and haven't collected inputs yet
|
|
509
483
|
if (storedConfig && !coreInputs.cloudflareAccountId) {
|
|
510
|
-
coreInputs = storedConfig
|
|
484
|
+
coreInputs = storedConfig;
|
|
511
485
|
source = 'stored-config';
|
|
512
486
|
console.log(chalk.green('\nā
Using stored configuration\n'));
|
|
513
487
|
}
|
|
514
488
|
} else if (!options.customer) {
|
|
515
489
|
// Show available customers to help user
|
|
516
|
-
const customers =
|
|
490
|
+
const customers = configManager.listCustomers();
|
|
517
491
|
if (customers.length > 0) {
|
|
518
492
|
console.log(chalk.cyan('š” Configured customers:'));
|
|
519
493
|
customers.forEach((customer, index) => {
|
|
@@ -530,7 +504,7 @@ program
|
|
|
530
504
|
// Collect basic info with smart customer selection
|
|
531
505
|
let customer = options.customer;
|
|
532
506
|
if (!customer) {
|
|
533
|
-
const customers =
|
|
507
|
+
const customers = configManager.listCustomers();
|
|
534
508
|
if (customers.length > 0) {
|
|
535
509
|
const selection = await inputCollector.question('Select customer (enter number or name): ');
|
|
536
510
|
|
|
@@ -650,13 +624,15 @@ program
|
|
|
650
624
|
try {
|
|
651
625
|
console.log(chalk.cyan('\nš¾ Saving deployment configuration...'));
|
|
652
626
|
|
|
653
|
-
const configFile = await
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
627
|
+
const configFile = await configManager.saveCustomerConfig(
|
|
628
|
+
coreInputs.customer,
|
|
629
|
+
coreInputs.environment,
|
|
630
|
+
{
|
|
631
|
+
coreInputs,
|
|
632
|
+
confirmations,
|
|
633
|
+
result
|
|
634
|
+
}
|
|
635
|
+
);
|
|
660
636
|
|
|
661
637
|
console.log(chalk.green(' ā
Configuration saved successfully!'));
|
|
662
638
|
console.log(chalk.gray(` š File: ${configFile}`));
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Database Tools
|
|
2
|
+
|
|
3
|
+
Database management and operations tools for Clodo Framework services.
|
|
4
|
+
|
|
5
|
+
## Tools
|
|
6
|
+
|
|
7
|
+
### enterprise-db-manager.js
|
|
8
|
+
Enterprise database management CLI for Cloudflare D1 and other databases.
|
|
9
|
+
|
|
10
|
+
**Features:**
|
|
11
|
+
- Multi-database orchestration
|
|
12
|
+
- Schema management and migrations
|
|
13
|
+
- Backup and restore operations
|
|
14
|
+
- Performance monitoring and optimization
|
|
15
|
+
- Connection pooling and management
|
|
16
|
+
- Security and access control
|
|
17
|
+
- Audit logging and compliance
|
|
18
|
+
|
|
19
|
+
**Usage:**
|
|
20
|
+
```bash
|
|
21
|
+
# Database operations
|
|
22
|
+
node bin/database/enterprise-db-manager.js migrate --service my-service
|
|
23
|
+
node bin/database/enterprise-db-manager.js backup --database my-db
|
|
24
|
+
node bin/database/enterprise-db-manager.js monitor --service my-service
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
**Commands:**
|
|
28
|
+
- `migrate` - Run database migrations
|
|
29
|
+
- `backup` - Create database backups
|
|
30
|
+
- `restore` - Restore from backups
|
|
31
|
+
- `monitor` - Monitor database performance
|
|
32
|
+
- `schema` - Manage database schemas
|
|
33
|
+
- `connections` - Manage database connections
|