Skip to content

Commit 4d167e0

Browse files
gitforbitmjuraga
authored andcommitted
MEDIUM: balance: balance parameter reworked
1 parent 80aebb1 commit 4d167e0

File tree

2 files changed

+143
-17
lines changed

2 files changed

+143
-17
lines changed

build/haproxy_spec.yaml

Lines changed: 71 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2975,18 +2975,81 @@ definitions:
29752975
- source
29762976
- uri
29772977
- url_param
2978+
- hdr
29782979
- random
2980+
- rdp-cookie
2981+
type: string
2982+
hdr_name:
2983+
pattern: ^[^\s]+$
29792984
type: string
2980-
arguments:
2981-
items:
2982-
pattern: ^[^\s]+$
2983-
type: string
2984-
type: array
29852985
x-dependency:
29862986
algorithm:
2987-
value:
2988-
- uri
2989-
- url_param
2987+
required: true
2988+
value: hdr
2989+
x-display-name: Header Name
2990+
hdr_use_domain_only:
2991+
type: boolean
2992+
x-dependency:
2993+
algorithm:
2994+
value: hdr
2995+
x-display-name: Header Use Domain Only
2996+
random_draws:
2997+
type: integer
2998+
x-dependency:
2999+
algorithm:
3000+
value: random
3001+
x-display-name: Random Draws
3002+
x-nullable: false
3003+
rdp_cookie_name:
3004+
pattern: ^[^\s]+$
3005+
type: string
3006+
x-dependency:
3007+
algorithm:
3008+
value: rdp-cookie
3009+
x-display-name: Rdp Cookie Name
3010+
uri_depth:
3011+
pattern: ^[^\d+$]
3012+
type: integer
3013+
x-dependency:
3014+
algorithm:
3015+
value: uri
3016+
x-display-name: Uri Depth
3017+
uri_len:
3018+
pattern: ^[^\d+$]
3019+
type: integer
3020+
x-dependency:
3021+
algorithm:
3022+
value: uri
3023+
x-display-name: Uri Len
3024+
uri_whole:
3025+
type: boolean
3026+
x-dependency:
3027+
algorithm:
3028+
value: uri
3029+
x-display-name: Uri Whole
3030+
url_param:
3031+
pattern: ^[^\s]+$
3032+
type: string
3033+
x-dependency:
3034+
algorithm:
3035+
required: true
3036+
value: url_param
3037+
x-display-name: Url Param
3038+
url_param_check_post:
3039+
type: integer
3040+
x-dependency:
3041+
algorithm:
3042+
value: url_param
3043+
x-display-name: Url Param Check Post
3044+
url_param_max_wait:
3045+
pattern: ^[^\d+$]
3046+
type: integer
3047+
x-dependency:
3048+
algorithm:
3049+
value: url_param
3050+
x-display-name: Url Param Max Weight
3051+
required:
3052+
- algorithm
29903053
type: object
29913054
forwardfor:
29923055
properties:

models/configuration.yaml

Lines changed: 72 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1425,18 +1425,81 @@ forwardfor:
14251425
type: boolean
14261426
balance:
14271427
type: object
1428+
required:
1429+
- algorithm
14281430
properties:
14291431
algorithm:
14301432
type: string
1431-
enum: [roundrobin, static-rr, leastconn, first, source, uri, url_param, random]
1432-
arguments:
1433-
type: array
1434-
items:
1435-
type: string
1436-
pattern: '^[^\s]+$'
1437-
x-dependency:
1438-
algorithm:
1439-
value: [uri, url_param]
1433+
enum: [roundrobin, static-rr, leastconn, first, source, uri, url_param, hdr, random, rdp-cookie]
1434+
uri_whole:
1435+
type: boolean
1436+
x-display-name: Uri Whole
1437+
x-dependency:
1438+
algorithm:
1439+
value: uri
1440+
uri_len:
1441+
type: integer
1442+
x-display-name: Uri Len
1443+
pattern: '^[^\d+$]'
1444+
x-dependency:
1445+
algorithm:
1446+
value: uri
1447+
uri_depth:
1448+
type: integer
1449+
x-display-name: Uri Depth
1450+
pattern: '^[^\d+$]'
1451+
x-dependency:
1452+
algorithm:
1453+
value: uri
1454+
url_param:
1455+
type: string
1456+
x-display-name: Url Param
1457+
pattern: '^[^\s]+$'
1458+
x-dependency:
1459+
algorithm:
1460+
value: url_param
1461+
required: true
1462+
url_param_check_post:
1463+
type: integer
1464+
x-display-name: Url Param Check Post
1465+
x-dependency:
1466+
algorithm:
1467+
value: url_param
1468+
url_param_max_wait:
1469+
type: integer
1470+
x-display-name: Url Param Max Weight
1471+
pattern: '^[^\d+$]'
1472+
x-dependency:
1473+
algorithm:
1474+
value: url_param
1475+
hdr_name:
1476+
type: string
1477+
x-display-name: Header Name
1478+
pattern: '^[^\s]+$'
1479+
x-dependency:
1480+
algorithm:
1481+
value: hdr
1482+
required: true
1483+
hdr_use_domain_only:
1484+
type: boolean
1485+
x-display-name: Header Use Domain Only
1486+
x-dependency:
1487+
algorithm:
1488+
value: hdr
1489+
random_draws:
1490+
type: integer
1491+
x-display-name: Random Draws
1492+
x-nullable: false
1493+
x-dependency:
1494+
algorithm:
1495+
value: random
1496+
rdp_cookie_name:
1497+
type: string
1498+
x-display-name: Rdp Cookie Name
1499+
pattern: '^[^\s]+$'
1500+
x-dependency:
1501+
algorithm:
1502+
value: rdp-cookie
14401503
httpchk:
14411504
type: object
14421505
x-display-name: HTTP Check

0 commit comments

Comments
 (0)