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
@@ -2,8 +2,9 @@
2
2
 
3
3
  from __future__ import annotations
4
4
  from cribl_control_plane.types import BaseModel
5
+ import pydantic
5
6
  from typing import List, Optional
6
- from typing_extensions import NotRequired, TypedDict
7
+ from typing_extensions import Annotated, NotRequired, TypedDict
7
8
 
8
9
 
9
10
  class AddHecTokenRequestMetadatumTypedDict(TypedDict):
@@ -19,6 +20,7 @@ class AddHecTokenRequestMetadatum(BaseModel):
19
20
 
20
21
  class AddHecTokenRequestTypedDict(TypedDict):
21
22
  token: str
23
+ allowed_indexes_at_token: NotRequired[List[str]]
22
24
  description: NotRequired[str]
23
25
  enabled: NotRequired[bool]
24
26
  metadata: NotRequired[List[AddHecTokenRequestMetadatumTypedDict]]
@@ -27,6 +29,10 @@ class AddHecTokenRequestTypedDict(TypedDict):
27
29
  class AddHecTokenRequest(BaseModel):
28
30
  token: str
29
31
 
32
+ allowed_indexes_at_token: Annotated[
33
+ Optional[List[str]], pydantic.Field(alias="allowedIndexesAtToken")
34
+ ] = None
35
+
30
36
  description: Optional[str] = None
31
37
 
32
38
  enabled: Optional[bool] = None
@@ -2,12 +2,16 @@
2
2
 
3
3
  from __future__ import annotations
4
4
  from cribl_control_plane.types import BaseModel
5
- from typing_extensions import TypedDict
5
+ import pydantic
6
+ from typing_extensions import Annotated, TypedDict
6
7
 
7
8
 
8
9
  class AuthTokenTypedDict(TypedDict):
10
+ force_password_change: bool
9
11
  token: str
10
12
 
11
13
 
12
14
  class AuthToken(BaseModel):
15
+ force_password_change: Annotated[bool, pydantic.Field(alias="forcePasswordChange")]
16
+
13
17
  token: str
@@ -0,0 +1,37 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane.types import BaseModel
5
+ import pydantic
6
+ from typing import Union
7
+ from typing_extensions import Annotated, TypeAliasType, TypedDict
8
+
9
+
10
+ class BackupsSettings2TypedDict(TypedDict):
11
+ pass
12
+
13
+
14
+ class BackupsSettings2(BaseModel):
15
+ pass
16
+
17
+
18
+ class BackupsSettings1TypedDict(TypedDict):
19
+ backup_persistence: str
20
+ backups_directory: str
21
+
22
+
23
+ class BackupsSettings1(BaseModel):
24
+ backup_persistence: Annotated[str, pydantic.Field(alias="backupPersistence")]
25
+
26
+ backups_directory: Annotated[str, pydantic.Field(alias="backupsDirectory")]
27
+
28
+
29
+ BackupsSettingsUnionTypedDict = TypeAliasType(
30
+ "BackupsSettingsUnionTypedDict",
31
+ Union[BackupsSettings2TypedDict, BackupsSettings1TypedDict],
32
+ )
33
+
34
+
35
+ BackupsSettingsUnion = TypeAliasType(
36
+ "BackupsSettingsUnion", Union[BackupsSettings2, BackupsSettings1]
37
+ )
@@ -5,9 +5,9 @@ from cribl_control_plane.types import BaseModel
5
5
  from typing_extensions import TypedDict
6
6
 
7
7
 
8
- class LookupVersionsTypedDict(TypedDict):
9
- pass
8
+ class BranchInfoTypedDict(TypedDict):
9
+ id: str
10
10
 
11
11
 
12
- class LookupVersions(BaseModel):
13
- pass
12
+ class BranchInfo(BaseModel):
13
+ id: str
@@ -3,8 +3,12 @@
3
3
  from __future__ import annotations
4
4
  from .cacheconnectionbackfillstatus import CacheConnectionBackfillStatus
5
5
  from .lakehouseconnectiontype import LakehouseConnectionType
6
+ from cribl_control_plane import models
6
7
  from cribl_control_plane.types import BaseModel
8
+ from cribl_control_plane.utils import validate_open_enum
7
9
  import pydantic
10
+ from pydantic import field_serializer
11
+ from pydantic.functional_validators import PlainValidator
8
12
  from typing import List, Optional
