ingestron 1.0.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/README.md +3 -2
  2. package/dist/main.js +2189 -1275
  3. package/package.json +5 -4
  4. package/schemas/flow.schema.yaml +18 -1
  5. package/schemas/standard.schema.yaml +6 -1
  6. package/schemas/transform.schema.yaml +15 -0
  7. /package/{project-recipes/adf → recipes}/connections/adls-gen2.yaml +0 -0
  8. /package/{project-recipes/adf → recipes}/connections/amazon-rds-oracle.yaml +0 -0
  9. /package/{project-recipes/adf → recipes}/connections/amazon-rds-sqlserver.yaml +0 -0
  10. /package/{project-recipes/adf → recipes}/connections/amazon-redshift.yaml +0 -0
  11. /package/{project-recipes/adf → recipes}/connections/amazon-s3.yaml +0 -0
  12. /package/{project-recipes/adf → recipes}/connections/azure-blob.yaml +0 -0
  13. /package/{project-recipes/adf → recipes}/connections/azure-cosmos-db-mongodb.yaml +0 -0
  14. /package/{project-recipes/adf → recipes}/connections/azure-cosmos-db-nosql.yaml +0 -0
  15. /package/{project-recipes/adf → recipes}/connections/azure-cosmos-postgresql.yaml +0 -0
  16. /package/{project-recipes/adf → recipes}/connections/azure-data-explorer.yaml +0 -0
  17. /package/{project-recipes/adf → recipes}/connections/azure-databricks-delta.yaml +0 -0
  18. /package/{project-recipes/adf → recipes}/connections/azure-files.yaml +0 -0
  19. /package/{project-recipes/adf → recipes}/connections/azure-mysql.yaml +0 -0
  20. /package/{project-recipes/adf → recipes}/connections/azure-postgresql.yaml +0 -0
  21. /package/{project-recipes/adf → recipes}/connections/azure-sql-database.yaml +0 -0
  22. /package/{project-recipes/adf → recipes}/connections/azure-sql-managed-instance.yaml +0 -0
  23. /package/{project-recipes/adf → recipes}/connections/azure-synapse.yaml +0 -0
  24. /package/{project-recipes/adf → recipes}/connections/azure-table-storage.yaml +0 -0
  25. /package/{project-recipes/adf → recipes}/connections/cassandra.yaml +0 -0
  26. /package/{project-recipes/adf → recipes}/connections/dataverse.yaml +0 -0
  27. /package/{project-recipes/adf → recipes}/connections/db2.yaml +0 -0
  28. /package/{project-recipes/adf → recipes}/connections/dynamics-365.yaml +0 -0
  29. /package/{project-recipes/adf → recipes}/connections/dynamics-ax.yaml +0 -0
  30. /package/{project-recipes/adf → recipes}/connections/dynamics-crm.yaml +0 -0
  31. /package/{project-recipes/adf → recipes}/connections/fabric-lakehouse.yaml +0 -0
  32. /package/{project-recipes/adf → recipes}/connections/fabric-warehouse.yaml +0 -0
  33. /package/{project-recipes/adf → recipes}/connections/files.yaml +0 -0
  34. /package/{project-recipes/adf → recipes}/connections/ftp.yaml +0 -0
  35. /package/{project-recipes/adf → recipes}/connections/google-ads.yaml +0 -0
  36. /package/{project-recipes/adf → recipes}/connections/google-bigquery.yaml +0 -0
  37. /package/{project-recipes/adf → recipes}/connections/google-cloud-storage.yaml +0 -0
  38. /package/{project-recipes/adf → recipes}/connections/greenplum.yaml +0 -0
  39. /package/{project-recipes/adf → recipes}/connections/hdfs.yaml +0 -0
  40. /package/{project-recipes/adf → recipes}/connections/hive.yaml +0 -0
  41. /package/{project-recipes/adf → recipes}/connections/http.yaml +0 -0
  42. /package/{project-recipes/adf → recipes}/connections/hubspot.yaml +0 -0
  43. /package/{project-recipes/adf → recipes}/connections/impala.yaml +0 -0
  44. /package/{project-recipes/adf → recipes}/connections/informix.yaml +0 -0
  45. /package/{project-recipes/adf → recipes}/connections/jira.yaml +0 -0
  46. /package/{project-recipes/adf → recipes}/connections/mariadb.yaml +0 -0
  47. /package/{project-recipes/adf → recipes}/connections/microsoft-365.yaml +0 -0
  48. /package/{project-recipes/adf → recipes}/connections/microsoft-access.yaml +0 -0
  49. /package/{project-recipes/adf → recipes}/connections/mongodb-atlas.yaml +0 -0
  50. /package/{project-recipes/adf → recipes}/connections/mongodb.yaml +0 -0
  51. /package/{project-recipes/adf → recipes}/connections/mysql.yaml +0 -0
  52. /package/{project-recipes/adf → recipes}/connections/netezza.yaml +0 -0
  53. /package/{project-recipes/adf → recipes}/connections/odata.yaml +0 -0
  54. /package/{project-recipes/adf → recipes}/connections/odbc.yaml +0 -0
  55. /package/{project-recipes/adf → recipes}/connections/oracle-cloud-storage.yaml +0 -0
  56. /package/{project-recipes/adf → recipes}/connections/oracle.yaml +0 -0
  57. /package/{project-recipes/adf → recipes}/connections/postgresql.yaml +0 -0
  58. /package/{project-recipes/adf → recipes}/connections/presto.yaml +0 -0
  59. /package/{project-recipes/adf → recipes}/connections/quickbooks.yaml +0 -0
  60. /package/{project-recipes/adf → recipes}/connections/rest.yaml +0 -0
  61. /package/{project-recipes/adf → recipes}/connections/s3-compatible.yaml +0 -0
  62. /package/{project-recipes/adf → recipes}/connections/salesforce-service-cloud.yaml +0 -0
  63. /package/{project-recipes/adf → recipes}/connections/salesforce.yaml +0 -0
  64. /package/{project-recipes/adf → recipes}/connections/sap-bw-mdx.yaml +0 -0
  65. /package/{project-recipes/adf → recipes}/connections/sap-bw-open-hub.yaml +0 -0
  66. /package/{project-recipes/adf → recipes}/connections/sap-c4c.yaml +0 -0
  67. /package/{project-recipes/adf → recipes}/connections/sap-ecc.yaml +0 -0
  68. /package/{project-recipes/adf → recipes}/connections/sap-hana.yaml +0 -0
  69. /package/{project-recipes/adf → recipes}/connections/sap-table.yaml +0 -0
  70. /package/{project-recipes/adf → recipes}/connections/servicenow.yaml +0 -0
  71. /package/{project-recipes/adf → recipes}/connections/sftp.yaml +0 -0
  72. /package/{project-recipes/adf → recipes}/connections/sharepoint-online-list.yaml +0 -0
  73. /package/{project-recipes/adf → recipes}/connections/shopify.yaml +0 -0
  74. /package/{project-recipes/adf → recipes}/connections/snowflake.yaml +0 -0
  75. /package/{project-recipes/adf → recipes}/connections/spark.yaml +0 -0
  76. /package/{project-recipes/adf → recipes}/connections/sqlserver.yaml +0 -0
  77. /package/{project-recipes/adf → recipes}/connections/square.yaml +0 -0
  78. /package/{project-recipes/adf → recipes}/connections/sybase.yaml +0 -0
  79. /package/{project-recipes/adf → recipes}/connections/teradata.yaml +0 -0
  80. /package/{project-recipes/adf → recipes}/connections/vertica.yaml +0 -0
  81. /package/{project-recipes/adf → recipes}/connections/web-table.yaml +0 -0
  82. /package/{project-recipes/adf → recipes}/connections/xero.yaml +0 -0
  83. /package/{project-recipes/adf → recipes}/contracts/records.yaml +0 -0
  84. /package/{project-recipes/adf → recipes}/contracts/salesforce-account.yaml +0 -0
  85. /package/{project-recipes/adf → recipes}/flows/adls-gen2.yaml +0 -0
  86. /package/{project-recipes/adf → recipes}/flows/amazon-rds-oracle.yaml +0 -0
  87. /package/{project-recipes/adf → recipes}/flows/amazon-rds-sqlserver.yaml +0 -0
  88. /package/{project-recipes/adf → recipes}/flows/amazon-redshift.yaml +0 -0
  89. /package/{project-recipes/adf → recipes}/flows/amazon-s3.yaml +0 -0
  90. /package/{project-recipes/adf → recipes}/flows/azure-blob.yaml +0 -0
  91. /package/{project-recipes/adf → recipes}/flows/azure-cosmos-db-mongodb.yaml +0 -0
  92. /package/{project-recipes/adf → recipes}/flows/azure-cosmos-db-nosql.yaml +0 -0
  93. /package/{project-recipes/adf → recipes}/flows/azure-cosmos-postgresql.yaml +0 -0
  94. /package/{project-recipes/adf → recipes}/flows/azure-data-explorer.yaml +0 -0
  95. /package/{project-recipes/adf → recipes}/flows/azure-databricks-delta.yaml +0 -0
  96. /package/{project-recipes/adf → recipes}/flows/azure-files.yaml +0 -0
  97. /package/{project-recipes/adf → recipes}/flows/azure-mysql.yaml +0 -0
  98. /package/{project-recipes/adf → recipes}/flows/azure-postgresql.yaml +0 -0
  99. /package/{project-recipes/adf → recipes}/flows/azure-sql-database.yaml +0 -0
  100. /package/{project-recipes/adf → recipes}/flows/azure-sql-managed-instance.yaml +0 -0
  101. /package/{project-recipes/adf → recipes}/flows/azure-synapse.yaml +0 -0
  102. /package/{project-recipes/adf → recipes}/flows/azure-table-storage.yaml +0 -0
  103. /package/{project-recipes/adf → recipes}/flows/cassandra.yaml +0 -0
  104. /package/{project-recipes/adf → recipes}/flows/dataverse.yaml +0 -0
  105. /package/{project-recipes/adf → recipes}/flows/db2.yaml +0 -0
  106. /package/{project-recipes/adf → recipes}/flows/dynamics-365.yaml +0 -0
  107. /package/{project-recipes/adf → recipes}/flows/dynamics-ax.yaml +0 -0
  108. /package/{project-recipes/adf → recipes}/flows/dynamics-crm.yaml +0 -0
  109. /package/{project-recipes/adf → recipes}/flows/fabric-lakehouse.yaml +0 -0
  110. /package/{project-recipes/adf → recipes}/flows/fabric-warehouse.yaml +0 -0
  111. /package/{project-recipes/adf → recipes}/flows/files.yaml +0 -0
  112. /package/{project-recipes/adf → recipes}/flows/ftp.yaml +0 -0
  113. /package/{project-recipes/adf → recipes}/flows/google-ads.yaml +0 -0
  114. /package/{project-recipes/adf → recipes}/flows/google-bigquery.yaml +0 -0
  115. /package/{project-recipes/adf → recipes}/flows/google-cloud-storage.yaml +0 -0
  116. /package/{project-recipes/adf → recipes}/flows/greenplum.yaml +0 -0
  117. /package/{project-recipes/adf → recipes}/flows/hdfs.yaml +0 -0
  118. /package/{project-recipes/adf → recipes}/flows/hive.yaml +0 -0
  119. /package/{project-recipes/adf → recipes}/flows/http.yaml +0 -0
  120. /package/{project-recipes/adf → recipes}/flows/hubspot.yaml +0 -0
  121. /package/{project-recipes/adf → recipes}/flows/impala.yaml +0 -0
  122. /package/{project-recipes/adf → recipes}/flows/informix.yaml +0 -0
  123. /package/{project-recipes/adf → recipes}/flows/jira.yaml +0 -0
  124. /package/{project-recipes/adf → recipes}/flows/mariadb.yaml +0 -0
  125. /package/{project-recipes/adf → recipes}/flows/microsoft-365.yaml +0 -0
  126. /package/{project-recipes/adf → recipes}/flows/microsoft-access.yaml +0 -0
  127. /package/{project-recipes/adf → recipes}/flows/mongodb-atlas.yaml +0 -0
  128. /package/{project-recipes/adf → recipes}/flows/mongodb.yaml +0 -0
  129. /package/{project-recipes/adf → recipes}/flows/mysql.yaml +0 -0
  130. /package/{project-recipes/adf → recipes}/flows/netezza.yaml +0 -0
  131. /package/{project-recipes/adf → recipes}/flows/odata.yaml +0 -0
  132. /package/{project-recipes/adf → recipes}/flows/odbc.yaml +0 -0
  133. /package/{project-recipes/adf → recipes}/flows/oracle-cloud-storage.yaml +0 -0
  134. /package/{project-recipes/adf → recipes}/flows/oracle.yaml +0 -0
  135. /package/{project-recipes/adf → recipes}/flows/postgresql.yaml +0 -0
  136. /package/{project-recipes/adf → recipes}/flows/presto.yaml +0 -0
  137. /package/{project-recipes/adf → recipes}/flows/quickbooks.yaml +0 -0
  138. /package/{project-recipes/adf → recipes}/flows/rest.yaml +0 -0
  139. /package/{project-recipes/adf → recipes}/flows/s3-compatible.yaml +0 -0
  140. /package/{project-recipes/adf → recipes}/flows/salesforce-service-cloud.yaml +0 -0
  141. /package/{project-recipes/adf → recipes}/flows/salesforce.yaml +0 -0
  142. /package/{project-recipes/adf → recipes}/flows/sap-bw-mdx.yaml +0 -0
  143. /package/{project-recipes/adf → recipes}/flows/sap-bw-open-hub.yaml +0 -0
  144. /package/{project-recipes/adf → recipes}/flows/sap-c4c.yaml +0 -0
  145. /package/{project-recipes/adf → recipes}/flows/sap-ecc.yaml +0 -0
  146. /package/{project-recipes/adf → recipes}/flows/sap-hana.yaml +0 -0
  147. /package/{project-recipes/adf → recipes}/flows/sap-table.yaml +0 -0
  148. /package/{project-recipes/adf → recipes}/flows/servicenow.yaml +0 -0
  149. /package/{project-recipes/adf → recipes}/flows/sftp.yaml +0 -0
  150. /package/{project-recipes/adf → recipes}/flows/sharepoint-online-list.yaml +0 -0
  151. /package/{project-recipes/adf → recipes}/flows/shopify.yaml +0 -0
  152. /package/{project-recipes/adf → recipes}/flows/snowflake.yaml +0 -0
  153. /package/{project-recipes/adf → recipes}/flows/spark.yaml +0 -0
  154. /package/{project-recipes/adf → recipes}/flows/sqlserver.yaml +0 -0
  155. /package/{project-recipes/adf → recipes}/flows/square.yaml +0 -0
  156. /package/{project-recipes/adf → recipes}/flows/sybase.yaml +0 -0
  157. /package/{project-recipes/adf → recipes}/flows/teradata.yaml +0 -0
  158. /package/{project-recipes/adf → recipes}/flows/vertica.yaml +0 -0
  159. /package/{project-recipes/adf → recipes}/flows/web-table.yaml +0 -0
  160. /package/{project-recipes/adf → recipes}/flows/xero.yaml +0 -0
  161. /package/{project-recipes/adf → recipes}/platform.yaml +0 -0
  162. /package/{project-recipes/adf → recipes}/project.yaml +0 -0
  163. /package/{project-recipes/adf → recipes}/sample.yaml +0 -0
  164. /package/{project-recipes/adf → recipes}/standard.yaml +0 -0
