Add `pipekit export` / `pipekit apply` (pipekit/config_io.py) to serialise the DB's config — drivers, connections, modules (+ columns, watermarks, hooks), groups, schedules — to a git-trackable text tree under config/, and rehydrate it. SQLite stays runtime state; definitions become diffable/reviewable/ revertible. - config only: run_log/group_run/settings and per-run state columns excluded - name-keyed refs (portable across databases); source_query in .sql sidecars; columns as real JSON arrays for line-by-line diffs - newline-normalised so CRLF-vs-LF is never a spurious change - apply is create/update by name; child collections fully synced; top-level deletes gated behind --prune; --dry-run prints the plan - round-trip is identity (export -> apply --dry-run == nothing to do) Commits the current config/ as the first baseline, capturing the freshly populated columns_json for rm00101/rm00301/iv00101. Documented in SPEC.md. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
275 lines
6.7 KiB
JSON
275 lines
6.7 KiB
JSON
{
|
|
"name": "mast",
|
|
"source_connection": "S78030956",
|
|
"dest_connection": "usmidsap02",
|
|
"dest_table": "cms.mast",
|
|
"staging_table": "pipekit_staging.mast",
|
|
"merge_strategy": "full",
|
|
"merge_key": null,
|
|
"enabled": 1,
|
|
"dest_description": "G/L Chart of Accounts header 6.1",
|
|
"columns": [
|
|
{
|
|
"source_name": "AZCOMP",
|
|
"source_type": "NUMERIC(2,0)",
|
|
"dest_name": "azcomp",
|
|
"dest_type": "numeric(2,0)",
|
|
"description": "Company Number"
|
|
},
|
|
{
|
|
"source_name": "AZGL#1",
|
|
"source_type": "NUMERIC(4,0)",
|
|
"dest_name": "azgl#1",
|
|
"dest_type": "numeric(4,0)",
|
|
"description": "G/L Account#1"
|
|
},
|
|
{
|
|
"source_name": "AZGL#2",
|
|
"source_type": "NUMERIC(6,0)",
|
|
"dest_name": "azgl#2",
|
|
"dest_type": "numeric(6,0)",
|
|
"description": "G/L Account#2"
|
|
},
|
|
{
|
|
"source_name": "AZBTYP",
|
|
"source_type": "NUMERIC(2,0)",
|
|
"dest_name": "azbtyp",
|
|
"dest_type": "numeric(2,0)",
|
|
"description": "Budget Type"
|
|
},
|
|
{
|
|
"source_name": "AZTITL",
|
|
"source_type": "CHAR(30)",
|
|
"dest_name": "aztitl",
|
|
"dest_type": "text",
|
|
"description": "Account Title"
|
|
},
|
|
{
|
|
"source_name": "AZATYP",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "azatyp",
|
|
"dest_type": "text",
|
|
"description": "Account Type"
|
|
},
|
|
{
|
|
"source_name": "AZGROP",
|
|
"source_type": "CHAR(7)",
|
|
"dest_name": "azgrop",
|
|
"dest_type": "text",
|
|
"description": "Account Group"
|
|
},
|
|
{
|
|
"source_name": "AZSTAT",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "azstat",
|
|
"dest_type": "text",
|
|
"description": "Account Status Code"
|
|
},
|
|
{
|
|
"source_name": "AZUVER",
|
|
"source_type": "CHAR(10)",
|
|
"dest_name": "azuver",
|
|
"dest_type": "text",
|
|
"description": "USRDEF Verification Template"
|
|
},
|
|
{
|
|
"source_name": "AZGIFI",
|
|
"source_type": "NUMERIC(4,0)",
|
|
"dest_name": "azgifi",
|
|
"dest_type": "numeric(4,0)",
|
|
"description": "General Index of Financial Info"
|
|
},
|
|
{
|
|
"source_name": "AZPJMN",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "azpjmn",
|
|
"dest_type": "text",
|
|
"description": "Project Mandatory"
|
|
},
|
|
{
|
|
"source_name": "AZCODE",
|
|
"source_type": "CHAR(30)",
|
|
"dest_name": "azcode",
|
|
"dest_type": "text",
|
|
"description": "G/L Account Code"
|
|
},
|
|
{
|
|
"source_name": "AZFTCD",
|
|
"source_type": "CHAR(30)",
|
|
"dest_name": "azftcd",
|
|
"dest_type": "text",
|
|
"description": "Formatted Account Code"
|
|
},
|
|
{
|
|
"source_name": "AZFLG1",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "azflg1",
|
|
"dest_type": "text",
|
|
"description": "Future Use Flg1"
|
|
},
|
|
{
|
|
"source_name": "AZFLG2",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "azflg2",
|
|
"dest_type": "text",
|
|
"description": "Future Use Flg2"
|
|
},
|
|
{
|
|
"source_name": "AZFLG3",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "azflg3",
|
|
"dest_type": "text",
|
|
"description": "Future Use Flg3"
|
|
},
|
|
{
|
|
"source_name": "AZFLG4",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "azflg4",
|
|
"dest_type": "text",
|
|
"description": "Future Use Flg4"
|
|
},
|
|
{
|
|
"source_name": "AZFLG5",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "azflg5",
|
|
"dest_type": "text",
|
|
"description": "Future Use Flg5"
|
|
},
|
|
{
|
|
"source_name": "AZFUT1",
|
|
"source_type": "CHAR(10)",
|
|
"dest_name": "azfut1",
|
|
"dest_type": "text",
|
|
"description": "Future Use Fut1"
|
|
},
|
|
{
|
|
"source_name": "AZFUT2",
|
|
"source_type": "CHAR(10)",
|
|
"dest_name": "azfut2",
|
|
"dest_type": "text",
|
|
"description": "Future Use Fut2"
|
|
},
|
|
{
|
|
"source_name": "AZFUT3",
|
|
"source_type": "CHAR(10)",
|
|
"dest_name": "azfut3",
|
|
"dest_type": "text",
|
|
"description": "Future Use Fut3"
|
|
},
|
|
{
|
|
"source_name": "AZFUT4",
|
|
"source_type": "CHAR(20)",
|
|
"dest_name": "azfut4",
|
|
"dest_type": "text",
|
|
"description": "Future Use Fut4"
|
|
},
|
|
{
|
|
"source_name": "AZFUT5",
|
|
"source_type": "CHAR(20)",
|
|
"dest_name": "azfut5",
|
|
"dest_type": "text",
|
|
"description": "Future Use Fut5"
|
|
},
|
|
{
|
|
"source_name": "AZFUT6",
|
|
"source_type": "CHAR(20)",
|
|
"dest_name": "azfut6",
|
|
"dest_type": "text",
|
|
"description": "Future Use Fut6"
|
|
},
|
|
{
|
|
"source_name": "AZFUT7",
|
|
"source_type": "CHAR(30)",
|
|
"dest_name": "azfut7",
|
|
"dest_type": "text",
|
|
"description": "Future Use Fut7"
|
|
},
|
|
{
|
|
"source_name": "AZFUT8",
|
|
"source_type": "NUMERIC(11,2)",
|
|
"dest_name": "azfut8",
|
|
"dest_type": "numeric(11,2)",
|
|
"description": "Future Use Fut8"
|
|
},
|
|
{
|
|
"source_name": "AZFUT9",
|
|
"source_type": "NUMERIC(11,2)",
|
|
"dest_name": "azfut9",
|
|
"dest_type": "numeric(11,2)",
|
|
"description": "Future Use Fut9"
|
|
},
|
|
{
|
|
"source_name": "AZFUT10",
|
|
"source_type": "NUMERIC(11,2)",
|
|
"dest_name": "azfut10",
|
|
"dest_type": "numeric(11,2)",
|
|
"description": "Future Use Fut10"
|
|
},
|
|
{
|
|
"source_name": "AZFUT11",
|
|
"source_type": "NUMERIC(15,5)",
|
|
"dest_name": "azfut11",
|
|
"dest_type": "numeric(15,5)",
|
|
"description": "Future Use Fut11"
|
|
},
|
|
{
|
|
"source_name": "AZFUT12",
|
|
"source_type": "NUMERIC(15,5)",
|
|
"dest_name": "azfut12",
|
|
"dest_type": "numeric(15,5)",
|
|
"description": "Future Use Fut12"
|
|
},
|
|
{
|
|
"source_name": "AZCLSC",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "azclsc",
|
|
"dest_type": "text",
|
|
"description": "Class Code"
|
|
},
|
|
{
|
|
"source_name": "AZBSLN",
|
|
"source_type": "NUMERIC(3,0)",
|
|
"dest_name": "azbsln",
|
|
"dest_type": "numeric(3,0)",
|
|
"description": "Balance Sheet Line"
|
|
},
|
|
{
|
|
"source_name": "AZISLN",
|
|
"source_type": "NUMERIC(3,0)",
|
|
"dest_name": "azisln",
|
|
"dest_type": "numeric(3,0)",
|
|
"description": "Income Stmt Line"
|
|
},
|
|
{
|
|
"source_name": "AZTTL2",
|
|
"source_type": "CHAR(30)",
|
|
"dest_name": "azttl2",
|
|
"dest_type": "text",
|
|
"description": "Second Title"
|
|
},
|
|
{
|
|
"source_name": "AZICMA",
|
|
"source_type": "CHAR(1)",
|
|
"dest_name": "azicma",
|
|
"dest_type": "text",
|
|
"description": "Intercompany Account"
|
|
},
|
|
{
|
|
"source_name": "AZCURC",
|
|
"source_type": "CHAR(2)",
|
|
"dest_name": "azcurc",
|
|
"dest_type": "text",
|
|
"description": "Currency Code"
|
|
},
|
|
{
|
|
"source_name": "AZCATC",
|
|
"source_type": "CHAR(10)",
|
|
"dest_name": "azcatc",
|
|
"dest_type": "text",
|
|
"description": "G/L Category Code"
|
|
}
|
|
],
|
|
"watermarks": [],
|
|
"hooks": []
|
|
}
|