cribl-control-plane 0.0.21__py3-none-any.whl → 0.4.0b23__py3-none-any.whl

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 (436) hide show
  1. cribl_control_plane/_hooks/clientcredentials.py +113 -48
  2. cribl_control_plane/_version.py +4 -4
  3. cribl_control_plane/acl.py +225 -0
  4. cribl_control_plane/auth_sdk.py +12 -176
  5. cribl_control_plane/basesdk.py +17 -1
  6. cribl_control_plane/branches.py +351 -0
  7. cribl_control_plane/commits.py +1403 -0
  8. cribl_control_plane/commits_files.py +391 -0
  9. cribl_control_plane/configs_versions.py +201 -0
  10. cribl_control_plane/cribl.py +495 -0
  11. cribl_control_plane/destinations.py +146 -805
  12. cribl_control_plane/destinations_pq.py +379 -0
  13. cribl_control_plane/errors/__init__.py +26 -10
  14. cribl_control_plane/errors/apierror.py +2 -0
  15. cribl_control_plane/errors/criblcontrolplaneerror.py +11 -7
  16. cribl_control_plane/errors/error.py +4 -2
  17. cribl_control_plane/errors/healthserverstatus_error.py +41 -0
  18. cribl_control_plane/errors/no_response_error.py +5 -1
  19. cribl_control_plane/errors/responsevalidationerror.py +2 -0
  20. cribl_control_plane/functions.py +367 -0
  21. cribl_control_plane/groups_configs.py +22 -0
  22. cribl_control_plane/groups_sdk.py +333 -578
  23. cribl_control_plane/health.py +38 -18
  24. cribl_control_plane/hectokens.py +503 -0
  25. cribl_control_plane/httpclient.py +0 -1
  26. cribl_control_plane/{lake.py → lakedatasets.py} +207 -115
  27. cribl_control_plane/models/__init__.py +3644 -5986
  28. cribl_control_plane/models/addhectokenrequest.py +7 -1
  29. cribl_control_plane/models/authtoken.py +5 -1
  30. cribl_control_plane/models/backupssettings_union.py +37 -0
  31. cribl_control_plane/models/{lookupversions.py → branchinfo.py} +4 -4
  32. cribl_control_plane/models/cacheconnection.py +30 -2
  33. cribl_control_plane/models/cacheconnectionbackfillstatus.py +2 -1
  34. cribl_control_plane/models/cloudprovider.py +2 -1
  35. cribl_control_plane/models/collectorazureblob.py +130 -0
  36. cribl_control_plane/models/collectorconf.py +56 -0
  37. cribl_control_plane/models/collectorcribllake.py +27 -0
  38. cribl_control_plane/models/collectordatabase.py +92 -0
  39. cribl_control_plane/models/collectorfilesystem.py +66 -0
  40. cribl_control_plane/models/collectorgooglecloudstorage.py +131 -0
  41. cribl_control_plane/models/collectorhealthcheck.py +269 -0
  42. cribl_control_plane/models/collectorrest.py +340 -0
  43. cribl_control_plane/models/collectors3.py +239 -0
  44. cribl_control_plane/models/collectorscript.py +59 -0
  45. cribl_control_plane/models/collectorsplunk.py +253 -0
  46. cribl_control_plane/models/configgroup.py +67 -11
  47. cribl_control_plane/models/configgroupcloud.py +17 -3
  48. cribl_control_plane/models/countedbranchinfo.py +20 -0
  49. cribl_control_plane/models/countedconfiggroup.py +20 -0
  50. cribl_control_plane/models/countedcribllakedataset.py +20 -0
  51. cribl_control_plane/models/counteddistributedsummary.py +20 -0
  52. cribl_control_plane/models/countedfunctionresponse.py +20 -0
  53. cribl_control_plane/models/countedgitcommitsummary.py +20 -0
  54. cribl_control_plane/models/countedgitcountresult.py +20 -0
  55. cribl_control_plane/models/countedgitdiffresult.py +20 -0
  56. cribl_control_plane/models/countedgitfilesresponse.py +20 -0
  57. cribl_control_plane/models/{getversioninfoop.py → countedgitinfo.py} +2 -6
  58. cribl_control_plane/models/countedgitlogresult.py +20 -0
  59. cribl_control_plane/models/countedgitrevertresult.py +20 -0
  60. cribl_control_plane/models/countedgitshowresult.py +20 -0
  61. cribl_control_plane/models/countedgitstatusresult.py +20 -0
  62. cribl_control_plane/models/{listinputop.py → countedinput.py} +2 -6
  63. cribl_control_plane/models/countedinputsplunkhec.py +20 -0
  64. cribl_control_plane/models/countedjobinfo.py +20 -0
  65. cribl_control_plane/models/countedmasterworkerentry.py +20 -0
  66. cribl_control_plane/models/countednumber.py +19 -0
  67. cribl_control_plane/models/{getversionbranchop.py → countedobject.py} +2 -6
  68. cribl_control_plane/models/{listoutputop.py → countedoutput.py} +2 -6
  69. cribl_control_plane/models/countedoutputsamplesresponse.py +20 -0
  70. cribl_control_plane/models/countedoutputtestresponse.py +20 -0
  71. cribl_control_plane/models/countedpackinfo.py +20 -0
  72. cribl_control_plane/models/{createpacksop.py → countedpackinstallinfo.py} +2 -6
  73. cribl_control_plane/models/{listpipelineop.py → countedpipeline.py} +2 -6
  74. cribl_control_plane/models/{listroutesop.py → countedroutes.py} +2 -6
  75. cribl_control_plane/models/countedstring.py +19 -0
  76. cribl_control_plane/models/countedsystemsettingsconf.py +20 -0
  77. cribl_control_plane/models/countedteamaccesscontrollist.py +20 -0
  78. cribl_control_plane/models/counteduseraccesscontrollist.py +20 -0
  79. cribl_control_plane/models/createauthloginop.py +18 -0
  80. cribl_control_plane/models/createconfiggroupbyproductop.py +46 -0
  81. cribl_control_plane/models/createcribllakedatasetbylakeidop.py +3 -21
  82. cribl_control_plane/models/createinputhectokenbyidop.py +3 -21
  83. cribl_control_plane/models/createoutputtestbyidop.py +3 -22
  84. cribl_control_plane/models/createroutesappendbyidop.py +4 -21
  85. cribl_control_plane/models/createversioncommitop.py +27 -20
  86. cribl_control_plane/models/createversionrevertop.py +7 -23
  87. cribl_control_plane/models/createversionundoop.py +7 -22
  88. cribl_control_plane/models/criblevent.py +15 -0
  89. cribl_control_plane/models/cribllakedataset.py +23 -3
  90. cribl_control_plane/models/cribllakedatasetupdate.py +95 -0
  91. cribl_control_plane/models/currentbranchresult.py +13 -0
  92. cribl_control_plane/models/datasetmetadata.py +18 -2
  93. cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +43 -0
  94. cribl_control_plane/models/deletecribllakedatasetbylakeidandidop.py +5 -24
  95. cribl_control_plane/models/deleteinputbyidop.py +3 -22
  96. cribl_control_plane/models/deleteoutputbyidop.py +3 -22
  97. cribl_control_plane/models/deleteoutputpqbyidop.py +3 -21
  98. cribl_control_plane/models/deletepacksbyidop.py +3 -22
  99. cribl_control_plane/models/deletepipelinebyidop.py +3 -22
  100. cribl_control_plane/models/difffiles.py +130 -0
  101. cribl_control_plane/models/diffline.py +26 -0
  102. cribl_control_plane/models/difflinecontext.py +28 -0
  103. cribl_control_plane/models/difflinedelete.py +25 -0
  104. cribl_control_plane/models/difflineinsert.py +25 -0
  105. cribl_control_plane/models/distributedsummary.py +6 -0
  106. cribl_control_plane/models/functionaggregatemetrics.py +206 -0
  107. cribl_control_plane/models/functionaggregation.py +172 -0
  108. cribl_control_plane/models/functionautotimestamp.py +173 -0
  109. cribl_control_plane/models/functioncef.py +111 -0
  110. cribl_control_plane/models/functionchain.py +75 -0
  111. cribl_control_plane/models/functionclone.py +75 -0
  112. cribl_control_plane/models/functioncode.py +96 -0
  113. cribl_control_plane/models/functioncomment.py +75 -0
  114. cribl_control_plane/models/functiondistinct.py +99 -0
  115. cribl_control_plane/models/functiondnslookup.py +250 -0
  116. cribl_control_plane/models/functiondrop.py +73 -0
  117. cribl_control_plane/models/functiondropdimensions.py +87 -0
  118. cribl_control_plane/models/functiondynamicsampling.py +121 -0
  119. cribl_control_plane/models/functioneval.py +103 -0
  120. cribl_control_plane/models/functioneventbreaker.py +103 -0
  121. cribl_control_plane/models/functioneventstats.py +92 -0
  122. cribl_control_plane/models/functionexternaldata.py +73 -0
  123. cribl_control_plane/models/functionflatten.py +90 -0
  124. cribl_control_plane/models/functionfoldkeys.py +89 -0
  125. cribl_control_plane/models/functiongenstats.py +73 -0
  126. cribl_control_plane/models/functiongeoip.py +120 -0
  127. cribl_control_plane/models/functiongrok.py +95 -0
  128. cribl_control_plane/models/functionhandlebar.py +112 -0
  129. cribl_control_plane/models/functionjoin.py +112 -0
  130. cribl_control_plane/models/functionjsonunroll.py +80 -0
  131. cribl_control_plane/models/functionlakeexport.py +102 -0
  132. cribl_control_plane/models/functionlimit.py +75 -0
  133. cribl_control_plane/models/functionlocalsearchdatatypeparser.py +76 -0
  134. cribl_control_plane/models/functionlocalsearchrulesetrunner.py +97 -0
  135. cribl_control_plane/models/functionlookup.py +148 -0
  136. cribl_control_plane/models/functionmask.py +121 -0
  137. cribl_control_plane/models/functionmvexpand.py +128 -0
  138. cribl_control_plane/models/functionmvpull.py +99 -0
  139. cribl_control_plane/models/functionnotificationpolicies.py +186 -0
  140. cribl_control_plane/models/functionnotifications.py +85 -0
  141. cribl_control_plane/models/functionnotify.py +196 -0
  142. cribl_control_plane/models/functionnumerify.py +119 -0
  143. cribl_control_plane/models/functionotlplogs.py +82 -0
  144. cribl_control_plane/models/functionotlpmetrics.py +118 -0
  145. cribl_control_plane/models/functionotlptraces.py +111 -0
  146. cribl_control_plane/models/functionpack.py +80 -0
  147. cribl_control_plane/models/functionpivot.py +85 -0
  148. cribl_control_plane/models/functionpublishmetrics.py +153 -0
  149. cribl_control_plane/models/functionredis.py +173 -0
  150. cribl_control_plane/models/functionregexextract.py +112 -0
  151. cribl_control_plane/models/functionregexfilter.py +95 -0
  152. cribl_control_plane/models/functionrename.py +107 -0
  153. cribl_control_plane/models/functionresponse.py +242 -0
  154. cribl_control_plane/models/functionrollupmetrics.py +114 -0
  155. cribl_control_plane/models/functionsampling.py +90 -0
  156. cribl_control_plane/models/functionsend.py +141 -0
  157. cribl_control_plane/models/functionsensitivedatascanner.py +128 -0
  158. cribl_control_plane/models/functionserde.py +161 -0
  159. cribl_control_plane/models/functionserialize.py +134 -0
  160. cribl_control_plane/models/functionsidlookup.py +93 -0
  161. cribl_control_plane/models/functionsnmptrapserialize.py +144 -0
  162. cribl_control_plane/models/functionsort.py +97 -0
  163. cribl_control_plane/models/functionstore.py +132 -0
  164. cribl_control_plane/models/functionsuppress.py +115 -0
  165. cribl_control_plane/models/functiontee.py +90 -0
  166. cribl_control_plane/models/functiontrimtimestamp.py +75 -0
  167. cribl_control_plane/models/functionunion.py +80 -0
  168. cribl_control_plane/models/functionunroll.py +80 -0
  169. cribl_control_plane/models/functionwindow.py +96 -0
  170. cribl_control_plane/models/functionxmlunroll.py +92 -0
  171. cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +63 -0
  172. cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +63 -0
  173. cribl_control_plane/models/getconfiggroupbyproductandidop.py +53 -0
  174. cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +43 -0
  175. cribl_control_plane/models/getcribllakedatasetbylakeidandidop.py +5 -24
  176. cribl_control_plane/models/getcribllakedatasetbylakeidop.py +56 -16
  177. cribl_control_plane/models/getfunctionsbyidop.py +18 -0
  178. cribl_control_plane/models/getinputbyidop.py +3 -22
  179. cribl_control_plane/models/getmasterworkerentryop.py +22 -0
  180. cribl_control_plane/models/getoutputbyidop.py +3 -22
  181. cribl_control_plane/models/getoutputpqbyidop.py +3 -21
  182. cribl_control_plane/models/getoutputsamplesbyidop.py +3 -22
  183. cribl_control_plane/models/getpacksbyidop.py +18 -0
  184. cribl_control_plane/models/getpacksop.py +3 -21
  185. cribl_control_plane/models/getpipelinebyidop.py +3 -22
  186. cribl_control_plane/models/getroutesbyidop.py +3 -22
  187. cribl_control_plane/models/getsummaryop.py +23 -32
  188. cribl_control_plane/models/getversioncountop.py +10 -27
  189. cribl_control_plane/models/getversiondiffop.py +12 -28
  190. cribl_control_plane/models/getversionfilesop.py +10 -28
  191. cribl_control_plane/models/getversionop.py +30 -0
  192. cribl_control_plane/models/getversionshowop.py +12 -28
  193. cribl_control_plane/models/getversionstatusop.py +7 -23
  194. cribl_control_plane/models/gitcommitsummary.py +3 -3
  195. cribl_control_plane/models/{routecloneconf.py → gitcountresult.py} +4 -4
  196. cribl_control_plane/models/gitdiffresult.py +16 -0
  197. cribl_control_plane/models/gitfilesresponse.py +7 -5
  198. cribl_control_plane/models/gitinfo.py +14 -3
  199. cribl_control_plane/models/gitlogresult.py +33 -0
  200. cribl_control_plane/models/gitrevertparams.py +3 -3
  201. cribl_control_plane/models/gitrevertresult.py +5 -5
  202. cribl_control_plane/models/gitshowresult.py +19 -0
  203. cribl_control_plane/models/gitstatusresult.py +0 -3
  204. cribl_control_plane/models/groupcreaterequest.py +172 -0
  205. cribl_control_plane/models/hbcriblinfo.py +42 -7
  206. cribl_control_plane/models/healthserverstatus.py +55 -0
  207. cribl_control_plane/models/heartbeatmetadata.py +6 -11
  208. cribl_control_plane/models/input.py +89 -81
  209. cribl_control_plane/models/inputappscope.py +131 -35
  210. cribl_control_plane/models/inputazureblob.py +62 -6
  211. cribl_control_plane/models/inputcloudflarehec.py +518 -0
  212. cribl_control_plane/models/inputcollection.py +49 -6
  213. cribl_control_plane/models/inputconfluentcloud.py +262 -22
  214. cribl_control_plane/models/inputcribl.py +52 -9
  215. cribl_control_plane/models/inputcriblhttp.py +124 -33
  216. cribl_control_plane/models/inputcribllakehttp.py +199 -29
  217. cribl_control_plane/models/inputcriblmetrics.py +53 -9
  218. cribl_control_plane/models/inputcribltcp.py +125 -27
  219. cribl_control_plane/models/inputcrowdstrike.py +99 -10
  220. cribl_control_plane/models/inputdatadogagent.py +101 -27
  221. cribl_control_plane/models/inputdatagen.py +47 -4
  222. cribl_control_plane/models/inputedgeprometheus.py +215 -58
  223. cribl_control_plane/models/inputelastic.py +170 -39
  224. cribl_control_plane/models/inputeventhub.py +212 -9
  225. cribl_control_plane/models/inputexec.py +59 -6
  226. cribl_control_plane/models/inputfile.py +83 -15
  227. cribl_control_plane/models/inputfirehose.py +100 -27
  228. cribl_control_plane/models/inputgooglepubsub.py +83 -15
  229. cribl_control_plane/models/{inputgrafana_union.py → inputgrafana.py} +261 -67
  230. cribl_control_plane/models/inputhttp.py +100 -27
  231. cribl_control_plane/models/inputhttpraw.py +100 -27
  232. cribl_control_plane/models/inputjournalfiles.py +51 -7
  233. cribl_control_plane/models/inputkafka.py +257 -19
  234. cribl_control_plane/models/inputkinesis.py +133 -17
  235. cribl_control_plane/models/inputkubeevents.py +52 -9
  236. cribl_control_plane/models/inputkubelogs.py +66 -13
  237. cribl_control_plane/models/inputkubemetrics.py +66 -13
  238. cribl_control_plane/models/inputloki.py +116 -30
  239. cribl_control_plane/models/inputmetrics.py +97 -24
  240. cribl_control_plane/models/inputmodeldriventelemetry.py +110 -29
  241. cribl_control_plane/models/inputmsk.py +148 -21
  242. cribl_control_plane/models/inputnetflow.py +50 -7
  243. cribl_control_plane/models/inputoffice365mgmt.py +115 -17
  244. cribl_control_plane/models/inputoffice365msgtrace.py +117 -19
  245. cribl_control_plane/models/inputoffice365service.py +117 -19
  246. cribl_control_plane/models/inputopentelemetry.py +146 -35
  247. cribl_control_plane/models/inputprometheus.py +196 -47
  248. cribl_control_plane/models/inputprometheusrw.py +117 -30
  249. cribl_control_plane/models/inputrawudp.py +50 -7
  250. cribl_control_plane/models/inputs3.py +85 -8
  251. cribl_control_plane/models/inputs3inventory.py +99 -10
  252. cribl_control_plane/models/inputsecuritylake.py +100 -10
  253. cribl_control_plane/models/inputsnmp.py +115 -24
  254. cribl_control_plane/models/inputsplunk.py +133 -31
  255. cribl_control_plane/models/inputsplunkhec.py +122 -32
  256. cribl_control_plane/models/inputsplunksearch.py +115 -18
  257. cribl_control_plane/models/inputsqs.py +102 -19
  258. cribl_control_plane/models/{inputsyslog_union.py → inputsyslog.py} +193 -51
  259. cribl_control_plane/models/inputsystemmetrics.py +207 -37
  260. cribl_control_plane/models/inputsystemstate.py +66 -13
  261. cribl_control_plane/models/inputtcp.py +125 -29
  262. cribl_control_plane/models/inputtcpjson.py +115 -29
  263. cribl_control_plane/models/inputwef.py +151 -22
  264. cribl_control_plane/models/inputwindowsmetrics.py +191 -38
  265. cribl_control_plane/models/inputwineventlogs.py +93 -11
  266. cribl_control_plane/models/inputwiz.py +176 -11
  267. cribl_control_plane/models/inputwizwebhook.py +466 -0
  268. cribl_control_plane/models/inputzscalerhec.py +122 -32
  269. cribl_control_plane/models/jobinfo.py +34 -0
  270. cribl_control_plane/models/jobstatus.py +48 -0
  271. cribl_control_plane/models/lakedatasetmetrics.py +17 -0
  272. cribl_control_plane/models/lakehouseconnectiontype.py +2 -1
  273. cribl_control_plane/models/listconfiggroupbyproductop.py +46 -0
  274. cribl_control_plane/models/listmasterworkerentryop.py +64 -0
  275. cribl_control_plane/models/logininfo.py +3 -3
  276. cribl_control_plane/models/masterworkerentry.py +20 -13
  277. cribl_control_plane/models/nodeactiveupgradestatus.py +2 -1
  278. cribl_control_plane/models/nodefailedupgradestatus.py +2 -1
  279. cribl_control_plane/models/nodeprovidedinfo.py +13 -11
  280. cribl_control_plane/models/nodeskippedupgradestatus.py +2 -1
  281. cribl_control_plane/models/nodeupgradestate.py +2 -1
  282. cribl_control_plane/models/nodeupgradestatus.py +51 -5
  283. cribl_control_plane/models/outpostnodeinfo.py +16 -0
  284. cribl_control_plane/models/output.py +103 -89
  285. cribl_control_plane/models/outputazureblob.py +174 -21
  286. cribl_control_plane/models/outputazuredataexplorer.py +517 -93
  287. cribl_control_plane/models/outputazureeventhub.py +318 -34
  288. cribl_control_plane/models/outputazurelogs.py +145 -26
  289. cribl_control_plane/models/outputchronicle.py +532 -0
  290. cribl_control_plane/models/outputclickhouse.py +208 -37
  291. cribl_control_plane/models/outputcloudflarer2.py +632 -0
  292. cribl_control_plane/models/outputcloudwatch.py +132 -26
  293. cribl_control_plane/models/outputconfluentcloud.py +387 -46
  294. cribl_control_plane/models/outputcriblhttp.py +203 -36
  295. cribl_control_plane/models/outputcribllake.py +161 -21
  296. cribl_control_plane/models/outputcribltcp.py +199 -34
  297. cribl_control_plane/models/outputcrowdstrikenextgensiem.py +176 -32
  298. cribl_control_plane/models/outputdatabricks.py +501 -0
  299. cribl_control_plane/models/outputdatadog.py +204 -36
  300. cribl_control_plane/models/outputdataset.py +186 -34
  301. cribl_control_plane/models/outputdevnull.py +5 -5
  302. cribl_control_plane/models/outputdiskspool.py +22 -7
  303. cribl_control_plane/models/outputdls3.py +238 -29
  304. cribl_control_plane/models/outputdynatracehttp.py +211 -37
  305. cribl_control_plane/models/outputdynatraceotlp.py +213 -39
  306. cribl_control_plane/models/outputelastic.py +199 -30
  307. cribl_control_plane/models/outputelasticcloud.py +174 -29
  308. cribl_control_plane/models/outputexabeam.py +99 -13
  309. cribl_control_plane/models/outputfilesystem.py +139 -14
  310. cribl_control_plane/models/outputgooglechronicle.py +216 -35
  311. cribl_control_plane/models/outputgooglecloudlogging.py +177 -34
  312. cribl_control_plane/models/outputgooglecloudstorage.py +220 -29
  313. cribl_control_plane/models/outputgooglepubsub.py +138 -51
  314. cribl_control_plane/models/outputgrafanacloud.py +386 -70
  315. cribl_control_plane/models/outputgraphite.py +131 -28
  316. cribl_control_plane/models/outputhoneycomb.py +145 -26
  317. cribl_control_plane/models/outputhumiohec.py +165 -31
  318. cribl_control_plane/models/outputinfluxdb.py +165 -28
  319. cribl_control_plane/models/outputkafka.py +378 -41
  320. cribl_control_plane/models/outputkinesis.py +168 -30
  321. cribl_control_plane/models/outputloki.py +171 -27
  322. cribl_control_plane/models/outputmicrosoftfabric.py +540 -0
  323. cribl_control_plane/models/outputminio.py +228 -28
  324. cribl_control_plane/models/outputmsk.py +270 -43
  325. cribl_control_plane/models/outputnewrelic.py +176 -34
  326. cribl_control_plane/models/outputnewrelicevents.py +166 -31
  327. cribl_control_plane/models/outputopentelemetry.py +240 -40
  328. cribl_control_plane/models/outputprometheus.py +145 -26
  329. cribl_control_plane/models/outputring.py +54 -13
  330. cribl_control_plane/models/outputs3.py +238 -31
  331. cribl_control_plane/models/outputsecuritylake.py +182 -21
  332. cribl_control_plane/models/outputsentinel.py +175 -32
  333. cribl_control_plane/models/outputsentineloneaisiem.py +184 -38
  334. cribl_control_plane/models/outputservicenow.py +226 -41
  335. cribl_control_plane/models/outputsignalfx.py +145 -26
  336. cribl_control_plane/models/outputsns.py +146 -28
  337. cribl_control_plane/models/outputsplunk.py +209 -39
  338. cribl_control_plane/models/outputsplunkhec.py +243 -31
  339. cribl_control_plane/models/outputsplunklb.py +266 -46
  340. cribl_control_plane/models/outputsqs.py +166 -36
  341. cribl_control_plane/models/outputstatsd.py +130 -28
  342. cribl_control_plane/models/outputstatsdext.py +131 -28
  343. cribl_control_plane/models/outputsumologic.py +146 -25
  344. cribl_control_plane/models/outputsyslog.py +323 -51
  345. cribl_control_plane/models/outputtcpjson.py +191 -37
  346. cribl_control_plane/models/outputwavefront.py +145 -26
  347. cribl_control_plane/models/outputwebhook.py +216 -38
  348. cribl_control_plane/models/outputxsiam.py +148 -31
  349. cribl_control_plane/models/packinfo.py +11 -8
  350. cribl_control_plane/models/packinstallinfo.py +14 -11
  351. cribl_control_plane/models/packrequestbody_union.py +140 -0
  352. cribl_control_plane/models/packupgraderequest.py +26 -0
  353. cribl_control_plane/models/piisettings_union.py +31 -0
  354. cribl_control_plane/models/productscore.py +10 -0
  355. cribl_control_plane/models/rbacresource.py +2 -1
  356. cribl_control_plane/models/resourcepolicy.py +15 -2
  357. cribl_control_plane/models/rollbacksettings_union.py +44 -0
  358. cribl_control_plane/models/routeconf.py +3 -4
  359. cribl_control_plane/models/routes.py +0 -24
  360. cribl_control_plane/models/runnablejob.py +27 -0
  361. cribl_control_plane/models/runnablejobcollection.py +628 -0
  362. cribl_control_plane/models/runnablejobexecutor.py +360 -0
  363. cribl_control_plane/models/runnablejobscheduledsearch.py +279 -0
  364. cribl_control_plane/models/schemeclientoauth.py +5 -0
  365. cribl_control_plane/models/snisettings_union.py +31 -0
  366. cribl_control_plane/models/systemsettingsconf.py +291 -0
  367. cribl_control_plane/models/tlssettings_union.py +43 -0
  368. cribl_control_plane/models/updateconfiggroupbyproductandidop.py +56 -0
  369. cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +53 -0
  370. cribl_control_plane/models/updatecribllakedatasetbylakeidandidop.py +14 -29
  371. cribl_control_plane/models/updatehectokenrequest.py +7 -1
  372. cribl_control_plane/models/updateinputbyidop.py +5 -23
  373. cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +5 -23
  374. cribl_control_plane/models/updateoutputbyidop.py +5 -23
  375. cribl_control_plane/models/updatepacksbyidop.py +12 -50
  376. cribl_control_plane/models/updatepacksop.py +12 -24
  377. cribl_control_plane/models/updatepipelinebyidop.py +5 -23
  378. cribl_control_plane/models/updateroutesbyidop.py +8 -27
  379. cribl_control_plane/models/upgradegroupsettings_union.py +43 -0
  380. cribl_control_plane/models/upgradepackageurls.py +20 -0
  381. cribl_control_plane/models/upgradesettings.py +38 -0
  382. cribl_control_plane/models/uploadpackresponse.py +13 -0
  383. cribl_control_plane/models/{appmode.py → workertypes.py} +2 -5
  384. cribl_control_plane/{workers_sdk.py → nodes.py} +102 -234
  385. cribl_control_plane/packs.py +385 -184
  386. cribl_control_plane/pipelines.py +116 -66
  387. cribl_control_plane/routes_sdk.py +102 -70
  388. cribl_control_plane/samples.py +407 -0
  389. cribl_control_plane/sdk.py +35 -25
  390. cribl_control_plane/settings.py +20 -0
  391. cribl_control_plane/sources.py +143 -545
  392. cribl_control_plane/statuses.py +195 -0
  393. cribl_control_plane/summaries.py +195 -0
  394. cribl_control_plane/system_sdk.py +20 -0
  395. cribl_control_plane/teams.py +36 -28
  396. cribl_control_plane/tokens.py +210 -0
  397. cribl_control_plane/utils/__init__.py +18 -5
  398. cribl_control_plane/utils/annotations.py +32 -8
  399. cribl_control_plane/utils/eventstreaming.py +10 -0
  400. cribl_control_plane/utils/forms.py +21 -10
  401. cribl_control_plane/utils/queryparams.py +14 -2
  402. cribl_control_plane/utils/retries.py +69 -5
  403. cribl_control_plane/utils/security.py +5 -0
  404. cribl_control_plane/utils/unmarshal_json_response.py +15 -1
  405. cribl_control_plane/versions.py +31 -0
  406. cribl_control_plane/{distributed.py → versions_configs.py} +29 -35
  407. cribl_control_plane-0.4.0b23.dist-info/METADATA +855 -0
  408. cribl_control_plane-0.4.0b23.dist-info/RECORD +450 -0
  409. {cribl_control_plane-0.0.21.dist-info → cribl_control_plane-0.4.0b23.dist-info}/WHEEL +1 -1
  410. cribl_control_plane-0.4.0b23.dist-info/licenses/LICENSE +201 -0
  411. cribl_control_plane/errors/healthstatus_error.py +0 -32
  412. cribl_control_plane/models/createinputop.py +0 -18238
  413. cribl_control_plane/models/createoutputop.py +0 -18437
  414. cribl_control_plane/models/createpipelineop.py +0 -24
  415. cribl_control_plane/models/createproductsgroupsbyproductop.py +0 -54
  416. cribl_control_plane/models/createversionpushop.py +0 -23
  417. cribl_control_plane/models/createversionsyncop.py +0 -23
  418. cribl_control_plane/models/deletegroupsbyidop.py +0 -37
  419. cribl_control_plane/models/getgroupsaclbyidop.py +0 -63
  420. cribl_control_plane/models/getgroupsbyidop.py +0 -49
  421. cribl_control_plane/models/getgroupsconfigversionbyidop.py +0 -36
  422. cribl_control_plane/models/getproductsgroupsaclteamsbyproductandidop.py +0 -78
  423. cribl_control_plane/models/getproductsgroupsbyproductop.py +0 -58
  424. cribl_control_plane/models/getsummaryworkersop.py +0 -39
  425. cribl_control_plane/models/getversioncurrentbranchop.py +0 -23
  426. cribl_control_plane/models/getworkersop.py +0 -82
  427. cribl_control_plane/models/healthstatus.py +0 -33
  428. cribl_control_plane/models/packrequestbody.py +0 -75
  429. cribl_control_plane/models/restartresponse.py +0 -26
  430. cribl_control_plane/models/routesroute_input.py +0 -67
  431. cribl_control_plane/models/updategroupsbyidop.py +0 -48
  432. cribl_control_plane/models/updategroupsdeploybyidop.py +0 -46
  433. cribl_control_plane/models/updateworkersrestartop.py +0 -24
  434. cribl_control_plane/versioning.py +0 -2309
  435. cribl_control_plane-0.0.21.dist-info/METADATA +0 -561
  436. cribl_control_plane-0.0.21.dist-info/RECORD +0 -301
