Uploaded image for project: 'camunda BPM'
  1. camunda BPM
  2. CAM-1038 Integration with a Database Migration Tool
  3. CAM-13782

Test Liquibase changelog for equality against manual scripts

XMLWordPrintable

    • Icon: Sub-task Sub-task
    • Resolution: Fixed
    • Icon: L3 - Default L3 - Default
    • 7.16.0, 7.16.0-alpha4
    • None
    • engine
    • None

      AC

      • Liquibase scripts are tested automatically in CI for equality against manual installation

      Hints

      • Issues with a maven-only approach:
        • Liquibase's "diff" command can work with two online databases - we only have one test database, testing with manual scripts and Liquibase sequentially, clearing up data in-between
        • Liquibase's "diff" command can also work with snapshots of databases (JSON files) - the "snapshot" command creating those snapshots is not available in Liquibase's maven plugin, only via CLI and Java API
        • Ordering the plugins needed for comparison would be based on maven phases and execution orders within a plugin within a maven phase - this is a very error-prone construct
        • Evaluating the Liquibase diff via a maven plugin is not intuitive and easy to do (although probably achievable)
      • Solution idea:
        • Write Java-based test cases that execute the necessary steps and verifications

        This is the controller panel for Smart Panels app

          1. add-equality-test-for-Liquibase.patch
            18 kB
            Tobias Metzke-Bernstein
          2. SqlScriptTest.java
            11 kB
            Tobias Metzke-Bernstein

              Unassigned Unassigned
              tobias.metzke Tobias Metzke-Bernstein
              Tobias Metzke-Bernstein Tobias Metzke-Bernstein
              Miklas Boskamp Miklas Boskamp
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: