097e11be1b
Reference guides (Sequelize model methods, Swagger) and migration reports from the MongoDB-to-MySQL and domain-based route structure migrations.
112 lines
4.8 KiB
Markdown
112 lines
4.8 KiB
Markdown
|
|
╔════════════════════════════════════════════════════════════════════════════╗
|
|
║ MIGRATION SUCCESSFULLY COMPLETED ║
|
|
╚════════════════════════════════════════════════════════════════════════════╝
|
|
|
|
NEW API STRUCTURE:
|
|
├── /api/skydive/* ← Skydiving features (jumps, aeronefs, dropzones, etc.)
|
|
├── /api/cms/* ← Content management (articles, tags, comments, etc.)
|
|
└── /api/herowars/* ← Game features (clans, members, raids, etc.)
|
|
|
|
WHAT WAS CHANGED:
|
|
✓ Routes directory: v1/v2/v3 → domain-based structure
|
|
✓ Route definitions: Updated all index.js files
|
|
✓ Swagger YAML: Updated path prefixes to new domains
|
|
✓ Postman collection: Updated endpoint URLs
|
|
|
|
FILES MIGRATED:
|
|
✓ Skydive domain (8 route files):
|
|
- aeronefs.js, applications.js, canopies.js, dropzones.js
|
|
- jumps.js, pages.js, profiles.js, qcm.js
|
|
|
|
✓ CMS domain (8 route files):
|
|
- articles.routes.js, comments.routes.js, product.routes.js
|
|
- products.routes.js, profiles.routes.js, tags.routes.js, user.routes.js
|
|
|
|
✓ Hero Wars domain (3 route files):
|
|
- clans.routes.js, members.routes.js, herowars.routes.js
|
|
|
|
TESTING INSTRUCTIONS:
|
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
|
|
1. Start the API server:
|
|
npm run local
|
|
|
|
2. In another terminal, verify Swagger is updated:
|
|
curl http://localhost:3200/api-docs
|
|
|
|
3. Test a sample endpoint:
|
|
curl http://localhost:3200/api/skydive/jumps
|
|
curl http://localhost:3200/api/cms/articles
|
|
curl http://localhost:3200/api/herowars/clans
|
|
|
|
FRONTEND UPDATES REQUIRED:
|
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
|
|
In your Angular frontend (adastra_app):
|
|
|
|
1. Update environment files:
|
|
src/environments/environment.ts
|
|
src/environments/environment.development.ts
|
|
src/environments/environment.local.ts
|
|
|
|
Replace:
|
|
- apiUrl: '/api/v1' → apiUrl: '/api/skydive'
|
|
- cmUrl: '/api/v2' → cmUrl: '/api/cms'
|
|
- hwUrl: '/api/v3' → hwUrl: '/api/herowars'
|
|
|
|
2. Update API service calls:
|
|
// Before:
|
|
http.get('/api/v1/jumps')
|
|
http.get('/api/v2/articles')
|
|
http.get('/api/v3/clans')
|
|
|
|
// After:
|
|
http.get('/api/skydive/jumps')
|
|
http.get('/api/cms/articles')
|
|
http.get('/api/herowars/clans')
|
|
|
|
3. Search & replace in your services:
|
|
sed -i 's|/api/v1/|/api/skydive/|g' src/**/*.ts
|
|
sed -i 's|/api/v2/|/api/cms/|g' src/**/*.ts
|
|
sed -i 's|/api/v3/|/api/herowars/|g' src/**/*.ts
|
|
|
|
GIT OPERATIONS:
|
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
|
|
View migration commits:
|
|
git log --oneline -5
|
|
|
|
If needed, view detailed changes:
|
|
git show HEAD
|
|
|
|
Push to remote:
|
|
git push origin develop
|
|
|
|
ROLLBACK (if issues):
|
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
|
|
If you need to rollback:
|
|
git reset --hard HEAD~2
|
|
|
|
(Adjust the number of commits based on history)
|
|
|
|
ADDITIONAL RESOURCES:
|
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
|
|
Documentation files created:
|
|
- MIGRATION_REPORT.md: Detailed migration information
|
|
- MIGRATION_SWAGGER_TODO.md: Swagger update notes
|
|
- POST_MIGRATION_CHECKLIST.md: Verification checklist
|
|
|
|
Scripts created:
|
|
- scripts/migrate-to-domain-structure.js: Main migration script
|
|
- scripts/update-references-post-migration.js: Post-migration updates
|
|
- scripts/finalize-migration.js: Cleanup and testing
|
|
|
|
═════════════════════════════════════════════════════════════════════════════
|
|
|
|
✓ Migration is complete! Follow the testing instructions above.
|
|
|
|
═════════════════════════════════════════════════════════════════════════════
|