Skip to content

Commit 5b870df

Browse files
OAS Update
1 parent 72c68b9 commit 5b870df

File tree

1 file changed

+90
-101
lines changed

1 file changed

+90
-101
lines changed

services/iaas/v1beta1/iaas.json

Lines changed: 90 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,20 @@
114114
},
115115
"description": "A bad request."
116116
},
117+
"Conflict": {
118+
"content": {
119+
"application/json": {
120+
"example": {
121+
"code": 409,
122+
"msg": "Conflict"
123+
},
124+
"schema": {
125+
"$ref": "#/components/schemas/Error"
126+
}
127+
}
128+
},
129+
"description": "A conflict has occurred."
130+
},
117131
"Forbidden": {
118132
"content": {
119133
"application/json": {
@@ -250,7 +264,7 @@
250264
"properties": {
251265
"defaultNameservers": {
252266
"items": {
253-
"$ref": "#/components/schemas/IPv4"
267+
"$ref": "#/components/schemas/IP"
254268
},
255269
"maxItems": 3,
256270
"type": "array"
@@ -354,10 +368,10 @@
354368
"minProperties": 1,
355369
"properties": {
356370
"ipv4": {
357-
"$ref": "#/components/schemas/CreateNetworkIPv4"
371+
"$ref": "#/components/schemas/CreateNetworkIPv4Body"
358372
},
359373
"ipv6": {
360-
"$ref": "#/components/schemas/v1CreateNetworkIPv6"
374+
"$ref": "#/components/schemas/CreateNetworkIPv6Body"
361375
}
362376
},
363377
"type": "object"
@@ -393,9 +407,12 @@
393407
},
394408
"type": "object"
395409
},
396-
"CreateNetworkIPv4": {
410+
"CreateNetworkIPv4Body": {
397411
"description": "The config object for a IPv4 network.",
398412
"properties": {
413+
"gateway": {
414+
"$ref": "#/components/schemas/v1NetworkGateway"
415+
},
399416
"nameservers": {
400417
"$ref": "#/components/schemas/Nameserver"
401418
},
@@ -409,13 +426,36 @@
409426
},
410427
"type": "object"
411428
},
429+
"CreateNetworkIPv6Body": {
430+
"description": "The config object for a IPv6 network.",
431+
"properties": {
432+
"gateway": {
433+
"$ref": "#/components/schemas/v1NetworkGateway"
434+
},
435+
"nameservers": {
436+
"$ref": "#/components/schemas/Nameserverv6"
437+
},
438+
"prefixLength": {
439+
"default": 64,
440+
"example": 64,
441+
"maximum": 128,
442+
"minimum": 56,
443+
"type": "integer"
444+
}
445+
},
446+
"type": "object"
447+
},
412448
"CreateNetworkPayload": {
449+
"description": "Object that represents the request body for a network create.",
413450
"properties": {
414451
"addressFamily": {
415452
"$ref": "#/components/schemas/CreateNetworkAddressFamily"
416453
},
417454
"name": {
418455
"$ref": "#/components/schemas/GenericName"
456+
},
457+
"routed": {
458+
"$ref": "#/components/schemas/v1Routed"
419459
}
420460
},
421461
"required": [
@@ -448,8 +488,8 @@
448488
"pattern": "^[A-Za-z0-9]+((-|_|\\s|\\.)[A-Za-z0-9]+)*$",
449489
"type": "string"
450490
},
451-
"IPv4": {
452-
"description": "Object that represents an IPv4 address.",
491+
"IP": {
492+
"description": "Object that represents an IP address.",
453493
"example": "10.1.2.10",
454494
"pattern": "((^\\s*((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]))\\s*$)|(^\\s*((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(\\.(25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:)))(%.+)?\\s*$))",
455495
"type": "string"
@@ -467,7 +507,7 @@
467507
"50.60.70.80"
468508
],
469509
"items": {
470-
"$ref": "#/components/schemas/IPv4"
510+
"$ref": "#/components/schemas/IP"
471511
},
472512
"maxItems": 3,
473513
"type": "array"
@@ -487,6 +527,9 @@
487527
"Network": {
488528
"description": "Object that represents a network.",
489529
"properties": {
530+
"gateway": {
531+
"$ref": "#/components/schemas/v1NetworkGateway"
532+
},
490533
"name": {
491534
"example": "My network",
492535
"type": "string"
@@ -519,7 +562,10 @@
519562
"type": "array"
520563
},
521564
"publicIp": {
522-
"$ref": "#/components/schemas/IPv4"
565+
"$ref": "#/components/schemas/IP"
566+
},
567+
"routed": {
568+
"$ref": "#/components/schemas/v1Routed"
523569
},
524570
"state": {
525571
"$ref": "#/components/schemas/ResourceState"
@@ -662,12 +708,16 @@
662708
"type": "object"
663709
},
664710
"PartialUpdateNetworkPayload": {
711+
"description": "Object that represents the request body for a network update.",
665712
"properties": {
666713
"addressFamily": {
667714
"$ref": "#/components/schemas/UpdateNetworkAddressFamily"
668715
},
669716
"name": {
670717
"$ref": "#/components/schemas/GenericName"
718+
},
719+
"routed": {
720+
"$ref": "#/components/schemas/v1Routed"
671721
}
672722
},
673723
"type": "object"
@@ -786,7 +836,7 @@
786836
"description": "Object represents a network route.",
787837
"properties": {
788838
"nexthop": {
789-
"$ref": "#/components/schemas/IPv4"
839+
"$ref": "#/components/schemas/IP"
790840
},
791841
"prefix": {
792842
"$ref": "#/components/schemas/CIDR"
@@ -849,7 +899,7 @@
849899
"properties": {
850900
"defaultNameservers": {
851901
"items": {
852-
"$ref": "#/components/schemas/IPv4"
902+
"$ref": "#/components/schemas/IP"
853903
},
854904
"maxItems": 3,
855905
"type": "array"
@@ -871,47 +921,52 @@
871921
"minProperties": 1,
872922
"properties": {
873923
"ipv4": {
874-
"$ref": "#/components/schemas/UpdateNetworkIPv4"
924+
"$ref": "#/components/schemas/UpdateNetworkIPv4Body"
875925
},
876926
"ipv6": {
877-
"$ref": "#/components/schemas/v1UpdateNetworkIPv6"
927+
"$ref": "#/components/schemas/UpdateNetworkIPv6Body"
878928
}
879929
},
880930
"type": "object"
881931
},
882-
"UpdateNetworkIPv4": {
932+
"UpdateNetworkIPv4Body": {
883933
"description": "The config object for a IPv4 network update.",
884934
"properties": {
935+
"gateway": {
936+
"$ref": "#/components/schemas/v1NetworkGateway"
937+
},
885938
"nameservers": {
886939
"$ref": "#/components/schemas/Nameserver"
887940
}
888941
},
889942
"type": "object"
890943
},
891-
"v1CreateNetworkIPv6": {
892-
"description": "The config object for a IPv6 network.",
944+
"UpdateNetworkIPv6Body": {
945+
"description": "The config object for a IPv6 network update.",
893946
"properties": {
947+
"gateway": {
948+
"$ref": "#/components/schemas/v1NetworkGateway"
949+
},
894950
"nameservers": {
895951
"$ref": "#/components/schemas/Nameserverv6"
896-
},
897-
"prefixLength": {
898-
"default": 64,
899-
"example": 64,
900-
"maximum": 128,
901-
"minimum": 56,
902-
"type": "integer"
903952
}
904953
},
905954
"type": "object"
906955
},
907-
"v1UpdateNetworkIPv6": {
908-
"description": "The config object for a IPv6 network update.",
909-
"properties": {
910-
"nameservers": {
911-
"$ref": "#/components/schemas/Nameserverv6"
956+
"v1NetworkGateway": {
957+
"allOf": [
958+
{
959+
"$ref": "#/components/schemas/IP"
912960
}
913-
},
914-
"type": "object"
961+
],
962+
"description": "The gateway of a network. If not specified the first ip of the network will be assigned as the gateway. If 'null' is sent, then the network doesn't have a gateway.",
963+
"nullable": true
964+
},
965+
"v1Routed": {
966+
"default": true,
967+
"description": "Shows if the network is routed and therefore accessible from other networks.",
968+
"example": true,
969+
"type": "boolean"
915970
}
916971
}
917972
},
@@ -1069,18 +1124,7 @@
10691124
"$ref": "#/components/responses/NotFound"
10701125
},
10711126
"409": {
1072-
"content": {
1073-
"application/json": {
1074-
"example": {
1075-
"code": 409,
1076-
"msg": "Areas must no longer be referenced by any project to be deleted"
1077-
},
1078-
"schema": {
1079-
"$ref": "#/components/schemas/Error"
1080-
}
1081-
}
1082-
},
1083-
"description": "Tried to delete an area that was still in use by a project."
1127+
"$ref": "#/components/responses/Conflict"
10841128
},
10851129
"500": {
10861130
"$ref": "#/components/responses/InternalServerError"
@@ -1287,18 +1331,7 @@
12871331
"$ref": "#/components/responses/NotFound"
12881332
},
12891333
"409": {
1290-
"content": {
1291-
"application/json": {
1292-
"example": {
1293-
"code": 409,
1294-
"msg": "Network ranges must not overlap with other network ranges or transfer networks"
1295-
},
1296-
"schema": {
1297-
"$ref": "#/components/schemas/Error"
1298-
}
1299-
}
1300-
},
1301-
"description": "Tried to add a network range that conflicts with an existing network range or transfer range."
1334+
"$ref": "#/components/responses/Conflict"
13021335
},
13031336
"500": {
13041337
"$ref": "#/components/responses/InternalServerError"
@@ -1339,18 +1372,7 @@
13391372
"$ref": "#/components/responses/NotFound"
13401373
},
13411374
"409": {
1342-
"content": {
1343-
"application/json": {
1344-
"example": {
1345-
"code": 409,
1346-
"msg": "Network ranges must no longer be used to be deleted"
1347-
},
1348-
"schema": {
1349-
"$ref": "#/components/schemas/Error"
1350-
}
1351-
}
1352-
},
1353-
"description": "Tried to delete a network range that is still in use."
1375+
"$ref": "#/components/responses/Conflict"
13541376
},
13551377
"500": {
13561378
"$ref": "#/components/responses/InternalServerError"
@@ -1539,18 +1561,7 @@
15391561
"$ref": "#/components/responses/NotFound"
15401562
},
15411563
"409": {
1542-
"content": {
1543-
"application/json": {
1544-
"example": {
1545-
"code": 409,
1546-
"msg": "routes must not overlap with other network ranges or transfer networks"
1547-
},
1548-
"schema": {
1549-
"$ref": "#/components/schemas/Error"
1550-
}
1551-
}
1552-
},
1553-
"description": "Tried to add a route that conflicts with an existing network range or transfer range."
1564+
"$ref": "#/components/responses/Conflict"
15541565
},
15551566
"500": {
15561567
"$ref": "#/components/responses/InternalServerError"
@@ -1774,18 +1785,7 @@
17741785
"$ref": "#/components/responses/NotFound"
17751786
},
17761787
"409": {
1777-
"content": {
1778-
"application/json": {
1779-
"example": {
1780-
"code": 409,
1781-
"msg": "Can not allocate prefixes for network. Ensure the area has sufficient space in the configured network ranges"
1782-
},
1783-
"schema": {
1784-
"$ref": "#/components/schemas/Error"
1785-
}
1786-
}
1787-
},
1788-
"description": "Can not allocate prefixes for network."
1788+
"$ref": "#/components/responses/Conflict"
17891789
},
17901790
"500": {
17911791
"$ref": "#/components/responses/InternalServerError"
@@ -1823,18 +1823,7 @@
18231823
"$ref": "#/components/responses/NotFound"
18241824
},
18251825
"409": {
1826-
"content": {
1827-
"application/json": {
1828-
"example": {
1829-
"code": 409,
1830-
"msg": "Can not delete network. It is still has systems connected to it."
1831-
},
1832-
"schema": {
1833-
"$ref": "#/components/schemas/Error"
1834-
}
1835-
}
1836-
},
1837-
"description": "Can not delete network that is still in use."
1826+
"$ref": "#/components/responses/Conflict"
18381827
},
18391828
"500": {
18401829
"$ref": "#/components/responses/InternalServerError"

0 commit comments

Comments
 (0)