|
1 | 1 | # Data Migration Execution - Tasks |
2 | 2 |
|
| 3 | +**IMPORTANT**: |
| 4 | +- **Commit changes frequently** throughout this stage to maintain a clean Git history |
| 5 | +- **Use `git -P`** to avoid interactive prompts |
| 6 | +- **Mark tasks as completed** by changing `[ ]` to `[x]` as you finish each task |
| 7 | +- **Commit after each major task completion** with descriptive messages |
| 8 | +- **Update the tasks.md file** itself when marking tasks complete and commit those changes too |
| 9 | +- **Use single working log**: Use `artifacts/stage-07/07_working_log.md` throughout the entire stage (not individual logs per subtask) |
| 10 | +- **DO NOT MODIFY THE CONTENT OF THIS FILE**: Only add a [x] mark to complete the task, for tracking purposes. |
| 11 | +- Consult the `design.md` document for detailed code examples and references on these tasks. |
| 12 | + |
3 | 13 | - [ ] 1. Generate MySQL views for data transformation |
4 | 14 | - [ ] 1.1 Validate migration contract and infrastructure inputs |
5 | 15 | - **INPUT**: Use migrationContract.json from the data modeling stage and deployed infrastructure from infrastructure deployment stage |
|
39 | 49 | - Confirm that MCP servers have proper permissions and can execute required operations |
40 | 50 | - _Requirements: 2.2, 3.3_ |
41 | 51 |
|
| 52 | + - [ ] 2.2 Glue Job generation and prepareation. |
| 53 | + - Use a template based approach `tools/glue_script_template.py` to generate Glue scripts for each table |
| 54 | + - Apply dynamic configuration from migration contract and configuration file. |
| 55 | + - Upload the generated python scripts to S3 using the Glue MCP server |
| 56 | + - Create a job with the previously uploaded file to S3, with the respective parameters ensuring the database connection `mysql-modernizer-connection` is used. |
| 57 | + - Confirm that the target AWS region matches the infrastructure deployment region |
| 58 | + - **CRITICAL**: Ensure AWS region consistency between infrastructure and Glue jobs |
| 59 | + - Validate that config.json file is properly configured with migration contract path, AWS settings, and MySQL discovery parameters |
| 60 | + - Confirm that MCP servers have proper permissions and can execute required operations |
| 61 | + - Repeat this process as many times as required as specified on the `migrationContract.json` |
| 62 | + - _Requirements: 2.2, 3.3_ |
| 63 | + |
42 | 64 | - [ ] 2.3 Monitor migration execution and handle errors |
43 | | - - **CRITICAL**: Monitor the contract-driven migration script execution for comprehensive error handling |
44 | 65 | - Track progress through each phase: MySQL view creation, DynamoDB table creation, Glue job execution |
45 | 66 | - Verify that the script properly handles MySQL connection discovery and database connectivity |
46 | 67 | - Ensure that DynamoDB tables are created with correct schema including GSIs and key structures |
|
126 | 147 | ## Output Validation Checklist |
127 | 148 |
|
128 | 149 | Before marking this stage complete, verify: |
129 | | -- [ ] MySQL views are generated and executed via contract-driven migration script using MCP server |
| 150 | +- [ ] MySQL views are generated and executed using the `tools/generate_mysql_views.py` script and using the MySQL CP server |
130 | 151 | - [ ] MySQL connection is discovered automatically via Data Processing MCP server |
131 | 152 | - [ ] DynamoDB tables are created via MCP server based on migration contract specifications |
132 | 153 | - [ ] AWS Glue ETL jobs are created and executed using contract_driven_migration_glue_mcp.py |
|
0 commit comments