9
13
  from typing_extensions import Annotated, NotRequired, TypedDict
10
14
 
@@ -31,14 +35,38 @@ class CacheConnection(BaseModel):
31
35
  ] = None
32
36
 
33
37
  backfill_status: Annotated[
34
- Optional[CacheConnectionBackfillStatus], pydantic.Field(alias="backfillStatus")
38
+ Annotated[
39
+ Optional[CacheConnectionBackfillStatus],
40
+ PlainValidator(validate_open_enum(False)),
41
+ ],
42
+ pydantic.Field(alias="backfillStatus"),
35
43
  ] = None
36
44
 
37
45
  lakehouse_connection_type: Annotated[
38
- Optional[LakehouseConnectionType],
46
+ Annotated[
47
+ Optional[LakehouseConnectionType], PlainValidator(validate_open_enum(False))
48
+ ],
39
49
  pydantic.Field(alias="lakehouseConnectionType"),
40
50
  ] = None
41
51
 
42
52
  migration_query_id: Annotated[
43
53
  Optional[str], pydantic.Field(alias="migrationQueryId")
44
54
  ] = None
55
+
56
+ @field_serializer("backfill_status")
57
+ def serialize_backfill_status(self, value):
58
+ if isinstance(value, str):
59
+ try:
60
+ return models.CacheConnectionBackfillStatus(value)
61
+ except ValueError:
62
+ return value
63
+ return value
64
+
65
+ @field_serializer("lakehouse_connection_type")
66
+ def serialize_lakehouse_connection_type(self, value):
67
+ if isinstance(value, str):
68
+ try:
69
+ return models.LakehouseConnectionType(value)
70
+ except ValueError:
71
+ return value
72
+ return value
@@ -1,10 +1,11 @@
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 utils
4
5
  from enum import Enum
5
6
 
6
7
 
7
- class CacheConnectionBackfillStatus(str, Enum):
8
+ class CacheConnectionBackfillStatus(str, Enum, metaclass=utils.OpenEnumMeta):
8
9
  SCHEDULED = "scheduled"
9
10
  PENDING = "pending"
10
11
  STARTED = "started"
@@ -1,9 +1,10 @@
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 utils
4
5
  from enum import Enum
5
6
 
6
7
 
7
- class CloudProvider(str, Enum):
8
+ class CloudProvider(str, Enum, metaclass=utils.OpenEnumMeta):
8
9
  AWS = "aws"
9
10
  AZURE = "azure"
