0

deployer을 사용하여 Symfony 3 애플리케이션을 구현했습니다. 또한 Doctrine Migrations을 사용하여 데이터베이스를 마이그레이션하고 있습니다.롤백 doctrine : Deployer로 마이그레이션

나는 symfony3 recipe을 사용합니다.

dep deploy을 실행하면 배포자가 데이터베이스를 마이그레이션합니다. 그러나 dep rollback을 실행하면 해당 교리 마이그레이션이 롤백되지 않습니다.

나는 이것을 해결하는 사람을 찾기 위해 Google과 Stackoverflow를 통해 검색했지만 아무도 찾을 수없는 것 같습니다.

좋은 생각 있으십니까?

답변

0

역 호환 마이그레이션을 사용할 수 있습니다. 이렇게하면 롤백이 필요하지 않습니다.

지저분한 데이터베이스가 될 수 있으므로 정기적으로 BC 레이어를 정리하는 것이 좋습니다. 예를 들어 :

  1. 배포 B는 배포, 그것은 full name 열을 사용하지만, 대신 first namelast name에 분할하지 않도록 마이그레이션을 가지고있다. full name 열은 여전히 ​​하위 호환성을 유지합니다.
  2. B가 불안정하다고 가정합니다. A로 롤백했습니다. 여전히 완전히 작동하는 full name 열이 있으므로 마이그레이션 롤백이 필요하지 않습니다.
  3. B가 안정적이라고 가정하십시오. 배포 C를 배포 할 때 first namelast name에 모두 full name 값이 나뉘어 있는지 확인한 다음 full name 열을 완전히 제거해야합니다.
  4. 배포 C가 불안정하다고 가정합니다. 둘 다 full name 만 사용하므로 마이그레이션 롤백이 필요하지 않으므로 B로 롤백합니다.