@@ -18,35 +18,41 @@ func init() {
1818 }
1919}
2020
21- var Config = cfg {
21+ // Deprecated: use Default
22+ var Config = Default
23+
24+ var Default = Schema {
2225 WorkflowLimit : Int (200 ),
2326 WorkflowRegistrationQueueLimit : Int (20 ),
2427
2528 HTTPTrigger : httpTriggerGlobal {
2629 AuthRateLimit : Rate (100 , - 1 ), //TODO
2730 },
2831
29- PerOrg : orgs {
32+ PerOrg : Orgs {
3033 WorkflowDeploymentRateLimit : Rate (rate .Every (time .Minute ), 1 ),
31- TriggerEventQueueLimit : Int (1_000 ),
32- TriggerEventQueueTimeout : Duration (10 * time .Minute ),
3334 ZeroBalancePruningTimeout : Duration (24 * time .Hour ),
3435 },
35- PerOwner : owners {
36+ PerOwner : Owners {
3637 ExecutionConcurrencyLimit : Int (50 ),
3738 },
38- PerWorkflow : workflows {
39+ PerWorkflow : Workflows {
3940 TriggerLimit : Int (10 ),
4041 TriggerRateLimit : Rate (rate .Every (30 * time .Second ), 3 ),
41- TriggerRegistrationTimeout : Duration (10 * time .Second ),
42+ TriggerRegistrationsTimeout : Duration (10 * time .Second ),
43+ TriggerEventQueueLimit : Int (1_000 ),
44+ TriggerEventQueueTimeout : Duration (10 * time .Minute ),
4245 TriggerSubscriptionTimeout : Duration (5 * time .Second ),
46+ TriggerSubscriptionLimit : Int (10 ),
4347 CapabilityConcurrencyLimit : Int (3 ),
48+ CapabilityCallTimeout : Duration (8 * time .Minute ),
49+ SecretsConcurrencyLimit : Int (3 ),
4450 ExecutionConcurrencyLimit : Int (10 ),
45- ExecutionTimeout : Duration (5 * time .Minute ),
51+ ExecutionTimeout : Duration (10 * time .Minute ),
4652 ExecutionResponseLimit : Size (100 * config .KByte ),
4753 WASMExecutionTimeout : Duration (60 * time .Second ),
4854 WASMMemoryLimit : Size (100 * config .MByte ),
49- BinarySizeLimit : Size (30 * config .MByte ),
55+ WASMBinarySizeLimit : Size (30 * config .MByte ),
5056 ConsensusObservationSizeLimit : Size (10 * config .KByte ),
5157 ConsensusCallsLimit : Int (2 ),
5258 LogLineLimit : Size (config .KByte ),
@@ -90,43 +96,52 @@ var Config = cfg{
9096 },
9197}
9298
93- type cfg struct {
99+ type Schema struct {
94100 WorkflowLimit Setting [int ] `unit:"{workflow}"`
95101 WorkflowRegistrationQueueLimit Setting [int ] `unit:"{workflow}"`
96102
97103 HTTPTrigger httpTriggerGlobal
98104
99- PerOrg orgs `scope:"org"`
100- PerOwner owners `scope:"owner"`
101- PerWorkflow workflows `scope:"workflow"`
105+ PerOrg Orgs `scope:"org"`
106+ PerOwner Owners `scope:"owner"`
107+ PerWorkflow Workflows `scope:"workflow"`
102108}
103- type orgs struct {
109+ type Orgs struct {
104110 WorkflowDeploymentRateLimit Setting [config.Rate ]
105- TriggerEventQueueLimit Setting [int ] `unit:"{trigger}"`
106- TriggerEventQueueTimeout Setting [time.Duration ]
107111 ZeroBalancePruningTimeout Setting [time.Duration ]
108112}
109113
110- type owners struct {
114+ type Owners struct {
111115 ExecutionConcurrencyLimit Setting [int ] `unit:"{workflow}"`
112116}
113117
114- type workflows struct {
115- TriggerLimit Setting [int ] `unit:"{trigger}"`
116- TriggerRateLimit Setting [config.Rate ]
117- TriggerRegistrationTimeout Setting [time.Duration ]
118- TriggerSubscriptionTimeout Setting [time.Duration ]
119- CapabilityConcurrencyLimit Setting [int ] `unit:"{capability}"`
120- ExecutionConcurrencyLimit Setting [int ] `unit:"{workflow}"`
121- ExecutionTimeout Setting [time.Duration ]
122- ExecutionResponseLimit Setting [config.Size ]
123- WASMExecutionTimeout Setting [time.Duration ]
124- WASMMemoryLimit Setting [config.Size ]
125- BinarySizeLimit Setting [config.Size ]
118+ type Workflows struct {
119+ TriggerLimit Setting [int ] `unit:"{trigger}"`
120+ TriggerRateLimit Setting [config.Rate ]
121+ TriggerRegistrationsTimeout Setting [time.Duration ]
122+ TriggerSubscriptionTimeout Setting [time.Duration ]
123+ TriggerSubscriptionLimit Setting [int ] `unit:"{subscription}"`
124+ TriggerEventQueueLimit Setting [int ] `unit:"{trigger}"`
125+ TriggerEventQueueTimeout Setting [time.Duration ]
126+
127+ CapabilityConcurrencyLimit Setting [int ] `unit:"{capability}"`
128+ CapabilityCallTimeout Setting [time.Duration ]
129+
130+ SecretsConcurrencyLimit Setting [int ] `unit:"{secret}"`
131+
132+ ExecutionConcurrencyLimit Setting [int ] `unit:"{workflow}"`
133+ ExecutionTimeout Setting [time.Duration ]
134+ ExecutionResponseLimit Setting [config.Size ]
135+
136+ WASMExecutionTimeout Setting [time.Duration ]
137+ WASMMemoryLimit Setting [config.Size ]
138+ WASMBinarySizeLimit Setting [config.Size ]
139+
126140 ConsensusObservationSizeLimit Setting [config.Size ]
127141 ConsensusCallsLimit Setting [int ] `unit:"{call}"`
128- LogLineLimit Setting [config.Size ]
129- LogEventLimit Setting [int ] `unit:"{log}"`
142+
143+ LogLineLimit Setting [config.Size ]
144+ LogEventLimit Setting [int ] `unit:"{log}"`
130145
131146 CRONTrigger cronTrigger
132147 HTTPTrigger httpTrigger
0 commit comments