Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

In Data migrator, Create packaging functionality to produce distribution as a standalone application #4988

Open
1 task
Tracked by #4981
yanavasileva opened this issue Mar 11, 2025 · 0 comments
Labels
scope:data-migrator Changes to the Data migrator project. type:feature Issues that add a new user feature to the project.

Comments

@yanavasileva
Copy link
Member

yanavasileva commented Mar 11, 2025

User Story (Required on creation)

As a process engineer, I want to download and run the Data migrator as a standalone application.

Functional Requirements (Required before implementation)

Create packaging functionality to produce distribution as a standalone application.

Technical Requirements (Required before implementation)

  • Create a separate module.
  • The artifact should be distributed as zip and tar.
  • Contains start bat/sh script that
    • The migrator's start script runs in the foreground.
    • Running ./start.sh without any flags migrates runtime first and history second
    • Flags can be passed to the ./start.sh script:
      • --runtime => to migrate runtime data only.
      • --history => to migrate history data only.
      • Implementation idea: pass flags as psvm args and let the core jar react on the different input. We don’t see much value in separating each argument into a dedicated JAR like we do it for C7 Run.
  • Provides an application.yml file that allows you to configure the Migrator (e.g., source/target data source).
  • Contains userlib folder where database drivers (or plugins) can be dropped to be used according to user needs. See C7 Run “rolemodel”.
  • Contains the License and Notice files from the repo.
  • Contains readme file that contains
    • license information
    • contents
    • link to the repo's readme for usage information

Limitations of Scope

Hints

  • The Camunda Run distribution can be used as example: Spring Boot application that is packaged with assembly.xml
  • Time estimate: 5 days

Links

Breakdown

Pull Requests

Preview Give feedback
No tasks being tracked yet.

Dev2QA handover

  • Does this ticket need a QA test and the testing goals are not clear from the description? Add a Dev2QA handover commentCreate packaging functionality to produce distribution as a standalone application.
    • Hint: The Camunda Run distribution can be used as example: Spring Boot application that is packaged with assembly.xml
    • Create a separate module.
    • The artifact should be distributed as zip and tar.
    • Contains start bat/sh script that
      • The migrator's start script runs in the foreground.
      • Running ./start.sh without any flags migrates runtime first and history second
      • Flags can be passed to the ./start.sh script:
        • --runtime => to migrate runtime data only.
        • --history => to migrate history data only.
        • Implementation idea: pass flags as psvm args and let the core jar react on the different input. We don’t see much value in separating each argument into a dedicated JAR like we do it for C7 Run.
    • Provides an application.yml file that allows you to configure the Migrator (e.g., source/target data source).
    • Contains userlib folder where database drivers (or plugins) can be dropped to be used according to user needs. See C7 Run “rolemodel”.
    • Contains the License and Notice files from the repo.
    • Contains readme file that contains
      • license information
      • contents
      • link to the repo's readme for usage information
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
scope:data-migrator Changes to the Data migrator project. type:feature Issues that add a new user feature to the project.
Projects
None yet
Development

No branches or pull requests

1 participant