@@ -1,9 +1,13 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from cribl_control_plane import models, utils
4
5
  from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
5
7
  from enum import Enum
6
8
  import pydantic
9
+ from pydantic import field_serializer
10
+ from pydantic.functional_validators import PlainValidator
7
11
  from typing import List, Optional
8
12
  from typing_extensions import Annotated, NotRequired, TypedDict
9
13
 
@@ -23,20 +27,32 @@ class InputConfluentCloudConnection(BaseModel):
23
27
  pipeline: Optional[str] = None
24
28
 
25
29
 
26
- class InputConfluentCloudMode(str, Enum):
30
+ class InputConfluentCloudMode(str, Enum, metaclass=utils.OpenEnumMeta):
27
31
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
28
32
 
33
+ # Smart
29
34
  SMART = "smart"
35
+ # Always On
30
36
  ALWAYS = "always"
31
37
 
32
38
 
33
- class InputConfluentCloudCompression(str, Enum):
39
+ class InputConfluentCloudCompression(str, Enum, metaclass=utils.OpenEnumMeta):
34
40
  r"""Codec to use to compress the persisted data"""
35
41
 
42
+ # None
36
43
  NONE = "none"
44
+ # Gzip
37
45
  GZIP = "gzip"
38
46
 
39
47
 
48
+ class InputConfluentCloudPqControlsTypedDict(TypedDict):
49
+ pass
50
+
51
+
52
+ class InputConfluentCloudPqControls(BaseModel):
53
+ pass
54
+
55
+
40
56
  class InputConfluentCloudPqTypedDict(TypedDict):