package/package.json CHANGED
@@ -1,16 +1,17 @@
1
1
  {
2
2
  "name": "ingestron",
3
- "version": "1.0.0",
4
- "description": "Declare data ingestion in reviewed YAML definitions and generate Databricks and Azure Data Factory files under your standards.",
3
+ "version": "1.2.0",
4
+ "description": "Declare data ingestion in reviewed YAML definitions and generate Databricks, Azure Data Factory and Synapse serverless SQL files under your standards.",
5
5
  "keywords": [
6
6
  "ingestion",
7
7
  "databricks",
8
8
  "azure-data-factory",
9
+ "azure-synapse",
9
10
  "data-engineering",
10
11
  "yaml",
11
12
  "cli"
12
13
  ],
13
- "homepage": "https://ingestron.com",
14
+ "homepage": "https://docs.ingestron.io",
14
15
  "repository": {
15
16
  "type": "git",
16
17
  "url": "git+https://github.com/ingestron/ingestron.git",
@@ -34,7 +35,7 @@
34
35
  "schemas",
35
36
  "templates",
36
37
  "project-templates",
37
- "project-recipes",
38
+ "recipes",
38
39
  "LICENSE",
39
40
  "NOTICE",
40
41
  "THIRD_PARTY_NOTICES",
@@ -51,12 +51,15 @@ properties:
51
51
  { $ref: "#/$defs/expectations", description: Your own checks on this table's rows. }
52
52
  ingest: { $ref: "#/$defs/with", description: Method settings for this table only. }
53
53
  store: { $ref: "#/$defs/with", description: Method settings for this table only. }
54
+ serve: { $ref: "#/$defs/with", description: Method settings for this table only. }
54
55
  examples:
55
56
  - orders:
56
57
  object: orders
57
58
  contract: shop.orders
58
59
  ingest: { $ref: "#/$defs/ingest", description: How data leaves the source. }
59
60
  store: { $ref: "#/$defs/store", description: How data is kept in the platform. }
61
+ serve:
62
+ { $ref: "#/$defs/serve", description: Where the data is made available after its last step. }
60
63
  $defs:
61
64
  with:
62
65
  type: object
@@ -116,9 +119,23 @@ $defs:
116
119
  uses:
117
120
  type: string
118
121
  pattern: ^[a-z][a-z0-9-]*$
119
- description: A method the standard allows. Leave out to let the standard choose.
122
+ description: A method the standard allows, or none to end the flow at the files ingest lands. Leave out to let the standard choose.
120
123
  examples:
121
124
  - streaming-table
125
+ - none
126
+ with:
127
+ type: object
128
+ description: Method settings for every table of this flow.
129
+ serve:
130
+ type: object
131
+ additionalProperties: false
132
+ properties:
133
+ uses:
134
+ type: string
135
+ pattern: ^[a-z][a-z0-9-]*$
136
+ description: A serve method the standard allows, such as views over the data. Leave out to let the standard choose; nothing is served unless something chooses.
137
+ examples:
138
+ - synapse-serve
122
139
  with:
123
140
  type: object
124
141
  description: Method settings for every table of this flow.
@@ -82,6 +82,11 @@ properties:
82
82
  $ref: "#/$defs/rules",
83
83
  description: "How tables are stored: method settings, rules, and allowed and fixed settings.",
84
84
  }
85
+ serve:
86
+ {
87
+ $ref: "#/$defs/rules",
88
+ description: "Where tables are made available after their last step: method settings, rules, and allowed and fixed settings. Nothing is served unless something chooses.",
89
+ }
85
90
  $defs:
86
91
  method: { type: string, pattern: "^[a-z][a-z0-9-]*$" }
87
92
  naming:
@@ -125,7 +130,7 @@ $defs:
125
130
  properties:
126
131
  default:
127
132
  $ref: "#/$defs/method"
128
- description: Replaces the pack's default method for this action.
133
+ description: "Replaces the pack's default method for this action. For store, none ends flows at the files ingest lands."
129
134
  examples:
130
135
  - materialised-view
131
136
  allowed:
@@ -79,6 +79,8 @@ properties:
79
79
  description: Your own checks on the table's rows.
80
80
  transform: { $ref: "#/$defs/transform", description: How the code runs. }
81
81
  store: { $ref: "#/$defs/store", description: How the result is kept. }
82
+ serve:
83
+ { $ref: "#/$defs/serve", description: Where the result is made available after it is kept. }
82
84
  $defs:
83
85
  transform:
84
86
  type: object
@@ -106,3 +108,16 @@ $defs:
106
108
  with:
107
109
  type: object
108
110
  description: Settings for the method, over the standard's.
111
+ serve:
112
+ type: object
113
+ additionalProperties: false
114
+ properties:
115
+ uses:
116
+ type: string
117
+ pattern: ^[a-z][a-z0-9-]*$
118
+ description: A serve method the standard allows, such as views over the data. Leave out to let the standard choose; nothing is served unless something chooses.
119
+ examples:
120
+ - synapse-serve
121
+ with:
122
+ type: object
123
+ description: Settings for the method, over the standard's.
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes