# idesigner-web
iDesigner Web Laravel Application




# Migration Handling Strategy (Dev, QA, Staging, Prod)

- In Dev and QA, all current migration scripts from `database/migrations/` will be moved to `database/devqa_only/`.
- All new migration scripts will continue to be placed in `database/migrations/`.
- The existing migration scripts in `database/migrations/` will be deleted from Stage and Prod environments.
- A `.gitattributes` rule `/database/devqa_only/* merge=ours` will be hotfixed in Stage and Prod to prevent merging the `devqa_only` folder from QA/Dev.
- This `.gitattributes` rule ensures `devqa_only` scripts are excluded during merges from QA → Stage and Stage → Prod.
- In Jenkins builds for QA and Dev, commands will run migrations from both `database/devqa_only/` and `database/migrations/` (this is the default path).
- In Jenkins builds for Stage and Prod, only the default Laravel migration command targeting the `database/migrations/` path will be executed.
- In new migration files, We will add environment checks to control what runs in each environment. In Jenkins, we’ll set the appropriate environment so the correct migration logic runs for Dev, QA, Stage, or Prod.