41
57
  mode: NotRequired[InputConfluentCloudMode]
42
58
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
@@ -52,10 +68,13 @@ class InputConfluentCloudPqTypedDict(TypedDict):
52
68
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
53
69
  compress: NotRequired[InputConfluentCloudCompression]
54
70
  r"""Codec to use to compress the persisted data"""
71
+ pq_controls: NotRequired[InputConfluentCloudPqControlsTypedDict]
55
72
 
56
73
 
57
74
  class InputConfluentCloudPq(BaseModel):
58
- mode: Optional[InputConfluentCloudMode] = InputConfluentCloudMode.ALWAYS
75
+ mode: Annotated[
76
+ Optional[InputConfluentCloudMode], PlainValidator(validate_open_enum(False))
77
+ ] = InputConfluentCloudMode.ALWAYS
59
78
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
60
79
 
61
80
  max_buffer_size: Annotated[
@@ -79,20 +98,43 @@ class InputConfluentCloudPq(BaseModel):
79
98
  path: Optional[str] = "$CRIBL_HOME/state/queues"
80
99
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
81
100
 
82
- compress: Optional[InputConfluentCloudCompression] = (
83
- InputConfluentCloudCompression.NONE
84
- )
101
+ compress: Annotated[
102
+ Optional[InputConfluentCloudCompression],
103
+ PlainValidator(validate_open_enum(False)),
104
+ ] = InputConfluentCloudCompression.NONE
85
105
  r"""Codec to use to compress the persisted data"""
86
106
 
107
+ pq_controls: Annotated[
108
+ Optional[InputConfluentCloudPqControls], pydantic.Field(alias="pqControls")
109
+ ] = None
87
110
 
88
- class InputConfluentCloudMinimumTLSVersion(str, Enum):
111
+ @field_serializer("mode")
112
+ def serialize_mode(self, value):
113
+ if isinstance(value, str):
114
+ try:
115
+ return models.InputConfluentCloudMode(value)
116
+ except ValueError:
117
+ return value
118
+ return value
119
+
120
+ @field_serializer("compress")
121
+ def serialize_compress(self, value):
122
+ if isinstance(value, str):
123
+ try:
124
+ return models.InputConfluentCloudCompression(value)
125
+ except ValueError:
126
+ return value
127
+ return value
128
+
129
+
130
+ class InputConfluentCloudMinimumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
89
131
  TL_SV1 = "TLSv1"
90
132
  TL_SV1_1 = "TLSv1.1"
91
133
  TL_SV1_2 = "TLSv1.2"
92
134
  TL_SV1_3 = "TLSv1.3"
93
135
 
94
136
 
95
- class InputConfluentCloudMaximumTLSVersion(str, Enum):
137
+ class InputConfluentCloudMaximumTLSVersion(str, Enum, metaclass=utils.OpenEnumMeta):
96
138
  TL_SV1 = "TLSv1"
97
139
  TL_SV1_1 = "TLSv1.1"
98
140
  TL_SV1_2 = "TLSv1.2"
@@ -152,15 +194,39 @@ class InputConfluentCloudTLSSettingsClientSide(BaseModel):
152
194
  r"""Passphrase to use to decrypt private key"""
153
195
 
154
196
  min_version: Annotated[
155
- Optional[InputConfluentCloudMinimumTLSVersion],
197
+ Annotated[
198
+ Optional[InputConfluentCloudMinimumTLSVersion],
199
+ PlainValidator(validate_open_enum(False)),
200
+ ],
156
201
  pydantic.Field(alias="minVersion"),
157
202
  ] = None
158
203
 
159
204
  max_version: Annotated[
160
- Optional[InputConfluentCloudMaximumTLSVersion],
205
+ Annotated[
206
+ Optional[InputConfluentCloudMaximumTLSVersion],
207
+ PlainValidator(validate_open_enum(False)),
208
+ ],
161
209
  pydantic.Field(alias="maxVersion"),
162
210
  ] = None
163
211
 
212
+ @field_serializer("min_version")
213
+ def serialize_min_version(self, value):
214
+ if isinstance(value, str):
215
+ try:
216
+ return models.InputConfluentCloudMinimumTLSVersion(value)
217
+ except ValueError:
218
+ return value
219
+ return value
220
+
221
+ @field_serializer("max_version")
222
+ def serialize_max_version(self, value):
223
+ if isinstance(value, str):
224
+ try:
225
+ return models.InputConfluentCloudMaximumTLSVersion(value)
226
+ except ValueError:
227
+ return value
228
+ return value
229
+
164
230
 
165
231
  class InputConfluentCloudAuthTypedDict(TypedDict):
166
232
  r"""Credentials to use when authenticating with the schema registry using basic HTTP authentication"""
@@ -181,14 +247,18 @@ class InputConfluentCloudAuth(BaseModel):
181
247
  r"""Select or create a secret that references your credentials"""
182
248
 
183
249
 
184
- class InputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion(str, Enum):
250
+ class InputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion(
251
+ str, Enum, metaclass=utils.OpenEnumMeta
252
+ ):
185
253
  TL_SV1 = "TLSv1"
186
254
  TL_SV1_1 = "TLSv1.1"
187
255
  TL_SV1_2 = "TLSv1.2"
188
256
  TL_SV1_3 = "TLSv1.3"
189
257
 
190
258
 
191
- class InputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion(str, Enum):
259
+ class InputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion(
260
+ str, Enum, metaclass=utils.OpenEnumMeta
261
+ ):
192
262
  TL_SV1 = "TLSv1"
193
263
  TL_SV1_1 = "TLSv1.1"
194
264
  TL_SV1_2 = "TLSv1.2"
@@ -248,15 +318,43 @@ class InputConfluentCloudKafkaSchemaRegistryTLSSettingsClientSide(BaseModel):
248
318
  r"""Passphrase to use to decrypt private key"""
249
319
 
250
320
  min_version: Annotated[
251
- Optional[InputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion],
321
+ Annotated[
322
+ Optional[InputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion],
323
+ PlainValidator(validate_open_enum(False)),
324
+ ],
252
325
  pydantic.Field(alias="minVersion"),
253
326
  ] = None
254
327
 
255
328
  max_version: Annotated[
256
- Optional[InputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion],
329
+ Annotated[
330
+ Optional[InputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion],
331
+ PlainValidator(validate_open_enum(False)),
332
+ ],
257
333
  pydantic.Field(alias="maxVersion"),
258
334
  ] = None
259
335
 
336
+ @field_serializer("min_version")
337
+ def serialize_min_version(self, value):
338
+ if isinstance(value, str):
339
+ try:
340
+ return models.InputConfluentCloudKafkaSchemaRegistryMinimumTLSVersion(
341
+ value
342
+ )
343
+ except ValueError:
344
+ return value
345
+ return value
346
+
347
+ @field_serializer("max_version")
348
+ def serialize_max_version(self, value):
349
+ if isinstance(value, str):
350
+ try:
351
+ return models.InputConfluentCloudKafkaSchemaRegistryMaximumTLSVersion(
352
+ value
353
+ )
354
+ except ValueError:
355
+ return value
356
+ return value
357
+
260
358
 
261
359
  class InputConfluentCloudKafkaSchemaRegistryAuthenticationTypedDict(TypedDict):
262
360
  disabled: NotRequired[bool]
@@ -302,18 +400,76 @@ class InputConfluentCloudKafkaSchemaRegistryAuthentication(BaseModel):
302
400
  tls: Optional[InputConfluentCloudKafkaSchemaRegistryTLSSettingsClientSide] = None
303
401
 
304
402
 
305
- class InputConfluentCloudSASLMechanism(str, Enum):
403
+ class InputConfluentCloudAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
404
+ r"""Enter credentials directly, or select a stored secret"""
405
+
406
+ MANUAL = "manual"
407
+ SECRET = "secret"
408
+
409
+
410
+ class InputConfluentCloudSASLMechanism(str, Enum, metaclass=utils.OpenEnumMeta):
411
+ # PLAIN
306
412
  PLAIN = "plain"
413
+ # SCRAM-SHA-256
307
414
  SCRAM_SHA_256 = "scram-sha-256"
415
+ # SCRAM-SHA-512
308
416
  SCRAM_SHA_512 = "scram-sha-512"
417
+ # GSSAPI/Kerberos
309
418
  KERBEROS = "kerberos"
310
419
 
311
420
 
421
+ class InputConfluentCloudOauthParamTypedDict(TypedDict):
422
+ name: str
423
+ value: str
424
+
425
+
426
+ class InputConfluentCloudOauthParam(BaseModel):
427
+ name: str
428
+
429
+ value: str
430
+
431
+
432
+ class InputConfluentCloudSaslExtensionTypedDict(TypedDict):
433
+ name: str
434
+ value: str
435
+
436
+
437
+ class InputConfluentCloudSaslExtension(BaseModel):
438
+ name: str
439
+
440
+ value: str
441
+
442
+
312
443
  class InputConfluentCloudAuthenticationTypedDict(TypedDict):
313
444
  r"""Authentication parameters to use when connecting to brokers. Using TLS is highly recommended."""
314
445
 
315
446
  disabled: NotRequired[bool]
447
+ username: NotRequired[str]
448
+ password: NotRequired[str]
449
+ auth_type: NotRequired[InputConfluentCloudAuthenticationMethod]
450
+ r"""Enter credentials directly, or select a stored secret"""
451
+ credentials_secret: NotRequired[str]
452
+ r"""Select or create a secret that references your credentials"""
316
453
  mechanism: NotRequired[InputConfluentCloudSASLMechanism]
454
+ keytab_location: NotRequired[str]
455
+ r"""Location of keytab file for authentication principal"""
456
+ principal: NotRequired[str]
457
+ r"""Authentication principal, such as `kafka_user@example.com`"""
458
+ broker_service_class: NotRequired[str]
459
+ r"""Kerberos service class for Kafka brokers, such as `kafka`"""
460
+ oauth_enabled: NotRequired[bool]
461
+ r"""Enable OAuth authentication"""
462
+ token_url: NotRequired[str]
463
+ r"""URL of the token endpoint to use for OAuth authentication"""
464
+ client_id: NotRequired[str]
465
+ r"""Client ID to use for OAuth authentication"""
466
+ oauth_secret_type: NotRequired[str]
467
+ client_text_secret: NotRequired[str]
468
+ r"""Select or create a stored text secret"""
469
+ oauth_params: NotRequired[List[InputConfluentCloudOauthParamTypedDict]]
470
+ r"""Additional fields to send to the token endpoint, such as scope or audience"""
471
+ sasl_extensions: NotRequired[List[InputConfluentCloudSaslExtensionTypedDict]]
472
+ r"""Additional SASL extension fields, such as Confluent's logicalCluster or identityPoolId"""
317
473
 
318
474
 
319
475
  class InputConfluentCloudAuthentication(BaseModel):
@@ -321,9 +477,91 @@ class InputConfluentCloudAuthentication(BaseModel):
321
477
 
322
478
  disabled: Optional[bool] = True
323
479
 
324
- mechanism: Optional[InputConfluentCloudSASLMechanism] = (
325
- InputConfluentCloudSASLMechanism.PLAIN
480
+ username: Optional[str] = None
481
+
482
+ password: Optional[str] = None
483
+
484
+ auth_type: Annotated[
485
+ Annotated[
486
+ Optional[InputConfluentCloudAuthenticationMethod],
487
+ PlainValidator(validate_open_enum(False)),
488
+ ],
489
+ pydantic.Field(alias="authType"),
490
+ ] = InputConfluentCloudAuthenticationMethod.MANUAL
491
+ r"""Enter credentials directly, or select a stored secret"""
492
+
493
+ credentials_secret: Annotated[
494
+ Optional[str], pydantic.Field(alias="credentialsSecret")
495
+ ] = None
496
+ r"""Select or create a secret that references your credentials"""
497
+
498
+ mechanism: Annotated[
499
+ Optional[InputConfluentCloudSASLMechanism],
500
+ PlainValidator(validate_open_enum(False)),
501
+ ] = InputConfluentCloudSASLMechanism.PLAIN
502
+
503
+ keytab_location: Annotated[
504
+ Optional[str], pydantic.Field(alias="keytabLocation")
505
+ ] = None
506
+ r"""Location of keytab file for authentication principal"""
507
+
508
+ principal: Optional[str] = None
509
+ r"""Authentication principal, such as `kafka_user@example.com`"""
510
+
511
+ broker_service_class: Annotated[
512
+ Optional[str], pydantic.Field(alias="brokerServiceClass")
513
+ ] = None
514
+ r"""Kerberos service class for Kafka brokers, such as `kafka`"""
515
+
516
+ oauth_enabled: Annotated[Optional[bool], pydantic.Field(alias="oauthEnabled")] = (
517
+ False
326
518
  )
519
+ r"""Enable OAuth authentication"""
520
+
521
+ token_url: Annotated[Optional[str], pydantic.Field(alias="tokenUrl")] = None
522
+ r"""URL of the token endpoint to use for OAuth authentication"""
523
+
524
+ client_id: Annotated[Optional[str], pydantic.Field(alias="clientId")] = None
525
+ r"""Client ID to use for OAuth authentication"""
526
+
527
+ oauth_secret_type: Annotated[
528
+ Optional[str], pydantic.Field(alias="oauthSecretType")
529
+ ] = "secret"
530
+
531
+ client_text_secret: Annotated[
532
+ Optional[str], pydantic.Field(alias="clientTextSecret")
533
+ ] = None
534
+ r"""Select or create a stored text secret"""
535
+
536
+ oauth_params: Annotated[
537
+ Optional[List[InputConfluentCloudOauthParam]],
538
+ pydantic.Field(alias="oauthParams"),
539
+ ] = None
540
+ r"""Additional fields to send to the token endpoint, such as scope or audience"""
541
+
542
+ sasl_extensions: Annotated[
543
+ Optional[List[InputConfluentCloudSaslExtension]],
544
+ pydantic.Field(alias="saslExtensions"),
545
+ ] = None
546
+ r"""Additional SASL extension fields, such as Confluent's logicalCluster or identityPoolId"""
547
+
548
+ @field_serializer("auth_type")
549
+ def serialize_auth_type(self, value):
550
+ if isinstance(value, str):
551
+ try:
552
+ return models.InputConfluentCloudAuthenticationMethod(value)
553
+ except ValueError:
554
+ return value
555
+ return value
556
+
557
+ @field_serializer("mechanism")
558
+ def serialize_mechanism(self, value):
559
+ if isinstance(value, str):
560
+ try:
561
+ return models.InputConfluentCloudSASLMechanism(value)
562
+ except ValueError:
563
+ return value
564
+ return value
327
565
 
328
566
 
329
567
  class InputConfluentCloudMetadatumTypedDict(TypedDict):
@@ -340,13 +578,13 @@ class InputConfluentCloudMetadatum(BaseModel):
340
578
 
341
579
 
342
580
  class InputConfluentCloudTypedDict(TypedDict):
581
+ type: InputConfluentCloudType
343
582
  brokers: List[str]
344
583
  r"""List of Confluent Cloud bootstrap servers to use, such as yourAccount.confluent.cloud:9092"""
345
584
  topics: List[str]
346
585
  r"""Topic to subscribe to. Warning: To optimize performance, Cribl suggests subscribing each Kafka Source to a single topic only."""
347
586
  id: NotRequired[str]
348
587
  r"""Unique ID for this input"""
349
- type: NotRequired[InputConfluentCloudType]
350
588
  disabled: NotRequired[bool]
351
589
  pipeline: NotRequired[str]
352
590
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -388,7 +626,8 @@ class InputConfluentCloudTypedDict(TypedDict):
388
626
  sasl: NotRequired[InputConfluentCloudAuthenticationTypedDict]
389
627
  r"""Authentication parameters to use when connecting to brokers. Using TLS is highly recommended."""
390
628
  session_timeout: NotRequired[float]
391
- r"""Timeout used to detect client failures when using Kafka's group-management facilities.
629
+ r"""
630
+ Timeout used to detect client failures when using Kafka's group-management facilities.
392
631
  If the client sends no heartbeats to the broker before the timeout expires,
393
632
  the broker will remove the client from the group and initiate a rebalance.
394
633
  Value must be between the broker's configured group.min.session.timeout.ms and group.max.session.timeout.ms.
@@ -420,6 +659,8 @@ class InputConfluentCloudTypedDict(TypedDict):
420
659
 
421
660
 
422
661
  class InputConfluentCloud(BaseModel):
662
+ type: InputConfluentCloudType
663
+
423
664
  brokers: List[str]
424
665
  r"""List of Confluent Cloud bootstrap servers to use, such as yourAccount.confluent.cloud:9092"""
425
666
 
@@ -429,8 +670,6 @@ class InputConfluentCloud(BaseModel):
429
670
  id: Optional[str] = None
430
671
  r"""Unique ID for this input"""
431
672
 
432
- type: Optional[InputConfluentCloudType] = None
433
-
434
673
  disabled: Optional[bool] = False
435
674
 
436
675
  pipeline: Optional[str] = None
@@ -510,7 +749,8 @@ class InputConfluentCloud(BaseModel):
510
749
  session_timeout: Annotated[
511
750
  Optional[float], pydantic.Field(alias="sessionTimeout")
512
751
  ] = 30000
513
- r"""Timeout used to detect client failures when using Kafka's group-management facilities.
752
+ r"""
753
+ Timeout used to detect client failures when using Kafka's group-management facilities.
514
754
  If the client sends no heartbeats to the broker before the timeout expires,
515
755
  the broker will remove the client from the group and initiate a rebalance.
516
756
  Value must be between the broker's configured group.min.session.timeout.ms and group.max.session.timeout.ms.
@@ -1,9 +1,13 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
+ from cribl_control_plane import models, utils
4
5
  from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
5
7
  from enum import Enum
6
8
  import pydantic
9
+ from pydantic import field_serializer
10
+ from pydantic.functional_validators import PlainValidator
7
11
  from typing import List, Optional
8
12
  from typing_extensions import Annotated, NotRequired, TypedDict
9
13
 
@@ -23,20 +27,32 @@ class InputCriblConnection(BaseModel):
23
27
  pipeline: Optional[str] = None
24
28
 
25
29
 
26
- class InputCriblMode(str, Enum):
30
+ class InputCriblMode(str, Enum, metaclass=utils.OpenEnumMeta):
27
31
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
28
32
 
33
+ # Smart
29
34
  SMART = "smart"
35
+ # Always On
30
36
  ALWAYS = "always"
31
37
 
32
38
 
33
- class InputCriblCompression(str, Enum):
39
+ class InputCriblCompression(str, Enum, metaclass=utils.OpenEnumMeta):
34
40
  r"""Codec to use to compress the persisted data"""
35
41
 
42
+ # None
36
43
  NONE = "none"
44
+ # Gzip
37
45
  GZIP = "gzip"
38
46
 
39
47
 
48
+ class InputCriblPqControlsTypedDict(TypedDict):
49
+ pass
50
+
51
+
52
+ class InputCriblPqControls(BaseModel):
53
+ pass
54
+
55
+
40
56
  class InputCriblPqTypedDict(TypedDict):
41
57
  mode: NotRequired[InputCriblMode]
42
58
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
@@ -52,10 +68,13 @@ class InputCriblPqTypedDict(TypedDict):
52
68
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
53
69
  compress: NotRequired[InputCriblCompression]
54
70
  r"""Codec to use to compress the persisted data"""
71
+ pq_controls: NotRequired[InputCriblPqControlsTypedDict]
55
72
 
56
73
 
57
74
  class InputCriblPq(BaseModel):
58
- mode: Optional[InputCriblMode] = InputCriblMode.ALWAYS
75
+ mode: Annotated[
76
+ Optional[InputCriblMode], PlainValidator(validate_open_enum(False))
77
+ ] = InputCriblMode.ALWAYS
59
78
  r"""With Smart mode, PQ will write events to the filesystem only when it detects backpressure from the processing engine. With Always On mode, PQ will always write events directly to the queue before forwarding them to the processing engine."""
60
79
 
61
80
  max_buffer_size: Annotated[
@@ -79,9 +98,33 @@ class InputCriblPq(BaseModel):
79
98
  path: Optional[str] = "$CRIBL_HOME/state/queues"
80
99
  r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
81
100
 
82
- compress: Optional[InputCriblCompression] = InputCriblCompression.NONE
101
+ compress: Annotated[
102
+ Optional[InputCriblCompression], PlainValidator(validate_open_enum(False))
103
+ ] = InputCriblCompression.NONE
83
104
  r"""Codec to use to compress the persisted data"""
84
105
 
106
+ pq_controls: Annotated[
107
+ Optional[InputCriblPqControls], pydantic.Field(alias="pqControls")
108
+ ] = None
109
+
110
+ @field_serializer("mode")
111
+ def serialize_mode(self, value):
112
+ if isinstance(value, str):
113
+ try:
114
+ return models.InputCriblMode(value)
115
+ except ValueError:
116
+ return value
117
+ return value
118
+
119
+ @field_serializer("compress")
120
+ def serialize_compress(self, value):
121
+ if isinstance(value, str):
122
+ try:
123
+ return models.InputCriblCompression(value)
124
+ except ValueError:
125
+ return value
126
+ return value
127
+
85
128
 
86
129
  class InputCriblMetadatumTypedDict(TypedDict):
87
130
  name: str
@@ -97,9 +140,9 @@ class InputCriblMetadatum(BaseModel):
97
140
 
98
141
 
99
142
  class InputCriblTypedDict(TypedDict):
100
- id: str
101
- r"""Unique ID for this input"""
102
143
  type: InputCriblType
144
+ id: NotRequired[str]
145
+ r"""Unique ID for this input"""
103
146
  disabled: NotRequired[bool]
104
147
  pipeline: NotRequired[str]
105
148
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -121,11 +164,11 @@ class InputCriblTypedDict(TypedDict):
121
164
 
122
165
 
123
166
  class InputCribl(BaseModel):
124
- id: str
125
- r"""Unique ID for this input"""
126
-
127
167
  type: InputCriblType
128
168
 
169
+ id: Optional[str] = None
170
+ r"""Unique ID for this input"""
171
+
129
172
  disabled: Optional[bool] = False
130
173
 
131
174
  pipeline: Optional[str] = None