Skip to content

Add data-model-migration commands for semantic entity push - #403

Draft
Philipp Hoch (hochphil) wants to merge 3 commits into
mainfrom
feature/data-model-migration-semantic-entities
Draft

Add data-model-migration commands for semantic entity push#403
Philipp Hoch (hochphil) wants to merge 3 commits into
mainfrom
feature/data-model-migration-semantic-entities

Conversation

@hochphil

Copy link
Copy Markdown

Summary

  • Adds a new data-model-migration content-cli module that exports a Data Integration data model via GET /integration/api/pools/{poolId}/data-models/{dataModelId}/transport?includeColumns=true
  • Converts tables, process configurations, and classic foreign keys into pig semantic entities (objects, event sources, relationships, perspective) with data bindings
  • Pushes converted entities into a target pig package via pig-sl-ontology public CRUD endpoints
  • Explicitly does not support object-centric object links (signal-links); only classic foreignKeys[] from the transport payload are converted

Commands

  • content-cli export data-model --poolId <id> --dataModelId <id> [--outputToJsonFile]
  • content-cli push semantic-model --poolId <id> --dataModelId <id> --package <packageKey> [--schema <schema>] [--namespace <ns>] [--fromFile <json>] [--dryRun]

Test plan

  • yarn test tests/commands/data-model-migration tests/integration/commands/data-model-migration.spec.ts
  • yarn build
  • Manual dry run against a staging team: content-cli push semantic-model --poolId ... --dataModelId ... --package ... --dryRun
  • Manual push against a staging pig package with edit access

Made with Cursor

Philipp Hoch (hochphil) and others added 3 commits August 6, 2026 13:21
Introduce a new content-cli module that exports a Data Integration data
model via the cloud-data-integration transport API, converts tables,
process configurations, and classic foreign keys into pig semantic
entities, and pushes them into a target pig-sl-ontology package.

Includes converter unit tests, API/service tests, command wiring tests,
and user guide documentation.

Includes-AI-Code: true
Co-authored-by: Cursor <cursoragent@cursor.com>
Includes-AI-Code: true
Co-authored-by: Cursor <cursoragent@cursor.com>
Aligns the migration flow with the platform CLI path (config nodes create) by
posting SaveNodeTransport payloads to the package-manager API, reusing existing
OAuth scopes and the standard validate/version workflow.

Includes-AI-Code: true
Co-authored-by: Cursor <cursoragent@cursor.com>
@sonarqubecloud

sonarqubecloud Bot commented Aug 6, 2026

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
1 New Minor Issues (required ≤ 0)
4 New Major Issues (required ≤ 0)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant