cribl-control-plane 0.0.39__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.
- cribl_control_plane/_hooks/clientcredentials.py +92 -42
- cribl_control_plane/_version.py +4 -4
- cribl_control_plane/acl.py +21 -9
- cribl_control_plane/auth_sdk.py +6 -3
- cribl_control_plane/basesdk.py +17 -1
- cribl_control_plane/branches.py +28 -8
- cribl_control_plane/commits.py +119 -47
- cribl_control_plane/commits_files.py +44 -24
- cribl_control_plane/configs_versions.py +16 -10
- cribl_control_plane/cribl.py +495 -0
- cribl_control_plane/destinations.py +86 -34
- cribl_control_plane/destinations_pq.py +34 -14
- cribl_control_plane/errors/__init__.py +23 -8
- cribl_control_plane/errors/apierror.py +2 -0
- cribl_control_plane/errors/criblcontrolplaneerror.py +11 -7
- cribl_control_plane/errors/error.py +4 -2
- cribl_control_plane/errors/healthserverstatus_error.py +41 -0
- cribl_control_plane/errors/no_response_error.py +5 -1
- cribl_control_plane/errors/responsevalidationerror.py +2 -0
- cribl_control_plane/functions.py +367 -0
- cribl_control_plane/groups_configs.py +8 -3
- cribl_control_plane/groups_sdk.py +156 -94
- cribl_control_plane/health.py +34 -14
- cribl_control_plane/hectokens.py +44 -20
- cribl_control_plane/httpclient.py +0 -1
- cribl_control_plane/lakedatasets.py +156 -62
- cribl_control_plane/models/__init__.py +3298 -479
- cribl_control_plane/models/addhectokenrequest.py +7 -1
- cribl_control_plane/models/authtoken.py +5 -1
- cribl_control_plane/models/backupssettings_union.py +37 -0
- cribl_control_plane/models/{lookupversions.py → branchinfo.py} +4 -4
- cribl_control_plane/models/cacheconnection.py +30 -2
- cribl_control_plane/models/cacheconnectionbackfillstatus.py +2 -1
- cribl_control_plane/models/cloudprovider.py +2 -1
- cribl_control_plane/models/collectorazureblob.py +130 -0
- cribl_control_plane/models/collectorconf.py +56 -0
- cribl_control_plane/models/collectorcribllake.py +27 -0
- cribl_control_plane/models/collectordatabase.py +92 -0
- cribl_control_plane/models/collectorfilesystem.py +66 -0
- cribl_control_plane/models/collectorgooglecloudstorage.py +131 -0
- cribl_control_plane/models/collectorhealthcheck.py +269 -0
- cribl_control_plane/models/collectorrest.py +340 -0
- cribl_control_plane/models/collectors3.py +239 -0
- cribl_control_plane/models/collectorscript.py +59 -0
- cribl_control_plane/models/collectorsplunk.py +253 -0
- cribl_control_plane/models/configgroup.py +62 -8
- cribl_control_plane/models/configgroupcloud.py +17 -3
- cribl_control_plane/models/countedbranchinfo.py +20 -0
- cribl_control_plane/models/countedconfiggroup.py +20 -0
- cribl_control_plane/models/countedcribllakedataset.py +20 -0
- cribl_control_plane/models/counteddistributedsummary.py +20 -0
- cribl_control_plane/models/countedfunctionresponse.py +20 -0
- cribl_control_plane/models/countedgitcommitsummary.py +20 -0
- cribl_control_plane/models/countedgitcountresult.py +20 -0
- cribl_control_plane/models/{createinputop.py → countedgitdiffresult.py} +5 -9
- cribl_control_plane/models/countedgitfilesresponse.py +20 -0
- cribl_control_plane/models/{getversioninfoop.py → countedgitinfo.py} +2 -6
- cribl_control_plane/models/countedgitlogresult.py +20 -0
- cribl_control_plane/models/countedgitrevertresult.py +20 -0
- cribl_control_plane/models/countedgitshowresult.py +20 -0
- cribl_control_plane/models/countedgitstatusresult.py +20 -0
- cribl_control_plane/models/{listinputop.py → countedinput.py} +2 -6
- cribl_control_plane/models/countedinputsplunkhec.py +20 -0
- cribl_control_plane/models/countedjobinfo.py +20 -0
- cribl_control_plane/models/countedmasterworkerentry.py +20 -0
- cribl_control_plane/models/countednumber.py +19 -0
- cribl_control_plane/models/{getversionbranchop.py → countedobject.py} +2 -6
- cribl_control_plane/models/{listoutputop.py → countedoutput.py} +2 -6
- cribl_control_plane/models/{createoutputop.py → countedoutputsamplesresponse.py} +5 -9
- cribl_control_plane/models/countedoutputtestresponse.py +20 -0
- cribl_control_plane/models/countedpackinfo.py +20 -0
- cribl_control_plane/models/{createpacksop.py → countedpackinstallinfo.py} +2 -6
- cribl_control_plane/models/{listpipelineop.py → countedpipeline.py} +2 -6
- cribl_control_plane/models/{listroutesop.py → countedroutes.py} +2 -6
- cribl_control_plane/models/countedstring.py +19 -0
- cribl_control_plane/models/countedsystemsettingsconf.py +20 -0
- cribl_control_plane/models/countedteamaccesscontrollist.py +20 -0
- cribl_control_plane/models/counteduseraccesscontrollist.py +20 -0
- cribl_control_plane/models/createauthloginop.py +18 -0
- cribl_control_plane/models/createconfiggroupbyproductop.py +26 -27
- cribl_control_plane/models/createcribllakedatasetbylakeidop.py +1 -19
- cribl_control_plane/models/createinputhectokenbyidop.py +1 -19
- cribl_control_plane/models/createoutputtestbyidop.py +1 -20
- cribl_control_plane/models/createroutesappendbyidop.py +4 -22
- cribl_control_plane/models/createversioncommitop.py +1 -19
- cribl_control_plane/models/createversionrevertop.py +3 -21
- cribl_control_plane/models/createversionundoop.py +1 -18
- cribl_control_plane/models/criblevent.py +15 -0
- cribl_control_plane/models/cribllakedataset.py +23 -3
- cribl_control_plane/models/cribllakedatasetupdate.py +95 -0
- cribl_control_plane/models/datasetmetadata.py +18 -2
- cribl_control_plane/models/deleteconfiggroupbyproductandidop.py +18 -21
- cribl_control_plane/models/deletecribllakedatasetbylakeidandidop.py +1 -20
- cribl_control_plane/models/deleteinputbyidop.py +1 -20
- cribl_control_plane/models/deleteoutputbyidop.py +1 -20
- cribl_control_plane/models/deleteoutputpqbyidop.py +1 -19
- cribl_control_plane/models/deletepacksbyidop.py +1 -20
- cribl_control_plane/models/deletepipelinebyidop.py +3 -22
- cribl_control_plane/models/difffiles.py +130 -0
- cribl_control_plane/models/diffline.py +26 -0
- cribl_control_plane/models/difflinecontext.py +28 -0
- cribl_control_plane/models/difflinedelete.py +25 -0
- cribl_control_plane/models/difflineinsert.py +25 -0
- cribl_control_plane/models/distributedsummary.py +6 -0
- cribl_control_plane/models/functionaggregatemetrics.py +206 -0
- cribl_control_plane/models/functionaggregation.py +172 -0
- cribl_control_plane/models/functionautotimestamp.py +173 -0
- cribl_control_plane/models/functioncef.py +111 -0
- cribl_control_plane/models/functionchain.py +75 -0
- cribl_control_plane/models/functionclone.py +75 -0
- cribl_control_plane/models/functioncode.py +96 -0
- cribl_control_plane/models/functioncomment.py +75 -0
- cribl_control_plane/models/functiondistinct.py +99 -0
- cribl_control_plane/models/functiondnslookup.py +250 -0
- cribl_control_plane/models/functiondrop.py +73 -0
- cribl_control_plane/models/functiondropdimensions.py +87 -0
- cribl_control_plane/models/functiondynamicsampling.py +121 -0
- cribl_control_plane/models/functioneval.py +103 -0
- cribl_control_plane/models/functioneventbreaker.py +103 -0
- cribl_control_plane/models/functioneventstats.py +92 -0
- cribl_control_plane/models/functionexternaldata.py +73 -0
- cribl_control_plane/models/functionflatten.py +90 -0
- cribl_control_plane/models/functionfoldkeys.py +89 -0
- cribl_control_plane/models/functiongenstats.py +73 -0
- cribl_control_plane/models/functiongeoip.py +120 -0
- cribl_control_plane/models/functiongrok.py +95 -0
- cribl_control_plane/models/functionhandlebar.py +112 -0
- cribl_control_plane/models/functionjoin.py +112 -0
- cribl_control_plane/models/functionjsonunroll.py +80 -0
- cribl_control_plane/models/functionlakeexport.py +102 -0
- cribl_control_plane/models/functionlimit.py +75 -0
- cribl_control_plane/models/functionlocalsearchdatatypeparser.py +76 -0
- cribl_control_plane/models/functionlocalsearchrulesetrunner.py +97 -0
- cribl_control_plane/models/functionlookup.py +148 -0
- cribl_control_plane/models/functionmask.py +121 -0
- cribl_control_plane/models/functionmvexpand.py +128 -0
- cribl_control_plane/models/functionmvpull.py +99 -0
- cribl_control_plane/models/functionnotificationpolicies.py +186 -0
- cribl_control_plane/models/functionnotifications.py +85 -0
- cribl_control_plane/models/functionnotify.py +196 -0
- cribl_control_plane/models/functionnumerify.py +119 -0
- cribl_control_plane/models/functionotlplogs.py +82 -0
- cribl_control_plane/models/functionotlpmetrics.py +118 -0
- cribl_control_plane/models/functionotlptraces.py +111 -0
- cribl_control_plane/models/functionpack.py +80 -0
- cribl_control_plane/models/functionpivot.py +85 -0
- cribl_control_plane/models/functionpublishmetrics.py +153 -0
- cribl_control_plane/models/functionredis.py +173 -0
- cribl_control_plane/models/functionregexextract.py +112 -0
- cribl_control_plane/models/functionregexfilter.py +95 -0
- cribl_control_plane/models/functionrename.py +107 -0
- cribl_control_plane/models/functionresponse.py +242 -0
- cribl_control_plane/models/functionrollupmetrics.py +114 -0
- cribl_control_plane/models/functionsampling.py +90 -0
- cribl_control_plane/models/functionsend.py +141 -0
- cribl_control_plane/models/functionsensitivedatascanner.py +128 -0
- cribl_control_plane/models/functionserde.py +161 -0
- cribl_control_plane/models/functionserialize.py +134 -0
- cribl_control_plane/models/functionsidlookup.py +93 -0
- cribl_control_plane/models/functionsnmptrapserialize.py +144 -0
- cribl_control_plane/models/functionsort.py +97 -0
- cribl_control_plane/models/functionstore.py +132 -0
- cribl_control_plane/models/functionsuppress.py +115 -0
- cribl_control_plane/models/functiontee.py +90 -0
- cribl_control_plane/models/functiontrimtimestamp.py +75 -0
- cribl_control_plane/models/functionunion.py +80 -0
- cribl_control_plane/models/functionunroll.py +80 -0
- cribl_control_plane/models/functionwindow.py +96 -0
- cribl_control_plane/models/functionxmlunroll.py +92 -0
- cribl_control_plane/models/getconfiggroupaclbyproductandidop.py +24 -20
- cribl_control_plane/models/getconfiggroupaclteamsbyproductandidop.py +24 -20
- cribl_control_plane/models/getconfiggroupbyproductandidop.py +14 -19
- cribl_control_plane/models/getconfiggroupconfigversionbyproductandidop.py +18 -20
- cribl_control_plane/models/getcribllakedatasetbylakeidandidop.py +1 -20
- cribl_control_plane/models/getcribllakedatasetbylakeidop.py +54 -14
- cribl_control_plane/models/getfunctionsbyidop.py +18 -0
- cribl_control_plane/models/getinputbyidop.py +1 -20
- cribl_control_plane/models/getmasterworkerentryop.py +1 -18
- cribl_control_plane/models/getoutputbyidop.py +1 -20
- cribl_control_plane/models/getoutputpqbyidop.py +1 -19
- cribl_control_plane/models/getoutputsamplesbyidop.py +1 -20
- cribl_control_plane/models/getpacksbyidop.py +1 -20
- cribl_control_plane/models/getpacksop.py +1 -19
- cribl_control_plane/models/getpipelinebyidop.py +3 -22
- cribl_control_plane/models/getroutesbyidop.py +3 -22
- cribl_control_plane/models/getsummaryop.py +18 -20
- cribl_control_plane/models/getversioncountop.py +3 -21
- cribl_control_plane/models/getversiondiffop.py +1 -18
- cribl_control_plane/models/getversionfilesop.py +3 -22
- cribl_control_plane/models/getversionop.py +1 -19
- cribl_control_plane/models/getversionshowop.py +1 -18
- cribl_control_plane/models/getversionstatusop.py +1 -19
- cribl_control_plane/models/{routecloneconf.py → gitcountresult.py} +4 -4
- cribl_control_plane/models/gitdiffresult.py +16 -0
- cribl_control_plane/models/gitinfo.py +14 -3
- cribl_control_plane/models/gitshowresult.py +19 -0
- cribl_control_plane/models/groupcreaterequest.py +172 -0
- cribl_control_plane/models/hbcriblinfo.py +42 -7
- cribl_control_plane/models/healthserverstatus.py +55 -0
- cribl_control_plane/models/heartbeatmetadata.py +6 -11
- cribl_control_plane/models/input.py +83 -78
- cribl_control_plane/models/inputappscope.py +126 -30
- cribl_control_plane/models/inputazureblob.py +62 -6
- cribl_control_plane/models/inputcloudflarehec.py +518 -0
- cribl_control_plane/models/inputcollection.py +47 -4
- cribl_control_plane/models/inputconfluentcloud.py +258 -32
- cribl_control_plane/models/inputcribl.py +47 -4
- cribl_control_plane/models/inputcriblhttp.py +121 -30
- cribl_control_plane/models/inputcribllakehttp.py +136 -30
- cribl_control_plane/models/inputcriblmetrics.py +48 -4
- cribl_control_plane/models/inputcribltcp.py +122 -24
- cribl_control_plane/models/inputcrowdstrike.py +92 -10
- cribl_control_plane/models/inputdatadogagent.py +98 -24
- cribl_control_plane/models/inputdatagen.py +47 -4
- cribl_control_plane/models/inputedgeprometheus.py +210 -50
- cribl_control_plane/models/inputelastic.py +167 -36
- cribl_control_plane/models/inputeventhub.py +209 -6
- cribl_control_plane/models/inputexec.py +59 -6
- cribl_control_plane/models/inputfile.py +78 -10
- cribl_control_plane/models/inputfirehose.py +97 -24
- cribl_control_plane/models/inputgooglepubsub.py +67 -6
- cribl_control_plane/models/inputgrafana.py +251 -71
- cribl_control_plane/models/inputhttp.py +97 -24
- cribl_control_plane/models/inputhttpraw.py +97 -24
- cribl_control_plane/models/inputjournalfiles.py +48 -4
- cribl_control_plane/models/inputkafka.py +252 -28
- cribl_control_plane/models/inputkinesis.py +130 -14
- cribl_control_plane/models/inputkubeevents.py +47 -4
- cribl_control_plane/models/inputkubelogs.py +61 -8
- cribl_control_plane/models/inputkubemetrics.py +61 -8
- cribl_control_plane/models/inputloki.py +113 -34
- cribl_control_plane/models/inputmetrics.py +97 -24
- cribl_control_plane/models/inputmodeldriventelemetry.py +107 -26
- cribl_control_plane/models/inputmsk.py +145 -32
- cribl_control_plane/models/inputnetflow.py +47 -4
- cribl_control_plane/models/inputoffice365mgmt.py +112 -14
- cribl_control_plane/models/inputoffice365msgtrace.py +114 -16
- cribl_control_plane/models/inputoffice365service.py +114 -16
- cribl_control_plane/models/inputopentelemetry.py +143 -32
- cribl_control_plane/models/inputprometheus.py +193 -44
- cribl_control_plane/models/inputprometheusrw.py +114 -27
- cribl_control_plane/models/inputrawudp.py +47 -4
- cribl_control_plane/models/inputs3.py +78 -8
- cribl_control_plane/models/inputs3inventory.py +92 -10
- cribl_control_plane/models/inputsecuritylake.py +93 -10
- cribl_control_plane/models/inputsnmp.py +112 -21
- cribl_control_plane/models/inputsplunk.py +130 -28
- cribl_control_plane/models/inputsplunkhec.py +119 -29
- cribl_control_plane/models/inputsplunksearch.py +112 -15
- cribl_control_plane/models/inputsqs.py +99 -16
- cribl_control_plane/models/inputsyslog.py +189 -47
- cribl_control_plane/models/inputsystemmetrics.py +202 -32
- cribl_control_plane/models/inputsystemstate.py +61 -8
- cribl_control_plane/models/inputtcp.py +122 -26
- cribl_control_plane/models/inputtcpjson.py +112 -26
- cribl_control_plane/models/inputwef.py +144 -15
- cribl_control_plane/models/inputwindowsmetrics.py +186 -33
- cribl_control_plane/models/inputwineventlogs.py +93 -11
- cribl_control_plane/models/inputwiz.py +173 -8
- cribl_control_plane/models/inputwizwebhook.py +97 -24
- cribl_control_plane/models/inputzscalerhec.py +119 -29
- cribl_control_plane/models/jobinfo.py +34 -0
- cribl_control_plane/models/jobstatus.py +48 -0
- cribl_control_plane/models/lakedatasetmetrics.py +17 -0
- cribl_control_plane/models/lakehouseconnectiontype.py +2 -1
- cribl_control_plane/models/listconfiggroupbyproductop.py +14 -19
- cribl_control_plane/models/listmasterworkerentryop.py +1 -19
- cribl_control_plane/models/logininfo.py +3 -3
- cribl_control_plane/models/masterworkerentry.py +20 -13
- cribl_control_plane/models/nodeactiveupgradestatus.py +2 -1
- cribl_control_plane/models/nodefailedupgradestatus.py +2 -1
- cribl_control_plane/models/nodeprovidedinfo.py +13 -11
- cribl_control_plane/models/nodeskippedupgradestatus.py +2 -1
- cribl_control_plane/models/nodeupgradestate.py +2 -1
- cribl_control_plane/models/nodeupgradestatus.py +51 -5
- cribl_control_plane/models/outpostnodeinfo.py +16 -0
- cribl_control_plane/models/output.py +104 -90
- cribl_control_plane/models/outputazureblob.py +171 -18
- cribl_control_plane/models/outputazuredataexplorer.py +514 -90
- cribl_control_plane/models/outputazureeventhub.py +315 -31
- cribl_control_plane/models/outputazurelogs.py +145 -26
- cribl_control_plane/models/outputchronicle.py +532 -0
- cribl_control_plane/models/outputclickhouse.py +205 -34
- cribl_control_plane/models/outputcloudflarer2.py +632 -0
- cribl_control_plane/models/outputcloudwatch.py +129 -23
- cribl_control_plane/models/outputconfluentcloud.py +384 -57
- cribl_control_plane/models/outputcriblhttp.py +198 -31
- cribl_control_plane/models/outputcribllake.py +156 -16
- cribl_control_plane/models/outputcribltcp.py +194 -29
- cribl_control_plane/models/outputcrowdstrikenextgensiem.py +172 -28
- cribl_control_plane/models/outputdatabricks.py +501 -0
- cribl_control_plane/models/outputdatadog.py +199 -31
- cribl_control_plane/models/outputdataset.py +181 -29
- cribl_control_plane/models/outputdiskspool.py +17 -2
- cribl_control_plane/models/outputdls3.py +233 -24
- cribl_control_plane/models/outputdynatracehttp.py +208 -34
- cribl_control_plane/models/outputdynatraceotlp.py +210 -36
- cribl_control_plane/models/outputelastic.py +199 -30
- cribl_control_plane/models/outputelasticcloud.py +171 -26
- cribl_control_plane/models/outputexabeam.py +96 -10
- cribl_control_plane/models/outputfilesystem.py +139 -14
- cribl_control_plane/models/outputgooglechronicle.py +216 -35
- cribl_control_plane/models/outputgooglecloudlogging.py +174 -31
- cribl_control_plane/models/outputgooglecloudstorage.py +215 -24
- cribl_control_plane/models/outputgooglepubsub.py +131 -23
- cribl_control_plane/models/outputgrafanacloud.py +376 -74
- cribl_control_plane/models/outputgraphite.py +128 -25
- cribl_control_plane/models/outputhoneycomb.py +145 -26
- cribl_control_plane/models/outputhumiohec.py +162 -28
- cribl_control_plane/models/outputinfluxdb.py +165 -28
- cribl_control_plane/models/outputkafka.py +375 -52
- cribl_control_plane/models/outputkinesis.py +165 -27
- cribl_control_plane/models/outputloki.py +164 -34
- cribl_control_plane/models/outputmicrosoftfabric.py +540 -0
- cribl_control_plane/models/outputminio.py +225 -25
- cribl_control_plane/models/outputmsk.py +267 -54
- cribl_control_plane/models/outputnewrelic.py +171 -29
- cribl_control_plane/models/outputnewrelicevents.py +163 -28
- cribl_control_plane/models/outputopentelemetry.py +240 -40
- cribl_control_plane/models/outputprometheus.py +145 -26
- cribl_control_plane/models/outputring.py +49 -8
- cribl_control_plane/models/outputs3.py +233 -26
- cribl_control_plane/models/outputsecuritylake.py +179 -18
- cribl_control_plane/models/outputsentinel.py +172 -29
- cribl_control_plane/models/outputsentineloneaisiem.py +178 -32
- cribl_control_plane/models/outputservicenow.py +223 -38
- cribl_control_plane/models/outputsignalfx.py +145 -26
- cribl_control_plane/models/outputsns.py +143 -25
- cribl_control_plane/models/outputsplunk.py +206 -36
- cribl_control_plane/models/outputsplunkhec.py +238 -26
- cribl_control_plane/models/outputsplunklb.py +262 -42
- cribl_control_plane/models/outputsqs.py +163 -33
- cribl_control_plane/models/outputstatsd.py +127 -25
- cribl_control_plane/models/outputstatsdext.py +128 -25
- cribl_control_plane/models/outputsumologic.py +146 -25
- cribl_control_plane/models/outputsyslog.py +318 -46
- cribl_control_plane/models/outputtcpjson.py +186 -32
- cribl_control_plane/models/outputwavefront.py +145 -26
- cribl_control_plane/models/outputwebhook.py +211 -33
- cribl_control_plane/models/outputxsiam.py +143 -26
- cribl_control_plane/models/packinfo.py +8 -5
- cribl_control_plane/models/packinstallinfo.py +11 -8
- cribl_control_plane/models/piisettings_union.py +31 -0
- cribl_control_plane/models/productscore.py +2 -1
- cribl_control_plane/models/rbacresource.py +2 -1
- cribl_control_plane/models/resourcepolicy.py +15 -2
- cribl_control_plane/models/rollbacksettings_union.py +44 -0
- cribl_control_plane/models/routeconf.py +3 -4
- cribl_control_plane/models/runnablejob.py +27 -0
- cribl_control_plane/models/runnablejobcollection.py +628 -0
- cribl_control_plane/models/runnablejobexecutor.py +360 -0
- cribl_control_plane/models/runnablejobscheduledsearch.py +279 -0
- cribl_control_plane/models/snisettings_union.py +31 -0
- cribl_control_plane/models/systemsettingsconf.py +291 -0
- cribl_control_plane/models/tlssettings_union.py +43 -0
- cribl_control_plane/models/updateconfiggroupbyproductandidop.py +19 -20
- cribl_control_plane/models/updateconfiggroupdeploybyproductandidop.py +19 -21
- cribl_control_plane/models/updatecribllakedatasetbylakeidandidop.py +10 -25
- cribl_control_plane/models/updatehectokenrequest.py +7 -1
- cribl_control_plane/models/updateinputbyidop.py +1 -19
- cribl_control_plane/models/updateinputhectokenbyidandtokenop.py +1 -19
- cribl_control_plane/models/updateoutputbyidop.py +1 -19
- cribl_control_plane/models/updatepacksbyidop.py +1 -20
- cribl_control_plane/models/updatepacksop.py +25 -0
- cribl_control_plane/models/updatepipelinebyidop.py +5 -23
- cribl_control_plane/models/updateroutesbyidop.py +3 -21
- cribl_control_plane/models/upgradegroupsettings_union.py +43 -0
- cribl_control_plane/models/upgradepackageurls.py +20 -0
- cribl_control_plane/models/upgradesettings.py +38 -0
- cribl_control_plane/models/uploadpackresponse.py +13 -0
- cribl_control_plane/models/workertypes.py +2 -1
- cribl_control_plane/nodes.py +37 -23
- cribl_control_plane/packs.py +292 -37
- cribl_control_plane/pipelines.py +98 -48
- cribl_control_plane/routes_sdk.py +86 -50
- cribl_control_plane/samples.py +32 -16
- cribl_control_plane/sdk.py +26 -6
- cribl_control_plane/settings.py +20 -0
- cribl_control_plane/sources.py +85 -33
- cribl_control_plane/statuses.py +16 -6
- cribl_control_plane/summaries.py +16 -6
- cribl_control_plane/system_sdk.py +20 -0
- cribl_control_plane/teams.py +16 -6
- cribl_control_plane/tokens.py +49 -21
- cribl_control_plane/utils/__init__.py +15 -3
- cribl_control_plane/utils/annotations.py +32 -8
- cribl_control_plane/utils/eventstreaming.py +10 -0
- cribl_control_plane/utils/forms.py +21 -10
- cribl_control_plane/utils/queryparams.py +14 -2
- cribl_control_plane/utils/retries.py +69 -5
- cribl_control_plane/utils/unmarshal_json_response.py +15 -1
- cribl_control_plane/versions.py +11 -6
- cribl_control_plane/versions_configs.py +16 -6
- {cribl_control_plane-0.0.39.dist-info → cribl_control_plane-0.4.0b23.dist-info}/METADATA +99 -43
- cribl_control_plane-0.4.0b23.dist-info/RECORD +450 -0
- {cribl_control_plane-0.0.39.dist-info → cribl_control_plane-0.4.0b23.dist-info}/WHEEL +1 -1
- cribl_control_plane-0.4.0b23.dist-info/licenses/LICENSE +201 -0
- cribl_control_plane/errors/healthstatus_error.py +0 -32
- cribl_control_plane/models/appmode.py +0 -13
- cribl_control_plane/models/createpipelineop.py +0 -24
- cribl_control_plane/models/createversionpushop.py +0 -23
- cribl_control_plane/models/healthstatus.py +0 -33
- cribl_control_plane-0.0.39.dist-info/RECORD +0 -315
|
@@ -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 InputSqsConnection(BaseModel):
|
|
|
23
27
|
pipeline: Optional[str] = None
|
|
24
28
|
|
|
25
29
|
|
|
26
|
-
class InputSqsMode(str, Enum):
|
|
30
|
+
class InputSqsMode(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 InputSqsCompression(str, Enum):
|
|
39
|
+
class InputSqsCompression(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 InputSqsPqControlsTypedDict(TypedDict):
|
|
49
|
+
pass
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class InputSqsPqControls(BaseModel):
|
|
53
|
+
pass
|
|
54
|
+
|
|
55
|
+
|
|
40
56
|
class InputSqsPqTypedDict(TypedDict):
|
|
41
57
|
mode: NotRequired[InputSqsMode]
|
|
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 InputSqsPqTypedDict(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[InputSqsCompression]
|
|
54
70
|
r"""Codec to use to compress the persisted data"""
|
|
71
|
+
pq_controls: NotRequired[InputSqsPqControlsTypedDict]
|
|
55
72
|
|
|
56
73
|
|
|
57
74
|
class InputSqsPq(BaseModel):
|
|
58
|
-
mode:
|
|
75
|
+
mode: Annotated[
|
|
76
|
+
Optional[InputSqsMode], PlainValidator(validate_open_enum(False))
|
|
77
|
+
] = InputSqsMode.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,26 +98,55 @@ class InputSqsPq(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:
|
|
101
|
+
compress: Annotated[
|
|
102
|
+
Optional[InputSqsCompression], PlainValidator(validate_open_enum(False))
|
|
103
|
+
] = InputSqsCompression.NONE
|
|
83
104
|
r"""Codec to use to compress the persisted data"""
|
|
84
105
|
|
|
106
|
+
pq_controls: Annotated[
|
|
107
|
+
Optional[InputSqsPqControls], pydantic.Field(alias="pqControls")
|
|
108
|
+
] = None
|
|
85
109
|
|
|
86
|
-
|
|
110
|
+
@field_serializer("mode")
|
|
111
|
+
def serialize_mode(self, value):
|
|
112
|
+
if isinstance(value, str):
|
|
113
|
+
try:
|
|
114
|
+
return models.InputSqsMode(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.InputSqsCompression(value)
|
|
124
|
+
except ValueError:
|
|
125
|
+
return value
|
|
126
|
+
return value
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
class InputSqsQueueType(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
87
130
|
r"""The queue type used (or created)"""
|
|
88
131
|
|
|
132
|
+
# Standard
|
|
89
133
|
STANDARD = "standard"
|
|
134
|
+
# FIFO
|
|
90
135
|
FIFO = "fifo"
|
|
91
136
|
|
|
92
137
|
|
|
93
|
-
class InputSqsAuthenticationMethod(str, Enum):
|
|
138
|
+
class InputSqsAuthenticationMethod(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
94
139
|
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
95
140
|
|
|
141
|
+
# Auto
|
|
96
142
|
AUTO = "auto"
|
|
143
|
+
# Manual
|
|
97
144
|
MANUAL = "manual"
|
|
145
|
+
# Secret Key pair
|
|
98
146
|
SECRET = "secret"
|
|
99
147
|
|
|
100
148
|
|
|
101
|
-
class InputSqsSignatureVersion(str, Enum):
|
|
149
|
+
class InputSqsSignatureVersion(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
102
150
|
r"""Signature version to use for signing SQS requests"""
|
|
103
151
|
|
|
104
152
|
V2 = "v2"
|
|
@@ -122,6 +170,8 @@ class InputSqsTypedDict(TypedDict):
|
|
|
122
170
|
type: InputSqsType
|
|
123
171
|
queue_name: str
|
|
124
172
|
r"""The name, URL, or ARN of the SQS queue to read events from. When a non-AWS URL is specified, format must be: '{url}/myQueueName'. Example: 'https://host:port/myQueueName'. Value must be a JavaScript expression (which can evaluate to a constant value), enclosed in quotes or backticks. Can only be evaluated at init time. Example referencing a Global Variable: `https://host:port/myQueue-${C.vars.myVar}`."""
|
|
173
|
+
queue_type: InputSqsQueueType
|
|
174
|
+
r"""The queue type used (or created)"""
|
|
125
175
|
id: NotRequired[str]
|
|
126
176
|
r"""Unique ID for this input"""
|
|
127
177
|
disabled: NotRequired[bool]
|
|
@@ -138,8 +188,6 @@ class InputSqsTypedDict(TypedDict):
|
|
|
138
188
|
connections: NotRequired[List[InputSqsConnectionTypedDict]]
|
|
139
189
|
r"""Direct connections to Destinations, and optionally via a Pipeline or a Pack"""
|
|
140
190
|
pq: NotRequired[InputSqsPqTypedDict]
|
|
141
|
-
queue_type: NotRequired[InputSqsQueueType]
|
|
142
|
-
r"""The queue type used (or created)"""
|
|
143
191
|
aws_account_id: NotRequired[str]
|
|
144
192
|
r"""SQS queue owner's AWS account ID. Leave empty if SQS queue is in same AWS account."""
|
|
145
193
|
create_queue: NotRequired[bool]
|
|
@@ -187,6 +235,12 @@ class InputSqs(BaseModel):
|
|
|
187
235
|
queue_name: Annotated[str, pydantic.Field(alias="queueName")]
|
|
188
236
|
r"""The name, URL, or ARN of the SQS queue to read events from. When a non-AWS URL is specified, format must be: '{url}/myQueueName'. Example: 'https://host:port/myQueueName'. Value must be a JavaScript expression (which can evaluate to a constant value), enclosed in quotes or backticks. Can only be evaluated at init time. Example referencing a Global Variable: `https://host:port/myQueue-${C.vars.myVar}`."""
|
|
189
237
|
|
|
238
|
+
queue_type: Annotated[
|
|
239
|
+
Annotated[InputSqsQueueType, PlainValidator(validate_open_enum(False))],
|
|
240
|
+
pydantic.Field(alias="queueType"),
|
|
241
|
+
]
|
|
242
|
+
r"""The queue type used (or created)"""
|
|
243
|
+
|
|
190
244
|
id: Optional[str] = None
|
|
191
245
|
r"""Unique ID for this input"""
|
|
192
246
|
|
|
@@ -214,11 +268,6 @@ class InputSqs(BaseModel):
|
|
|
214
268
|
|
|
215
269
|
pq: Optional[InputSqsPq] = None
|
|
216
270
|
|
|
217
|
-
queue_type: Annotated[
|
|
218
|
-
Optional[InputSqsQueueType], pydantic.Field(alias="queueType")
|
|
219
|
-
] = InputSqsQueueType.STANDARD
|
|
220
|
-
r"""The queue type used (or created)"""
|
|
221
|
-
|
|
222
271
|
aws_account_id: Annotated[Optional[str], pydantic.Field(alias="awsAccountId")] = (
|
|
223
272
|
None
|
|
224
273
|
)
|
|
@@ -228,7 +277,10 @@ class InputSqs(BaseModel):
|
|
|
228
277
|
r"""Create queue if it does not exist"""
|
|
229
278
|
|
|
230
279
|
aws_authentication_method: Annotated[
|
|
231
|
-
|
|
280
|
+
Annotated[
|
|
281
|
+
Optional[InputSqsAuthenticationMethod],
|
|
282
|
+
PlainValidator(validate_open_enum(False)),
|
|
283
|
+
],
|
|
232
284
|
pydantic.Field(alias="awsAuthenticationMethod"),
|
|
233
285
|
] = InputSqsAuthenticationMethod.AUTO
|
|
234
286
|
r"""AWS authentication method. Choose Auto to use IAM roles."""
|
|
@@ -244,7 +296,11 @@ class InputSqs(BaseModel):
|
|
|
244
296
|
r"""SQS service endpoint. If empty, defaults to the AWS Region-specific endpoint. Otherwise, it must point to SQS-compatible endpoint."""
|
|
245
297
|
|
|
246
298
|
signature_version: Annotated[
|
|
247
|
-
|
|
299
|
+
Annotated[
|
|
300
|
+
Optional[InputSqsSignatureVersion],
|
|
301
|
+
PlainValidator(validate_open_enum(False)),
|
|
302
|
+
],
|
|
303
|
+
pydantic.Field(alias="signatureVersion"),
|
|
248
304
|
] = InputSqsSignatureVersion.V4
|
|
249
305
|
r"""Signature version to use for signing SQS requests"""
|
|
250
306
|
|
|
@@ -301,3 +357,30 @@ class InputSqs(BaseModel):
|
|
|
301
357
|
|
|
302
358
|
num_receivers: Annotated[Optional[float], pydantic.Field(alias="numReceivers")] = 3
|
|
303
359
|
r"""How many receiver processes to run. The higher the number, the better the throughput - at the expense of CPU overhead."""
|
|
360
|
+
|
|
361
|
+
@field_serializer("queue_type")
|
|
362
|
+
def serialize_queue_type(self, value):
|
|
363
|
+
if isinstance(value, str):
|
|
364
|
+
try:
|
|
365
|
+
return models.InputSqsQueueType(value)
|
|
366
|
+
except ValueError:
|
|
367
|
+
return value
|
|
368
|
+
return value
|
|
369
|
+
|
|
370
|
+
@field_serializer("aws_authentication_method")
|
|
371
|
+
def serialize_aws_authentication_method(self, value):
|
|
372
|
+
if isinstance(value, str):
|
|
373
|
+
try:
|
|
374
|
+
return models.InputSqsAuthenticationMethod(value)
|
|
375
|
+
except ValueError:
|
|
376
|
+
return value
|
|
377
|
+
return value
|
|
378
|
+
|
|
379
|
+
@field_serializer("signature_version")
|
|
380
|
+
def serialize_signature_version(self, value):
|
|
381
|
+
if isinstance(value, str):
|
|
382
|
+
try:
|
|
383
|
+
return models.InputSqsSignatureVersion(value)
|
|
384
|
+
except ValueError:
|
|
385
|
+
return value
|
|
386
|
+
return value
|
|
@@ -1,10 +1,14 @@
|
|
|
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
|
|
7
|
-
from
|
|
9
|
+
from pydantic import field_serializer
|
|
10
|
+
from pydantic.functional_validators import PlainValidator
|
|
11
|
+
from typing import List, Optional, Union
|
|
8
12
|
from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
|
|
9
13
|
|
|
10
14
|
|
|
@@ -23,20 +27,32 @@ class InputSyslogConnection2(BaseModel):
|
|
|
23
27
|
pipeline: Optional[str] = None
|
|
24
28
|
|
|
25
29
|
|
|
26
|
-
class InputSyslogMode2(str, Enum):
|
|
30
|
+
class InputSyslogMode2(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 InputSyslogCompression2(str, Enum):
|
|
39
|
+
class InputSyslogCompression2(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 InputSyslogPqControls2TypedDict(TypedDict):
|
|
49
|
+
pass
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class InputSyslogPqControls2(BaseModel):
|
|
53
|
+
pass
|
|
54
|
+
|
|
55
|
+
|
|
40
56
|
class InputSyslogPq2TypedDict(TypedDict):
|
|
41
57
|
mode: NotRequired[InputSyslogMode2]
|
|
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 InputSyslogPq2TypedDict(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[InputSyslogCompression2]
|
|
54
70
|
r"""Codec to use to compress the persisted data"""
|
|
71
|
+
pq_controls: NotRequired[InputSyslogPqControls2TypedDict]
|
|
55
72
|
|
|
56
73
|
|
|
57
74
|
class InputSyslogPq2(BaseModel):
|
|
58
|
-
mode:
|
|
75
|
+
mode: Annotated[
|
|
76
|
+
Optional[InputSyslogMode2], PlainValidator(validate_open_enum(False))
|
|
77
|
+
] = InputSyslogMode2.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,18 +98,42 @@ class InputSyslogPq2(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:
|
|
101
|
+
compress: Annotated[
|
|
102
|
+
Optional[InputSyslogCompression2], PlainValidator(validate_open_enum(False))
|
|
103
|
+
] = InputSyslogCompression2.NONE
|
|
83
104
|
r"""Codec to use to compress the persisted data"""
|
|
84
105
|
|
|
106
|
+
pq_controls: Annotated[
|
|
107
|
+
Optional[InputSyslogPqControls2], pydantic.Field(alias="pqControls")
|
|
108
|
+
] = None
|
|
85
109
|
|
|
86
|
-
|
|
110
|
+
@field_serializer("mode")
|
|
111
|
+
def serialize_mode(self, value):
|
|
112
|
+
if isinstance(value, str):
|
|
113
|
+
try:
|
|
114
|
+
return models.InputSyslogMode2(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.InputSyslogCompression2(value)
|
|
124
|
+
except ValueError:
|
|
125
|
+
return value
|
|
126
|
+
return value
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
class InputSyslogMinimumTLSVersion2(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
87
130
|
TL_SV1 = "TLSv1"
|
|
88
131
|
TL_SV1_1 = "TLSv1.1"
|
|
89
132
|
TL_SV1_2 = "TLSv1.2"
|
|
90
133
|
TL_SV1_3 = "TLSv1.3"
|
|
91
134
|
|
|
92
135
|
|
|
93
|
-
class InputSyslogMaximumTLSVersion2(str, Enum):
|
|
136
|
+
class InputSyslogMaximumTLSVersion2(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
94
137
|
TL_SV1 = "TLSv1"
|
|
95
138
|
TL_SV1_1 = "TLSv1.1"
|
|
96
139
|
TL_SV1_2 = "TLSv1.2"
|
|
@@ -99,6 +142,12 @@ class InputSyslogMaximumTLSVersion2(str, Enum):
|
|
|
99
142
|
|
|
100
143
|
class InputSyslogTLSSettingsServerSide2TypedDict(TypedDict):
|
|
101
144
|
disabled: NotRequired[bool]
|
|
145
|
+
request_cert: NotRequired[bool]
|
|
146
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
147
|
+
reject_unauthorized: NotRequired[bool]
|
|
148
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
149
|
+
common_name_regex: NotRequired[str]
|
|
150
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
102
151
|
certificate_name: NotRequired[str]
|
|
103
152
|
r"""The name of the predefined certificate"""
|
|
104
153
|
priv_key_path: NotRequired[str]
|
|
@@ -109,10 +158,6 @@ class InputSyslogTLSSettingsServerSide2TypedDict(TypedDict):
|
|
|
109
158
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
110
159
|
ca_path: NotRequired[str]
|
|
111
160
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
112
|
-
request_cert: NotRequired[bool]
|
|
113
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
114
|
-
reject_unauthorized: NotRequired[Any]
|
|
115
|
-
common_name_regex: NotRequired[Any]
|
|
116
161
|
min_version: NotRequired[InputSyslogMinimumTLSVersion2]
|
|
117
162
|
max_version: NotRequired[InputSyslogMaximumTLSVersion2]
|
|
118
163
|
|
|
@@ -120,6 +165,19 @@ class InputSyslogTLSSettingsServerSide2TypedDict(TypedDict):
|
|
|
120
165
|
class InputSyslogTLSSettingsServerSide2(BaseModel):
|
|
121
166
|
disabled: Optional[bool] = True
|
|
122
167
|
|
|
168
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
169
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
170
|
+
|
|
171
|
+
reject_unauthorized: Annotated[
|
|
172
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
173
|
+
] = True
|
|
174
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
175
|
+
|
|
176
|
+
common_name_regex: Annotated[
|
|
177
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
178
|
+
] = "/.*/"
|
|
179
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
180
|
+
|
|
123
181
|
certificate_name: Annotated[
|
|
124
182
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
125
183
|
] = None
|
|
@@ -137,25 +195,40 @@ class InputSyslogTLSSettingsServerSide2(BaseModel):
|
|
|
137
195
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
138
196
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
139
197
|
|
|
140
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
141
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
142
|
-
|
|
143
|
-
reject_unauthorized: Annotated[
|
|
144
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
145
|
-
] = None
|
|
146
|
-
|
|
147
|
-
common_name_regex: Annotated[
|
|
148
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
149
|
-
] = None
|
|
150
|
-
|
|
151
198
|
min_version: Annotated[
|
|
152
|
-
|
|
199
|
+
Annotated[
|
|
200
|
+
Optional[InputSyslogMinimumTLSVersion2],
|
|
201
|
+
PlainValidator(validate_open_enum(False)),
|
|
202
|
+
],
|
|
203
|
+
pydantic.Field(alias="minVersion"),
|
|
153
204
|
] = None
|
|
154
205
|
|
|
155
206
|
max_version: Annotated[
|
|
156
|
-
|
|
207
|
+
Annotated[
|
|
208
|
+
Optional[InputSyslogMaximumTLSVersion2],
|
|
209
|
+
PlainValidator(validate_open_enum(False)),
|
|
210
|
+
],
|
|
211
|
+
pydantic.Field(alias="maxVersion"),
|
|
157
212
|
] = None
|
|
158
213
|
|
|
214
|
+
@field_serializer("min_version")
|
|
215
|
+
def serialize_min_version(self, value):
|
|
216
|
+
if isinstance(value, str):
|
|
217
|
+
try:
|
|
218
|
+
return models.InputSyslogMinimumTLSVersion2(value)
|
|
219
|
+
except ValueError:
|
|
220
|
+
return value
|
|
221
|
+
return value
|
|
222
|
+
|
|
223
|
+
@field_serializer("max_version")
|
|
224
|
+
def serialize_max_version(self, value):
|
|
225
|
+
if isinstance(value, str):
|
|
226
|
+
try:
|
|
227
|
+
return models.InputSyslogMaximumTLSVersion2(value)
|
|
228
|
+
except ValueError:
|
|
229
|
+
return value
|
|
230
|
+
return value
|
|
231
|
+
|
|
159
232
|
|
|
160
233
|
class InputSyslogMetadatum2TypedDict(TypedDict):
|
|
161
234
|
name: str
|
|
@@ -381,20 +454,32 @@ class InputSyslogConnection1(BaseModel):
|
|
|
381
454
|
pipeline: Optional[str] = None
|
|
382
455
|
|
|
383
456
|
|
|
384
|
-
class InputSyslogMode1(str, Enum):
|
|
457
|
+
class InputSyslogMode1(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
385
458
|
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."""
|
|
386
459
|
|
|
460
|
+
# Smart
|
|
387
461
|
SMART = "smart"
|
|
462
|
+
# Always On
|
|
388
463
|
ALWAYS = "always"
|
|
389
464
|
|
|
390
465
|
|
|
391
|
-
class InputSyslogCompression1(str, Enum):
|
|
466
|
+
class InputSyslogCompression1(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
392
467
|
r"""Codec to use to compress the persisted data"""
|
|
393
468
|
|
|
469
|
+
# None
|
|
394
470
|
NONE = "none"
|
|
471
|
+
# Gzip
|
|
395
472
|
GZIP = "gzip"
|
|
396
473
|
|
|
397
474
|
|
|
475
|
+
class InputSyslogPqControls1TypedDict(TypedDict):
|
|
476
|
+
pass
|
|
477
|
+
|
|
478
|
+
|
|
479
|
+
class InputSyslogPqControls1(BaseModel):
|
|
480
|
+
pass
|
|
481
|
+
|
|
482
|
+
|
|
398
483
|
class InputSyslogPq1TypedDict(TypedDict):
|
|
399
484
|
mode: NotRequired[InputSyslogMode1]
|
|
400
485
|
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."""
|
|
@@ -410,10 +495,13 @@ class InputSyslogPq1TypedDict(TypedDict):
|
|
|
410
495
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
411
496
|
compress: NotRequired[InputSyslogCompression1]
|
|
412
497
|
r"""Codec to use to compress the persisted data"""
|
|
498
|
+
pq_controls: NotRequired[InputSyslogPqControls1TypedDict]
|
|
413
499
|
|
|
414
500
|
|
|
415
501
|
class InputSyslogPq1(BaseModel):
|
|
416
|
-
mode:
|
|
502
|
+
mode: Annotated[
|
|
503
|
+
Optional[InputSyslogMode1], PlainValidator(validate_open_enum(False))
|
|
504
|
+
] = InputSyslogMode1.ALWAYS
|
|
417
505
|
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."""
|
|
418
506
|
|
|
419
507
|
max_buffer_size: Annotated[
|
|
@@ -437,18 +525,42 @@ class InputSyslogPq1(BaseModel):
|
|
|
437
525
|
path: Optional[str] = "$CRIBL_HOME/state/queues"
|
|
438
526
|
r"""The location for the persistent queue files. To this field's value, the system will append: /<worker-id>/inputs/<input-id>"""
|
|
439
527
|
|
|
440
|
-
compress:
|
|
528
|
+
compress: Annotated[
|
|
529
|
+
Optional[InputSyslogCompression1], PlainValidator(validate_open_enum(False))
|
|
530
|
+
] = InputSyslogCompression1.NONE
|
|
441
531
|
r"""Codec to use to compress the persisted data"""
|
|
442
532
|
|
|
533
|
+
pq_controls: Annotated[
|
|
534
|
+
Optional[InputSyslogPqControls1], pydantic.Field(alias="pqControls")
|
|
535
|
+
] = None
|
|
443
536
|
|
|
444
|
-
|
|
537
|
+
@field_serializer("mode")
|
|
538
|
+
def serialize_mode(self, value):
|
|
539
|
+
if isinstance(value, str):
|
|
540
|
+
try:
|
|
541
|
+
return models.InputSyslogMode1(value)
|
|
542
|
+
except ValueError:
|
|
543
|
+
return value
|
|
544
|
+
return value
|
|
545
|
+
|
|
546
|
+
@field_serializer("compress")
|
|
547
|
+
def serialize_compress(self, value):
|
|
548
|
+
if isinstance(value, str):
|
|
549
|
+
try:
|
|
550
|
+
return models.InputSyslogCompression1(value)
|
|
551
|
+
except ValueError:
|
|
552
|
+
return value
|
|
553
|
+
return value
|
|
554
|
+
|
|
555
|
+
|
|
556
|
+
class InputSyslogMinimumTLSVersion1(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
445
557
|
TL_SV1 = "TLSv1"
|
|
446
558
|
TL_SV1_1 = "TLSv1.1"
|
|
447
559
|
TL_SV1_2 = "TLSv1.2"
|
|
448
560
|
TL_SV1_3 = "TLSv1.3"
|
|
449
561
|
|
|
450
562
|
|
|
451
|
-
class InputSyslogMaximumTLSVersion1(str, Enum):
|
|
563
|
+
class InputSyslogMaximumTLSVersion1(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
452
564
|
TL_SV1 = "TLSv1"
|
|
453
565
|
TL_SV1_1 = "TLSv1.1"
|
|
454
566
|
TL_SV1_2 = "TLSv1.2"
|
|
@@ -457,6 +569,12 @@ class InputSyslogMaximumTLSVersion1(str, Enum):
|
|
|
457
569
|
|
|
458
570
|
class InputSyslogTLSSettingsServerSide1TypedDict(TypedDict):
|
|
459
571
|
disabled: NotRequired[bool]
|
|
572
|
+
request_cert: NotRequired[bool]
|
|
573
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
574
|
+
reject_unauthorized: NotRequired[bool]
|
|
575
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
576
|
+
common_name_regex: NotRequired[str]
|
|
577
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
460
578
|
certificate_name: NotRequired[str]
|
|
461
579
|
r"""The name of the predefined certificate"""
|
|
462
580
|
priv_key_path: NotRequired[str]
|
|
@@ -467,10 +585,6 @@ class InputSyslogTLSSettingsServerSide1TypedDict(TypedDict):
|
|
|
467
585
|
r"""Path on server containing certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
468
586
|
ca_path: NotRequired[str]
|
|
469
587
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
470
|
-
request_cert: NotRequired[bool]
|
|
471
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
472
|
-
reject_unauthorized: NotRequired[Any]
|
|
473
|
-
common_name_regex: NotRequired[Any]
|
|
474
588
|
min_version: NotRequired[InputSyslogMinimumTLSVersion1]
|
|
475
589
|
max_version: NotRequired[InputSyslogMaximumTLSVersion1]
|
|
476
590
|
|
|
@@ -478,6 +592,19 @@ class InputSyslogTLSSettingsServerSide1TypedDict(TypedDict):
|
|
|
478
592
|
class InputSyslogTLSSettingsServerSide1(BaseModel):
|
|
479
593
|
disabled: Optional[bool] = True
|
|
480
594
|
|
|
595
|
+
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
596
|
+
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
597
|
+
|
|
598
|
+
reject_unauthorized: Annotated[
|
|
599
|
+
Optional[bool], pydantic.Field(alias="rejectUnauthorized")
|
|
600
|
+
] = True
|
|
601
|
+
r"""Reject certificates not authorized by a CA in the CA certificate path or by another trusted CA (such as the system's)"""
|
|
602
|
+
|
|
603
|
+
common_name_regex: Annotated[
|
|
604
|
+
Optional[str], pydantic.Field(alias="commonNameRegex")
|
|
605
|
+
] = "/.*/"
|
|
606
|
+
r"""Regex matching allowable common names in peer certificates' subject attribute"""
|
|
607
|
+
|
|
481
608
|
certificate_name: Annotated[
|
|
482
609
|
Optional[str], pydantic.Field(alias="certificateName")
|
|
483
610
|
] = None
|
|
@@ -495,25 +622,40 @@ class InputSyslogTLSSettingsServerSide1(BaseModel):
|
|
|
495
622
|
ca_path: Annotated[Optional[str], pydantic.Field(alias="caPath")] = None
|
|
496
623
|
r"""Path on server containing CA certificates to use. PEM format. Can reference $ENV_VARS."""
|
|
497
624
|
|
|
498
|
-
request_cert: Annotated[Optional[bool], pydantic.Field(alias="requestCert")] = False
|
|
499
|
-
r"""Require clients to present their certificates. Used to perform client authentication using SSL certs."""
|
|
500
|
-
|
|
501
|
-
reject_unauthorized: Annotated[
|
|
502
|
-
Optional[Any], pydantic.Field(alias="rejectUnauthorized")
|
|
503
|
-
] = None
|
|
504
|
-
|
|
505
|
-
common_name_regex: Annotated[
|
|
506
|
-
Optional[Any], pydantic.Field(alias="commonNameRegex")
|
|
507
|
-
] = None
|
|
508
|
-
|
|
509
625
|
min_version: Annotated[
|
|
510
|
-
|
|
626
|
+
Annotated[
|
|
627
|
+
Optional[InputSyslogMinimumTLSVersion1],
|
|
628
|
+
PlainValidator(validate_open_enum(False)),
|
|
629
|
+
],
|
|
630
|
+
pydantic.Field(alias="minVersion"),
|
|
511
631
|
] = None
|
|
512
632
|
|
|
513
633
|
max_version: Annotated[
|
|
514
|
-
|
|
634
|
+
Annotated[
|
|
635
|
+
Optional[InputSyslogMaximumTLSVersion1],
|
|
636
|
+
PlainValidator(validate_open_enum(False)),
|
|
637
|
+
],
|
|
638
|
+
pydantic.Field(alias="maxVersion"),
|
|
515
639
|
] = None
|
|
516
640
|
|
|
641
|
+
@field_serializer("min_version")
|
|
642
|
+
def serialize_min_version(self, value):
|
|
643
|
+
if isinstance(value, str):
|
|
644
|
+
try:
|
|
645
|
+
return models.InputSyslogMinimumTLSVersion1(value)
|
|
646
|
+
except ValueError:
|
|
647
|
+
return value
|
|
648
|
+
return value
|
|
649
|
+
|
|
650
|
+
@field_serializer("max_version")
|
|
651
|
+
def serialize_max_version(self, value):
|
|
652
|
+
if isinstance(value, str):
|
|
653
|
+
try:
|
|
654
|
+
return models.InputSyslogMaximumTLSVersion1(value)
|
|
655
|
+
except ValueError:
|
|
656
|
+
return value
|
|
657
|
+
return value
|
|
658
|
+
|
|
517
659
|
|
|
518
660
|
class InputSyslogMetadatum1TypedDict(TypedDict):
|
|
519
661
|
name: str
|