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 InputSystemMetricsConnection(BaseModel):
23
27
  pipeline: Optional[str] = None
24
28
 
25
29
 
26
- class InputSystemMetricsPqMode(str, Enum):
30
+ class InputSystemMetricsPqMode(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 InputSystemMetricsCompression(str, Enum):
39
+ class InputSystemMetricsCompression(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 InputSystemMetricsPqControlsTypedDict(TypedDict):
49
+ pass
50
+
51
+
52
+ class InputSystemMetricsPqControls(BaseModel):
53
+ pass
54
+
55
+
40
56
  class InputSystemMetricsPqTypedDict(TypedDict):
41
57
  mode: NotRequired[InputSystemMetricsPqMode]
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 InputSystemMetricsPqTypedDict(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[InputSystemMetricsCompression]
54
70
  r"""Codec to use to compress the persisted data"""
71
+ pq_controls: NotRequired[InputSystemMetricsPqControlsTypedDict]
55
72
 
56
73
 
57
74
  class InputSystemMetricsPq(BaseModel):
58
- mode: Optional[InputSystemMetricsPqMode] = InputSystemMetricsPqMode.ALWAYS
75
+ mode: Annotated[
76
+ Optional[InputSystemMetricsPqMode], PlainValidator(validate_open_enum(False))
77
+ ] = InputSystemMetricsPqMode.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,27 +98,58 @@ class InputSystemMetricsPq(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[InputSystemMetricsCompression] = (
83
- InputSystemMetricsCompression.NONE
84
- )
101
+ compress: Annotated[
102
+ Optional[InputSystemMetricsCompression],
103
+ PlainValidator(validate_open_enum(False)),
104
+ ] = InputSystemMetricsCompression.NONE
85
105
  r"""Codec to use to compress the persisted data"""
86
106
 
107
+ pq_controls: Annotated[
108
+ Optional[InputSystemMetricsPqControls], pydantic.Field(alias="pqControls")
109
+ ] = None
87
110
 
88
- class InputSystemMetricsHostMode(str, Enum):
111
+ @field_serializer("mode")
112
+ def serialize_mode(self, value):
113
+ if isinstance(value, str):
114
+ try:
115
+ return models.InputSystemMetricsPqMode(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.InputSystemMetricsCompression(value)
125
+ except ValueError:
126
+ return value
127
+ return value
128
+
129
+
130
+ class InputSystemMetricsHostMode(str, Enum, metaclass=utils.OpenEnumMeta):
89
131
  r"""Select level of detail for host metrics"""
90
132
 
133
+ # Basic
91
134
  BASIC = "basic"
135
+ # All
92
136
  ALL = "all"
137
+ # Custom
93
138
  CUSTOM = "custom"
139
+ # Disabled
94
140
  DISABLED = "disabled"
95
141
 
96
142
 
97
- class InputSystemMetricsSystemMode(str, Enum):
143
+ class InputSystemMetricsSystemMode(str, Enum, metaclass=utils.OpenEnumMeta):
98
144
  r"""Select the level of detail for system metrics"""
99
145
 
146
+ # Basic
100
147
  BASIC = "basic"
148
+ # All
101
149
  ALL = "all"
150
+ # Custom
102
151
  CUSTOM = "custom"
152
+ # Disabled
103
153
  DISABLED = "disabled"
104
154
 
105
155
 
@@ -111,19 +161,35 @@ class InputSystemMetricsSystemTypedDict(TypedDict):
111
161
 
112
162
 
113
163
  class InputSystemMetricsSystem(BaseModel):
114
- mode: Optional[InputSystemMetricsSystemMode] = InputSystemMetricsSystemMode.BASIC
164
+ mode: Annotated[
165
+ Optional[InputSystemMetricsSystemMode],
166
+ PlainValidator(validate_open_enum(False)),
167
+ ] = InputSystemMetricsSystemMode.BASIC
115
168
  r"""Select the level of detail for system metrics"""
116
169
 
117
170
  processes: Optional[bool] = False
118
171
  r"""Generate metrics for the numbers of processes in various states"""
119
172
 
173
+ @field_serializer("mode")
174
+ def serialize_mode(self, value):
175
+ if isinstance(value, str):
176
+ try:
177
+ return models.InputSystemMetricsSystemMode(value)
178
+ except ValueError:
179
+ return value
180
+ return value
181
+
120
182
 
121
- class InputSystemMetricsCPUMode(str, Enum):
183
+ class InputSystemMetricsCPUMode(str, Enum, metaclass=utils.OpenEnumMeta):
122
184
  r"""Select the level of detail for CPU metrics"""
123
185
 
186
+ # Basic
124
187
  BASIC = "basic"
188
+ # All
125
189
  ALL = "all"
190
+ # Custom
126
191
  CUSTOM = "custom"
192
+ # Disabled
127
193
  DISABLED = "disabled"
128
194
 
129
195
 
@@ -139,7 +205,9 @@ class InputSystemMetricsCPUTypedDict(TypedDict):
139
205
 
140
206
 
141
207
  class InputSystemMetricsCPU(BaseModel):
142
- mode: Optional[InputSystemMetricsCPUMode] = InputSystemMetricsCPUMode.BASIC
208
+ mode: Annotated[
209
+ Optional[InputSystemMetricsCPUMode], PlainValidator(validate_open_enum(False))
210
+ ] = InputSystemMetricsCPUMode.BASIC
143
211
  r"""Select the level of detail for CPU metrics"""
144
212
 
145
213
  per_cpu: Annotated[Optional[bool], pydantic.Field(alias="perCpu")] = False
@@ -151,13 +219,26 @@ class InputSystemMetricsCPU(BaseModel):
151
219
  time: Optional[bool] = False
152
220
  r"""Generate raw, monotonic CPU time counters"""
153
221
 
222
+ @field_serializer("mode")
223
+ def serialize_mode(self, value):
224
+ if isinstance(value, str):
225
+ try:
226
+ return models.InputSystemMetricsCPUMode(value)
227
+ except ValueError:
228
+ return value
229
+ return value
230
+
154
231
 
155
- class InputSystemMetricsMemoryMode(str, Enum):
232
+ class InputSystemMetricsMemoryMode(str, Enum, metaclass=utils.OpenEnumMeta):
156
233
  r"""Select the level of detail for memory metrics"""
157
234
 
235
+ # Basic
158
236
  BASIC = "basic"
237
+ # All
159
238
  ALL = "all"
239
+ # Custom
160
240
  CUSTOM = "custom"
241
+ # Disabled
161
242
  DISABLED = "disabled"
162
243
 
163
244
 
@@ -169,37 +250,64 @@ class InputSystemMetricsMemoryTypedDict(TypedDict):
169
250
 
170
251
 
171
252
  class InputSystemMetricsMemory(BaseModel):
172
- mode: Optional[InputSystemMetricsMemoryMode] = InputSystemMetricsMemoryMode.BASIC
253
+ mode: Annotated[
254
+ Optional[InputSystemMetricsMemoryMode],
255
+ PlainValidator(validate_open_enum(False)),
256
+ ] = InputSystemMetricsMemoryMode.BASIC
173
257
  r"""Select the level of detail for memory metrics"""
174
258
 
175
259
  detail: Optional[bool] = False
176
260
  r"""Generate metrics for all memory states"""
177
261
 
262
+ @field_serializer("mode")
263
+ def serialize_mode(self, value):
264
+ if isinstance(value, str):
265
+ try:
266
+ return models.InputSystemMetricsMemoryMode(value)
267
+ except ValueError:
268
+ return value
269
+ return value
178
270
 
179
- class InputSystemMetricsNetworkMode(str, Enum):
271
+
272
+ class InputSystemMetricsNetworkMode(str, Enum, metaclass=utils.OpenEnumMeta):
180
273
  r"""Select the level of detail for network metrics"""
181
274
 
275
+ # Basic
182
276
  BASIC = "basic"
277
+ # All
183
278
  ALL = "all"
279
+ # Custom
184
280
  CUSTOM = "custom"
281
+ # Disabled
185
282
  DISABLED = "disabled"
186
283
 
187
284
 
188
285
  class InputSystemMetricsNetworkTypedDict(TypedDict):
189
286
  mode: NotRequired[InputSystemMetricsNetworkMode]
190
287
  r"""Select the level of detail for network metrics"""
288
+ detail: NotRequired[bool]
289
+ r"""Generate full network metrics"""
290
+ protocols: NotRequired[bool]
291
+ r"""Generate protocol metrics for ICMP, ICMPMsg, IP, TCP, UDP and UDPLite"""
191
292
  devices: NotRequired[List[str]]
192
293
  r"""Network interfaces to include/exclude. Examples: eth0, !lo. All interfaces are included if this list is empty."""
193
294
  per_interface: NotRequired[bool]
194
295
  r"""Generate separate metrics for each interface"""
195
- detail: NotRequired[bool]
196
- r"""Generate full network metrics"""
197
296
 
198
297
 
199
298
  class InputSystemMetricsNetwork(BaseModel):
200
- mode: Optional[InputSystemMetricsNetworkMode] = InputSystemMetricsNetworkMode.BASIC
299
+ mode: Annotated[
300
+ Optional[InputSystemMetricsNetworkMode],
301
+ PlainValidator(validate_open_enum(False)),
302
+ ] = InputSystemMetricsNetworkMode.BASIC
201
303
  r"""Select the level of detail for network metrics"""
202
304
 
305
+ detail: Optional[bool] = False
306
+ r"""Generate full network metrics"""
307
+
308
+ protocols: Optional[bool] = False
309
+ r"""Generate protocol metrics for ICMP, ICMPMsg, IP, TCP, UDP and UDPLite"""
310
+
203
311
  devices: Optional[List[str]] = None
204
312
  r"""Network interfaces to include/exclude. Examples: eth0, !lo. All interfaces are included if this list is empty."""
205
313
 
@@ -208,22 +316,36 @@ class InputSystemMetricsNetwork(BaseModel):
208
316
  )
209
317
  r"""Generate separate metrics for each interface"""
210
318
 
211
- detail: Optional[bool] = False
212
- r"""Generate full network metrics"""
319
+ @field_serializer("mode")
320
+ def serialize_mode(self, value):
321
+ if isinstance(value, str):
322
+ try:
323
+ return models.InputSystemMetricsNetworkMode(value)
324
+ except ValueError:
325
+ return value
326
+ return value
213
327
 
214
328
 
215
- class InputSystemMetricsDiskMode(str, Enum):
329
+ class InputSystemMetricsDiskMode(str, Enum, metaclass=utils.OpenEnumMeta):
216
330
  r"""Select the level of detail for disk metrics"""
217
331
 
332
+ # Basic
218
333
  BASIC = "basic"
334
+ # All
219
335
  ALL = "all"
336
+ # Custom
220
337
  CUSTOM = "custom"
338
+ # Disabled
221
339
  DISABLED = "disabled"
222
340
 
223
341
 
224
342
  class InputSystemMetricsDiskTypedDict(TypedDict):
225
343
  mode: NotRequired[InputSystemMetricsDiskMode]
226
344
  r"""Select the level of detail for disk metrics"""
345
+ detail: NotRequired[bool]
346
+ r"""Generate full disk metrics"""
347
+ inodes: NotRequired[bool]
348
+ r"""Generate filesystem inode metrics"""
227
349
  devices: NotRequired[List[str]]
228
350
  r"""Block devices to include/exclude. Examples: sda*, !loop*. Wildcards and ! (not) operators are supported. All devices are included if this list is empty."""
229
351
  mountpoints: NotRequired[List[str]]
@@ -232,14 +354,20 @@ class InputSystemMetricsDiskTypedDict(TypedDict):
232
354
  r"""Filesystem types to include/exclude. Examples: ext4, !*tmpfs, !squashfs. Wildcards and ! (not) operators are supported. All types are included if this list is empty."""
233
355
  per_device: NotRequired[bool]
234
356
  r"""Generate separate metrics for each device"""
235
- detail: NotRequired[bool]
236
- r"""Generate full disk metrics"""
237
357
 
238
358
 
239
359
  class InputSystemMetricsDisk(BaseModel):
240
- mode: Optional[InputSystemMetricsDiskMode] = InputSystemMetricsDiskMode.BASIC
360
+ mode: Annotated[
361
+ Optional[InputSystemMetricsDiskMode], PlainValidator(validate_open_enum(False))
362
+ ] = InputSystemMetricsDiskMode.BASIC
241
363
  r"""Select the level of detail for disk metrics"""
242
364
 
365
+ detail: Optional[bool] = False
366
+ r"""Generate full disk metrics"""
367
+
368
+ inodes: Optional[bool] = False
369
+ r"""Generate filesystem inode metrics"""
370
+
243
371
  devices: Optional[List[str]] = None
244
372
  r"""Block devices to include/exclude. Examples: sda*, !loop*. Wildcards and ! (not) operators are supported. All devices are included if this list is empty."""
245
373
 
@@ -252,8 +380,14 @@ class InputSystemMetricsDisk(BaseModel):
252
380
  per_device: Annotated[Optional[bool], pydantic.Field(alias="perDevice")] = False
253
381
  r"""Generate separate metrics for each device"""
254
382
 
255
- detail: Optional[bool] = False
256
- r"""Generate full disk metrics"""
383
+ @field_serializer("mode")
384
+ def serialize_mode(self, value):
385
+ if isinstance(value, str):
386
+ try:
387
+ return models.InputSystemMetricsDiskMode(value)
388
+ except ValueError:
389
+ return value
390
+ return value
257
391
 
258
392
 
259
393
  class InputSystemMetricsCustomTypedDict(TypedDict):
@@ -283,11 +417,22 @@ class InputSystemMetricsHostTypedDict(TypedDict):
283
417
 
284
418
 
285
419
  class InputSystemMetricsHost(BaseModel):
286
- mode: Optional[InputSystemMetricsHostMode] = InputSystemMetricsHostMode.BASIC
420
+ mode: Annotated[
421
+ Optional[InputSystemMetricsHostMode], PlainValidator(validate_open_enum(False))
422
+ ] = InputSystemMetricsHostMode.BASIC
287
423
  r"""Select level of detail for host metrics"""
288
424
 
289
425
  custom: Optional[InputSystemMetricsCustom] = None
290
426
 
427
+ @field_serializer("mode")
428
+ def serialize_mode(self, value):
429
+ if isinstance(value, str):
430
+ try:
431
+ return models.InputSystemMetricsHostMode(value)
432
+ except ValueError:
433
+ return value
434
+ return value
435
+
291
436
 
292
437
  class InputSystemMetricsSetTypedDict(TypedDict):
293
438
  name: str
@@ -315,12 +460,16 @@ class InputSystemMetricsProcess(BaseModel):
315
460
  r"""Configure sets to collect process metrics"""
316
461
 
317
462
 
318
- class ContainerMode(str, Enum):
463
+ class ContainerMode(str, Enum, metaclass=utils.OpenEnumMeta):
319
464
  r"""Select the level of detail for container metrics"""
320
465
 
466
+ # Basic
321
467
  BASIC = "basic"
468
+ # All
322
469
  ALL = "all"
470
+ # Custom
323
471
  CUSTOM = "custom"
472
+ # Disabled
324
473
  DISABLED = "disabled"
325
474
 
326
475
 
@@ -350,7 +499,9 @@ class ContainerTypedDict(TypedDict):
350
499
 
351
500
 
352
501
  class Container(BaseModel):
353
- mode: Optional[ContainerMode] = ContainerMode.BASIC
502
+ mode: Annotated[
503
+ Optional[ContainerMode], PlainValidator(validate_open_enum(False))
504
+ ] = ContainerMode.BASIC
354
505
  r"""Select the level of detail for container metrics"""
355
506
 
356
507
  docker_socket: Annotated[
@@ -377,6 +528,15 @@ class Container(BaseModel):
377
528
  detail: Optional[bool] = False
378
529
  r"""Generate full container metrics"""
379
530
 
531
+ @field_serializer("mode")
532
+ def serialize_mode(self, value):
533
+ if isinstance(value, str):
534
+ try:
535
+ return models.ContainerMode(value)
536
+ except ValueError:
537
+ return value
538
+ return value
539
+
380
540
 
381
541
  class InputSystemMetricsMetadatumTypedDict(TypedDict):
382
542
  name: str
@@ -391,7 +551,7 @@ class InputSystemMetricsMetadatum(BaseModel):
391
551
  r"""JavaScript expression to compute field's value, enclosed in quotes or backticks. (Can evaluate to a constant.)"""
392
552
 
393
553
 
394
- class InputSystemMetricsDataCompressionFormat(str, Enum):
554
+ class InputSystemMetricsDataCompressionFormat(str, Enum, metaclass=utils.OpenEnumMeta):
395
555
  NONE = "none"
396
556
  GZIP = "gzip"
397
557
 
@@ -423,20 +583,30 @@ class InputSystemMetricsPersistence(BaseModel):
423
583
  max_data_time: Annotated[Optional[str], pydantic.Field(alias="maxDataTime")] = "24h"
424
584
  r"""Maximum amount of time to retain data (examples: 2h, 4d). When limit is reached, older data will be deleted."""
425
585
 
426
- compress: Optional[InputSystemMetricsDataCompressionFormat] = (
427
- InputSystemMetricsDataCompressionFormat.GZIP
428
- )
586
+ compress: Annotated[
587
+ Optional[InputSystemMetricsDataCompressionFormat],
588
+ PlainValidator(validate_open_enum(False)),
589
+ ] = InputSystemMetricsDataCompressionFormat.GZIP
429
590
 
430
591
  dest_path: Annotated[Optional[str], pydantic.Field(alias="destPath")] = (
431
592
  "$CRIBL_HOME/state/system_metrics"
432
593
  )
433
594
  r"""Path to use to write metrics. Defaults to $CRIBL_HOME/state/system_metrics"""
434
595
 
596
+ @field_serializer("compress")
597
+ def serialize_compress(self, value):
598
+ if isinstance(value, str):
599
+ try:
600
+ return models.InputSystemMetricsDataCompressionFormat(value)
601
+ except ValueError:
602
+ return value
603
+ return value
604
+
435
605
 
436
606
  class InputSystemMetricsTypedDict(TypedDict):
437
- id: str
438
- r"""Unique ID for this input"""
439
607
  type: InputSystemMetricsType
608
+ id: NotRequired[str]
609
+ r"""Unique ID for this input"""
440
610
  disabled: NotRequired[bool]
441
611
  pipeline: NotRequired[str]
442
612
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -463,11 +633,11 @@ class InputSystemMetricsTypedDict(TypedDict):
463
633
 
464
634
 
465
635
  class InputSystemMetrics(BaseModel):
466
- id: str
467
- r"""Unique ID for this input"""
468
-
469
636
  type: InputSystemMetricsType
470
637
 
638
+ id: Optional[str] = None
639
+ r"""Unique ID for this input"""
640
+
471
641
  disabled: Optional[bool] = False
472
642
 
473
643
  pipeline: Optional[str] = None
@@ -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 InputSystemStateConnection(BaseModel):
23
27
  pipeline: Optional[str] = None
24
28
 
25
29
 
26
- class InputSystemStateMode(str, Enum):
30
+ class InputSystemStateMode(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 InputSystemStateCompression(str, Enum):
39
+ class InputSystemStateCompression(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 InputSystemStatePqControlsTypedDict(TypedDict):
49
+ pass
50
+
51
+
52
+ class InputSystemStatePqControls(BaseModel):
53
+ pass
54
+
55
+
40
56
  class InputSystemStatePqTypedDict(TypedDict):
41
57
  mode: NotRequired[InputSystemStateMode]
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 InputSystemStatePqTypedDict(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[InputSystemStateCompression]
54
70
  r"""Codec to use to compress the persisted data"""
71
+ pq_controls: NotRequired[InputSystemStatePqControlsTypedDict]
55
72
 
56
73
 
57
74
  class InputSystemStatePq(BaseModel):
58
- mode: Optional[InputSystemStateMode] = InputSystemStateMode.ALWAYS
75
+ mode: Annotated[
76
+ Optional[InputSystemStateMode], PlainValidator(validate_open_enum(False))
77
+ ] = InputSystemStateMode.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 InputSystemStatePq(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[InputSystemStateCompression] = InputSystemStateCompression.NONE
101
+ compress: Annotated[
102
+ Optional[InputSystemStateCompression], PlainValidator(validate_open_enum(False))
103
+ ] = InputSystemStateCompression.NONE
83
104
  r"""Codec to use to compress the persisted data"""
84
105
 
106
+ pq_controls: Annotated[
107
+ Optional[InputSystemStatePqControls], 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.InputSystemStateMode(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.InputSystemStateCompression(value)
124
+ except ValueError:
125
+ return value
126
+ return value
127
+
85
128
 
86
129
  class InputSystemStateMetadatumTypedDict(TypedDict):
87
130
  name: str
@@ -290,7 +333,7 @@ class Collectors(BaseModel):
290
333
  r"""Creates events from list of logged-in users"""
291
334
 
292
335
 
293
- class InputSystemStateDataCompressionFormat(str, Enum):
336
+ class InputSystemStateDataCompressionFormat(str, Enum, metaclass=utils.OpenEnumMeta):
294
337
  NONE = "none"
295
338
  GZIP = "gzip"
296
339
 
@@ -322,20 +365,30 @@ class InputSystemStatePersistence(BaseModel):
322
365
  max_data_time: Annotated[Optional[str], pydantic.Field(alias="maxDataTime")] = "24h"
323
366
  r"""Maximum amount of time to retain data (examples: 2h, 4d). When limit is reached, older data will be deleted."""
324
367
 
325
- compress: Optional[InputSystemStateDataCompressionFormat] = (
326
- InputSystemStateDataCompressionFormat.NONE
327
- )
368
+ compress: Annotated[
369
+ Optional[InputSystemStateDataCompressionFormat],
370
+ PlainValidator(validate_open_enum(False)),
371
+ ] = InputSystemStateDataCompressionFormat.NONE
328
372
 
329
373
  dest_path: Annotated[Optional[str], pydantic.Field(alias="destPath")] = (
330
374
  "$CRIBL_HOME/state/system_state"
331
375
  )
332
376
  r"""Path to use to write metrics. Defaults to $CRIBL_HOME/state/system_state"""
333
377
 
378
+ @field_serializer("compress")
379
+ def serialize_compress(self, value):
380
+ if isinstance(value, str):
381
+ try:
382
+ return models.InputSystemStateDataCompressionFormat(value)
383
+ except ValueError:
384
+ return value
385
+ return value
386
+
334
387
 
335
388
  class InputSystemStateTypedDict(TypedDict):
336
- id: str
337
- r"""Unique ID for this input"""
338
389
  type: InputSystemStateType
390
+ id: NotRequired[str]
391
+ r"""Unique ID for this input"""
339
392
  disabled: NotRequired[bool]
340
393
  pipeline: NotRequired[str]
341
394
  r"""Pipeline to process data from this Source before sending it through the Routes"""
@@ -362,11 +415,11 @@ class InputSystemStateTypedDict(TypedDict):
362
415
 
363
416
 
364
417
  class InputSystemState(BaseModel):
365
- id: str
366
- r"""Unique ID for this input"""
367
-
368
418
  type: InputSystemStateType
369
419
 
420
+ id: Optional[str] = None
421
+ r"""Unique ID for this input"""
422
+
370
423
  disabled: Optional[bool] = False
371
424
 
372
425
  pipeline: Optional[str] = None