@@ -0,0 +1,130 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane import models, utils
5
+ from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
7
+ from enum import Enum
8
+ import pydantic
9
+ from pydantic import field_serializer
10
+ from pydantic.functional_validators import PlainValidator
11
+ from typing import List, Optional
12
+ from typing_extensions import Annotated, NotRequired, TypedDict
13
+
14
+
15
+ class CollectorAzureBlobType(str, Enum):
16
+ r"""Collector type: azure_blob"""
17
+
18
+ AZURE_BLOB = "azure_blob"
19
+
20
+
21
+ class CollectorAzureBlobAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
22
+ r"""Enter authentication data directly, or select a secret referencing your auth data"""
23
+
24
+ MANUAL = "manual"
25
+ SECRET = "secret"
26
+ CLIENT_SECRET = "clientSecret"
27
+ CLIENT_CERT = "clientCert"
28
+
29
+
30
+ class CollectorAzureBlobExtractorTypedDict(TypedDict):
31
+ key: str
32
+ r"""A token from the template path, such as epoch"""
33
+ expression: str
34
+ r"""A JavaScript expression that accesses a corresponding <token> through the value variable and evaluates the token to populate event fields. Example: {date: new Date(+value*1000)}"""
35
+
36
+
37
+ class CollectorAzureBlobExtractor(BaseModel):
38
+ key: str
39
+ r"""A token from the template path, such as epoch"""
40
+
41
+ expression: str
42
+ r"""A JavaScript expression that accesses a corresponding <token> through the value variable and evaluates the token to populate event fields. Example: {date: new Date(+value*1000)}"""
43
+
44
+
45
+ class CollectorAzureBlobTypedDict(TypedDict):
46
+ type: CollectorAzureBlobType
47
+ r"""Collector type: azure_blob"""
48
+ container_name: str
49
+ r"""Container to collect from. This value can be a constant, or a JavaScript expression that can only be evaluated at init time. Example referencing a Global Variable: myBucket-${C.vars.myVar}"""
50
+ output_name: NotRequired[str]
51
+ r"""An optional predefined Destination that will be used to auto-populate Collector settings"""
52
+ auth_type: NotRequired[CollectorAzureBlobAuthenticationMethod]
53
+ r"""Enter authentication data directly, or select a secret referencing your auth data"""
54
+ path: NotRequired[str]
55
+ r"""The directory from which to collect data. Templating is supported, such as myDir/${datacenter}/${host}/${app}/. Time-based tokens are supported, such as myOtherDir/${_time:%Y}/${_time:%m}/${_time:%d}/."""
56
+ extractors: NotRequired[List[CollectorAzureBlobExtractorTypedDict]]
57
+ r"""Extractors allow use of template tokens as context for expressions that enrich discovery results. For example, given a template /path/${epoch}, an extractor under key \"epoch\" with an expression {date: new Date(+value*1000)} will enrich discovery results with a human-readable \"date\" field."""
58
+ recurse: NotRequired[bool]
59
+ r"""Recurse through subdirectories"""
60
+ include_metadata: NotRequired[bool]
61
+ r"""Include Azure Blob metadata in collected events. In each event, metadata will be located at: __collectible.metadata."""
62
+ include_tags: NotRequired[bool]
63
+ r"""Include Azure Blob tags in collected events. In each event, tags will be located at: __collectible.tags. Disable this feature when using a Shared Access Signature Connection String, to prevent errors."""
64
+ max_batch_size: NotRequired[float]
65
+ r"""Maximum number of metadata objects to batch before recording as results"""
66
+ parquet_chunk_size_mb: NotRequired[float]
67
+ r"""Maximum file size for each Parquet chunk"""
68
+ parquet_chunk_download_timeout: NotRequired[float]
69
+ r"""The maximum time allowed for downloading a Parquet chunk. Processing will abort if a chunk cannot be downloaded within the time specified."""
70
+
71
+
72
+ class CollectorAzureBlob(BaseModel):
73
+ type: CollectorAzureBlobType
74
+ r"""Collector type: azure_blob"""
75
+
76
+ container_name: Annotated[str, pydantic.Field(alias="containerName")]
77
+ r"""Container to collect from. This value can be a constant, or a JavaScript expression that can only be evaluated at init time. Example referencing a Global Variable: myBucket-${C.vars.myVar}"""
78
+
79
+ output_name: Annotated[Optional[str], pydantic.Field(alias="outputName")] = None
80
+ r"""An optional predefined Destination that will be used to auto-populate Collector settings"""
81
+
82
+ auth_type: Annotated[
83
+ Annotated[
84
+ Optional[CollectorAzureBlobAuthenticationMethod],
85
+ PlainValidator(validate_open_enum(False)),
86
+ ],
87
+ pydantic.Field(alias="authType"),
88
+ ] = CollectorAzureBlobAuthenticationMethod.MANUAL
89
+ r"""Enter authentication data directly, or select a secret referencing your auth data"""
90
+
91
+ path: Optional[str] = None
92
+ r"""The directory from which to collect data. Templating is supported, such as myDir/${datacenter}/${host}/${app}/. Time-based tokens are supported, such as myOtherDir/${_time:%Y}/${_time:%m}/${_time:%d}/."""
93
+
94
+ extractors: Optional[List[CollectorAzureBlobExtractor]] = None
95
+ r"""Extractors allow use of template tokens as context for expressions that enrich discovery results. For example, given a template /path/${epoch}, an extractor under key \"epoch\" with an expression {date: new Date(+value*1000)} will enrich discovery results with a human-readable \"date\" field."""
96
+
97
+ recurse: Optional[bool] = True
98
+ r"""Recurse through subdirectories"""
99
+
100
+ include_metadata: Annotated[
101
+ Optional[bool], pydantic.Field(alias="includeMetadata")
102
+ ] = True
103
+ r"""Include Azure Blob metadata in collected events. In each event, metadata will be located at: __collectible.metadata."""
104
+
105
+ include_tags: Annotated[Optional[bool], pydantic.Field(alias="includeTags")] = True
106
+ r"""Include Azure Blob tags in collected events. In each event, tags will be located at: __collectible.tags. Disable this feature when using a Shared Access Signature Connection String, to prevent errors."""
107
+
108
+ max_batch_size: Annotated[Optional[float], pydantic.Field(alias="maxBatchSize")] = (
109
+ 10
110
+ )
111
+ r"""Maximum number of metadata objects to batch before recording as results"""
112
+
113
+ parquet_chunk_size_mb: Annotated[
114
+ Optional[float], pydantic.Field(alias="parquetChunkSizeMB")
115
+ ] = 5
116
+ r"""Maximum file size for each Parquet chunk"""
117
+
118
+ parquet_chunk_download_timeout: Annotated[
119
+ Optional[float], pydantic.Field(alias="parquetChunkDownloadTimeout")
120
+ ] = 600
121
+ r"""The maximum time allowed for downloading a Parquet chunk. Processing will abort if a chunk cannot be downloaded within the time specified."""
122
+
123
+ @field_serializer("auth_type")
124
+ def serialize_auth_type(self, value):
125
+ if isinstance(value, str):
126
+ try:
127
+ return models.CollectorAzureBlobAuthenticationMethod(value)
128
+ except ValueError:
129
+ return value
130
+ return value
@@ -0,0 +1,56 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .collectorazureblob import CollectorAzureBlob, CollectorAzureBlobTypedDict
5
+ from .collectorcribllake import CollectorCriblLake, CollectorCriblLakeTypedDict
6
+ from .collectordatabase import CollectorDatabase, CollectorDatabaseTypedDict
7
+ from .collectorfilesystem import CollectorFilesystem, CollectorFilesystemTypedDict
8
+ from .collectorgooglecloudstorage import (
9
+ CollectorGoogleCloudStorage,
10
+ CollectorGoogleCloudStorageTypedDict,
11
+ )
12
+ from .collectorhealthcheck import CollectorHealthCheck, CollectorHealthCheckTypedDict
13
+ from .collectorrest import CollectorRest, CollectorRestTypedDict
14
+ from .collectors3 import CollectorS3, CollectorS3TypedDict
15
+ from .collectorscript import CollectorScript, CollectorScriptTypedDict
16
+ from .collectorsplunk import CollectorSplunk, CollectorSplunkTypedDict
17
+ from cribl_control_plane.utils import get_discriminator
18
+ from pydantic import Discriminator, Tag
19
+ from typing import Union
20
+ from typing_extensions import Annotated, TypeAliasType
21
+
22
+
23
+ CollectorConfTypedDict = TypeAliasType(
24
+ "CollectorConfTypedDict",
25
+ Union[
26
+ CollectorCriblLakeTypedDict,
27
+ CollectorScriptTypedDict,
28
+ CollectorDatabaseTypedDict,
29
+ CollectorFilesystemTypedDict,
30
+ CollectorAzureBlobTypedDict,
31
+ CollectorGoogleCloudStorageTypedDict,
32
+ CollectorHealthCheckTypedDict,
33
+ CollectorSplunkTypedDict,
34
+ CollectorRestTypedDict,
35
+ CollectorS3TypedDict,
36
+ ],
37
+ )
38
+ r"""Collector configuration"""
39
+
40
+
41
+ CollectorConf = Annotated[
42
+ Union[
43
+ Annotated[CollectorAzureBlob, Tag("azure_blob")],
44
+ Annotated[CollectorCriblLake, Tag("cribl_lake")],
45
+ Annotated[CollectorDatabase, Tag("database")],
46
+ Annotated[CollectorFilesystem, Tag("filesystem")],
47
+ Annotated[CollectorGoogleCloudStorage, Tag("google_cloud_storage")],
48
+ Annotated[CollectorHealthCheck, Tag("health_check")],
49
+ Annotated[CollectorRest, Tag("rest")],
50
+ Annotated[CollectorS3, Tag("s3")],
51
+ Annotated[CollectorScript, Tag("script")],
52
+ Annotated[CollectorSplunk, Tag("splunk")],
53
+ ],
54
+ Discriminator(lambda m: get_discriminator(m, "type", "type")),
55
+ ]
56
+ r"""Collector configuration"""
@@ -0,0 +1,27 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane.types import BaseModel
5
+ from enum import Enum
6
+ from typing_extensions import TypedDict
7
+
8
+
9
+ class CollectorCriblLakeType(str, Enum):
10
+ r"""Collector type: cribl_lake"""
11
+
12
+ CRIBL_LAKE = "cribl_lake"
13
+
14
+
15
+ class CollectorCriblLakeTypedDict(TypedDict):
16
+ type: CollectorCriblLakeType
17
+ r"""Collector type: cribl_lake"""
18
+ dataset: str
19
+ r"""Lake dataset to collect data from."""
20
+
21
+
22
+ class CollectorCriblLake(BaseModel):
23
+ type: CollectorCriblLakeType
24
+ r"""Collector type: cribl_lake"""
25
+
26
+ dataset: str
27
+ r"""Lake dataset to collect data from."""
@@ -0,0 +1,92 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane import models, utils
5
+ from cribl_control_plane.types import BaseModel
6
+ from cribl_control_plane.utils import validate_open_enum
7
+ from enum import Enum
8
+ import pydantic
9
+ from pydantic import field_serializer
10
+ from pydantic.functional_validators import PlainValidator
11
+ from typing import Optional
12
+ from typing_extensions import Annotated, NotRequired, TypedDict
13
+
14
+
15
+ class CollectorDatabaseType(str, Enum):
16
+ r"""Collector type: database"""
17
+
18
+ DATABASE = "database"
19
+
20
+
21
+ class CollectorDatabaseHiddenDefaultBreakers(str, Enum, metaclass=utils.OpenEnumMeta):
22
+ CRIBL = "Cribl"
23
+
24
+
25
+ class CollectorDatabaseStateTrackingTypedDict(TypedDict):
26
+ enabled: NotRequired[bool]
27
+ r"""Enable tracking of collection progress between consecutive scheduled executions."""
28
+
29
+
30
+ class CollectorDatabaseStateTracking(BaseModel):
31
+ enabled: Optional[bool] = None
32
+ r"""Enable tracking of collection progress between consecutive scheduled executions."""
33
+
34
+
35
+ class CollectorDatabaseSchedulingTypedDict(TypedDict):
36
+ state_tracking: NotRequired[CollectorDatabaseStateTrackingTypedDict]
37
+
38
+
39
+ class CollectorDatabaseScheduling(BaseModel):
40
+ state_tracking: Annotated[
41
+ Optional[CollectorDatabaseStateTracking], pydantic.Field(alias="stateTracking")
42
+ ] = None
43
+
44
+
45
+ class CollectorDatabaseTypedDict(TypedDict):
46
+ type: CollectorDatabaseType
47
+ r"""Collector type: database"""
48
+ connection_id: str
49
+ r"""Select an existing Connection, or go to Knowledge > Database Connections to add one"""
50
+ query: str
51
+ r"""An expression that resolves to the query string for selecting data from the database. Has access to the special ${earliest} and ${latest} variables, which will resolve to the Collector run's start and end time."""
52
+ query_validation_enabled: NotRequired[bool]
53
+ r"""Enforces a basic query validation that allows only a single 'select' statement. Disable for more complex queries or when using semicolons. Caution: Disabling query validation allows DDL and DML statements to be executed, which could be destructive to your database."""
54
+ default_breakers: NotRequired[CollectorDatabaseHiddenDefaultBreakers]
55
+ scheduling: NotRequired[CollectorDatabaseSchedulingTypedDict]
56
+
57
+
58
+ class CollectorDatabase(BaseModel):
59
+ type: CollectorDatabaseType
60
+ r"""Collector type: database"""
61
+
62
+ connection_id: Annotated[str, pydantic.Field(alias="connectionId")]
63
+ r"""Select an existing Connection, or go to Knowledge > Database Connections to add one"""
64
+
65
+ query: str
66
+ r"""An expression that resolves to the query string for selecting data from the database. Has access to the special ${earliest} and ${latest} variables, which will resolve to the Collector run's start and end time."""
67
+
68
+ query_validation_enabled: Annotated[
69
+ Optional[bool], pydantic.Field(alias="queryValidationEnabled")
70
+ ] = True
71
+ r"""Enforces a basic query validation that allows only a single 'select' statement. Disable for more complex queries or when using semicolons. Caution: Disabling query validation allows DDL and DML statements to be executed, which could be destructive to your database."""
72
+
73
+ default_breakers: Annotated[
74
+ Annotated[
75
+ Optional[CollectorDatabaseHiddenDefaultBreakers],
76
+ PlainValidator(validate_open_enum(False)),
77
+ ],
78
+ pydantic.Field(alias="defaultBreakers"),
79
+ ] = None
80
+
81
+ scheduling: Annotated[
82
+ Optional[CollectorDatabaseScheduling], pydantic.Field(alias="__scheduling")
83
+ ] = None
84
+
85
+ @field_serializer("default_breakers")
86
+ def serialize_default_breakers(self, value):
87
+ if isinstance(value, str):
88
+ try:
89
+ return models.CollectorDatabaseHiddenDefaultBreakers(value)
90
+ except ValueError:
91
+ return value
92
+ return value
@@ -0,0 +1,66 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from cribl_control_plane.types import BaseModel
5
+ from enum import Enum
6
+ import pydantic
7
+ from typing import List, Optional
8
+ from typing_extensions import Annotated, NotRequired, TypedDict
9
+
10
+
11
+ class CollectorFilesystemType(str, Enum):
12
+ r"""Collector type: filesystem"""
13
+
14
+ FILESYSTEM = "filesystem"
15
+
16
+
17
+ class CollectorFilesystemExtractorTypedDict(TypedDict):
18
+ key: str
19
+ r"""A token from the template directory, such as epoch"""
20
+ expression: str
21
+ r"""JavaScript expression that receives token under \"value\" variable, and evaluates to populate event fields, such as {date: new Date(+value*1000)}"""
22
+
23
+
24
+ class CollectorFilesystemExtractor(BaseModel):
25
+ key: str
26
+ r"""A token from the template directory, such as epoch"""
27
+
28
+ expression: str
29
+ r"""JavaScript expression that receives token under \"value\" variable, and evaluates to populate event fields, such as {date: new Date(+value*1000)}"""
30
+
31
+
32
+ class CollectorFilesystemTypedDict(TypedDict):
33
+ type: CollectorFilesystemType
34
+ r"""Collector type: filesystem"""
35
+ path: str
36
+ r"""The directory from which to collect data. Templating is supported, such as /myDir/${datacenter}/${host}/${app}/. Time-based tokens are also supported, such as /myOtherDir/${_time:%Y}/${_time:%m}/${_time:%d}/."""
37
+ output_name: NotRequired[str]
38
+ r"""Select a predefined configuration (a Destination) to auto-populate Collector settings"""
39
+ extractors: NotRequired[List[CollectorFilesystemExtractorTypedDict]]
40
+ r"""Allows using template tokens as context for expressions that enrich discovery results. For example, given a template /path/${epoch}, an extractor under key \"epoch\" with an expression {date: new Date(+value*1000)}, will enrich discovery results with a human readable \"date\" field."""
41
+ recurse: NotRequired[bool]
42
+ r"""Recurse through subdirectories"""
43
+ max_batch_size: NotRequired[float]
44
+ r"""Maximum number of metadata files to batch before recording as results"""
45
+
46
+
47
+ class CollectorFilesystem(BaseModel):
48
+ type: CollectorFilesystemType
49
+ r"""Collector type: filesystem"""
50
+
51
+ path: str
52
+ r"""The directory from which to collect data. Templating is supported, such as /myDir/${datacenter}/${host}/${app}/. Time-based tokens are also supported, such as /myOtherDir/${_time:%Y}/${_time:%m}/${_time:%d}/."""
53
+
54
+ output_name: Annotated[Optional[str], pydantic.Field(alias="outputName")] = None
55
+ r"""Select a predefined configuration (a Destination) to auto-populate Collector settings"""
56
+
57
+ extractors: Optional[List[CollectorFilesystemExtractor]] = None
58
+ r"""Allows using template tokens as context for expressions that enrich discovery results. For example, given a template /path/${epoch}, an extractor under key \"epoch\" with an expression {date: new Date(+value*1000)}, will enrich discovery results with a human readable \"date\" field."""
59
+
60
+ recurse: Optional[bool] = True
61
+ r"""Recurse through subdirectories"""
62
+
63
+ max_batch_size: Annotated[Optional[float], pydantic.Field(alias="maxBatchSize")] = (
64
+ 10
65
+ )
66
+ r"""Maximum number of metadata files to batch before recording as results"""