cloudapi: make UploadOptions anyOf

oneOf means that the body is valid against exactly ONE schema. There's an
issue with AWS EC2 upload options though: It requires region and
share_with_accounts fields. Such a request is also valid AWS S3 upload though
(this one only require region). This means that AWS EC2 upload options will be
always valid against two schemas which violates the oneOf rule.

Let's switch to anyOf and explain this in the openAPI spec.

Signed-off-by: Ondřej Budai <ondrej@budai.cz>
This commit is contained in:
Ondřej Budai 2022-05-13 09:43:18 +02:00 committed by Chloe Kaubisch
parent a8a1bb4270
commit 00d602efc3
2 changed files with 124 additions and 106 deletions

View file

@ -295,10 +295,16 @@ type GCPUploadStatus struct {
// ImageRequest defines model for ImageRequest.
type ImageRequest struct {
Architecture string `json:"architecture"`
ImageType ImageTypes `json:"image_type"`
Ostree *OSTree `json:"ostree,omitempty"`
Repositories []Repository `json:"repositories"`
Architecture string `json:"architecture"`
ImageType ImageTypes `json:"image_type"`
Ostree *OSTree `json:"ostree,omitempty"`
Repositories []Repository `json:"repositories"`
// This should really be oneOf but AWSS3UploadOptions is a subset of
// AWSEC2UploadOptions. This means that all AWSEC2UploadOptions objects
// are also valid AWSS3UploadOptionas objects which violates the oneOf
// rules. Therefore, we have to use anyOf here but be aware that it isn't
// possible to mix and match more schemas together.
UploadOptions *UploadOptions `json:"upload_options,omitempty"`
}
@ -397,7 +403,11 @@ type Subscription struct {
ServerUrl string `json:"server_url"`
}
// UploadOptions defines model for UploadOptions.
// This should really be oneOf but AWSS3UploadOptions is a subset of
// AWSEC2UploadOptions. This means that all AWSEC2UploadOptions objects
// are also valid AWSS3UploadOptionas objects which violates the oneOf
// rules. Therefore, we have to use anyOf here but be aware that it isn't
// possible to mix and match more schemas together.
type UploadOptions interface{}
// UploadStatus defines model for UploadStatus.
@ -651,106 +661,108 @@ func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL
// Base64 encoded, gzipped, json marshaled Swagger object
var swaggerSpec = []string{
"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",
"hdwNms/gfP/xfwMAAP//5Y1kUqFXAAA=",
"H4sIAAAAAAAC/+x8+XPiOhLwv6Jiv6p5r8JhrkBS9WoXCEm4cgA5H1MpYcu2wJYcSebIq/nfv5J8YMBJ",
"yO7s7rdfzfwwAVvqbrX6UneLvzI6dT1KEBE8c/pXxoMMukggFn6zkPxrIK4z7AlMSeY0cwMtBDAx0CqT",
"zaAVdD0HbQ1fQMdHmdNMMfPjRzaD5ZxXH7F1Jpsh0JVv1Mhshus2cqGcItaefM4Fw8RS0zh+S8F95btT",
"xAA1ARbI5QATgKBugxBgkpoIQEyNpr1Ljxr7ET0/opcKdONh1G6V7jyHQuNakRasn1EPMYED/AxZiua/",
"Iqoypxnk55aIi1wxk91Fkc1wGzL0ssTCfoG6Tv1wS+LZf2aKpXKlelyrn2jFUuZ7NqN4kEJuDBwyBtcK",
"NoEet6l4CRacpMld56K3+1T9yGYYevUxQ4YkIFxTOq3f49l0OkO6kHiTnBoJKPwURkEXb1MEXZzT9HpZ",
"q52Ua7Vq9aRqVKZpHPsii3cWI/HGMN4hflT+ubuczs9PkL/HOJ856bqTRCEHpcJ/8xn6ZHHYhRaKRWZH",
"E6GLpB4KGwFfgUEGUBPyoCOA63MBpgj4BL/60lyogRZeIAIY4tRnOgIWo76Xn5COCSQSgDmgLhYCGcBk",
"1FVT5FoQF1kAAYPEoC6gBIEp5MgAlAAI7u46ZwDzCbEQQQwKZOQnZGMLAglXhKWJkEN1KMId3F5gP3wD",
"ljZiSNGioABuU98x1OKidUNiALmXXCCm8F/SJRAUOJgLAB0HRGj46YTYQnj8tFAwqM7zLtYZ5dQUeZ26",
"BURyPi/oDi5AuT2FULf+vsBo+Yd6lNMdnHOgQFz8Db5FyvciEb3ESL7tMEBKI/Ll1qZrUbAdL2o7Pt7p",
"7a07gDW7ezGmvg7JMARzoTCm2UJ/GpPwgo19ojpnkqTksH+CmAqqGvVpSc/BaamSq1SK5dyJpldzx8VS",
"WTtGde0EldKoE4hAIj6gSxIRDDqMqlBcTEwMgEWkLUpFwQ1lAjqHyE0kMwIvUM7ADOmCsnXB9IkBXUQE",
"dPje25xNlzlBcxJ1LiB5h0lVvYbM6vQ4V9TLZq5iQC0Hj0ulnDbVjrVS+cSoGbVPDd2GY/t7uyeBCa38",
"xHK9Zxm3DdchlmCH3gSANBJaMmjiqKMEADrOtZk5/fOvzP9hyMycZv5W2ARVhTBsKFyryUNkIoaIjjI/",
"sntEG9vEFktlJN19DtVPprliySjnYKV6nKuUjo+r1UpF0zQtk82YlLlQZE4zvq+Y+cnCjJQFfd8sqU8t",
"/lMXpRg59bFjJCOVODCZ05ny/h9h6dEZVnSl71II/MNlDSDBJuLip67NTQLdXtgOoZuRH1OJBDSggD+T",
"SMoFQ+hFp66LRaq9+s2G3P49MluSmwKEw1Nsnwf1ObQC2LvnAvUmcHqY6I5vYGKBq/b9sJFJBKsfrSeE",
"ETNiL5T98RH/hkGssG8PdJ8L6uI3GAc6HxHR2h79I5sxsGTA1Bd7sR6zkZOrpzEqEE62IekjlB05OCJ/",
"d3KgSIewbxfMP6ttewK8xYAExzcG+OcaDB7D/XS5IQkx04Kp6ItM20BJ49mB9EjWbQAdNmeLkffqrLrL",
"/BDQ9gI/tiQBuDZjlO1rg4EExI78KJlmJKwXJgJZiAVRIeSBsH/qUOLBewQE65EKQ3xXLcXXdcTlWkyI",
"HZ9JT+whIg2FXNBGrzYD9xSrtafM28szsYP4mgvkHiwC55spKRKQNHmJ07hHubAY4l87iXtwLSOXF4Y8",
"yrGgDKfZ0vZKMAiSY4BJGYgoAdxDOjaxPHIRsG3d8mBsI44mZGv2EjsOoMRZq8hTHp4EBQbyOHUWKDy/",
"CIbRAsVIJkSilD7hegSw4MgxwW/CRusAGKHqgAcXEDtw6iAQjVb+GDBKBaBsQiBZAypsJKlnIulmDOAx",
"Knf5d0VzhPiFI8GBiZFjRDD3loM5wBahLIrpD9rlYQRhnZoiSYSln0EaJcf+yGZ8HmbMDqLjjgcq9pln",
"y2ZiBf5Z1lWnBkoVUzkIJk5bKafEw+yBwhAP3wGcbrPUKvs48JKHrVSNTnEeEfsP2oeAu2kbsWXgFKh0",
"ys+3TM1OdIjJS5SDjK1GUStVsplVzqK5EJyPiTiuSCpceZL3KCZiO8QoLCD7NK5PTM5uUKedXS5aN5+k",
"faa+Pkfi/UQAJACtMBcyuhuNG1dnjeEZGAnKZPSnO5Bz0FQg8rtpmPBLLsTwbtSUnnKSNkLliQSVJiw2",
"ONj1KBNhGkZlJg0g3ZAvEGgTC5Pw7J2fkHF8DleAdrJUSyzs8Ox90bqR1kkyLQuWNtZtaXOk4dw2iwpW",
"cJJX6ANa8qBjKgO5sdNR+mpCvumBi2Q56OHcxNe0si7PbuoT+gYCZkToAOSJ7IGk+ivprU16cp+VconB",
"+0SSIl6TsvHTBHMFTfLXZNQN+akS7DErofyODQU9OsbnwQghEOUvdIf6Rt6i1HKQyl7wQHRUYqMQJ7HC",
"vGCSiVlFous7AudCyqPhQHcoR1xIMuWgIKEwIb+F+apIPAPBjKf9Ltms25QjAqAvqAsF1qHjrHeZjPwv",
"pOx3EonyPETNiC9q3SAaLulVULYlOU18lXjmJ6QNdTsSEsV1nRIBMQEw5hSL3GyIBkjK8+BeURAkDDiA",
"DJ1OCAA58E36r9O/kAuxg40f305BgwD1DUDDYIhLEYRCxiMMcWlDN7h0CQLsLCsPzikDIfey4Bt0sI7+",
"EX6Xe/4tH2LmiC2wjhrBvC/SEKAOQbyH213nVPiRg573D+h53KMib4WTojlJklQS6qvcCNcfZbQlXTss",
"MFxMeCoPDOpCTE7/Cv5KhEo9wcjHAoHgKfjNY9iFbP37PnLHCRCqVLyMRILdhyKcu8uRjep9A5SBbzs0",
"pWvdx6KJeTAnMA5SUAEk6wmJ+LutTX+qgOl0Tyoy2cyOPBy6eZlsJti2fTZnspmQwcmHX4jZ36uBhU7s",
"Qx/78xKU2Uzojl5284SQ64gYkIjclEFs5MpauVosfxoxJMBlP8t3buUV9gt4TLexQLqQ57kt0lb145fj",
"yvt+Pnh8wPF8vPaQOlQH6azP5lyPxnKUWvH2MesnHBQCb/9CvYOSSdux1l4NMsm6La7skP492oX3JApF",
"R4WDkw1x+PvlZEuYpohZcRiALY14J8exs8wv5Q+kRmIn/BhQFnyOKnNhkmFPFhMSlkAFlxINXPIcs30c",
"frRh8huHXvz1LSAmKNKFD5FhoVycSg2/KV+NWPQAEy6g46gHlu7J/6WWxWZA/d0ateCeDNdSl9ILE3zb",
"srFvZ86RQRnMtWQolmtC/k7w6CD5amtmSStp2olWy2upARFiC8S2Z0Rx35zOcN5UiEPbk6fMUo9tf7pV",
"yWBOatkN8vmu9auUsinJqwVifC9VW/68Hh+Sv0EVdohsIG64kmYn40pFisGX7jNMuRGVid87aBIlJuHI",
"98C/p/9K9g/hTlqeITp8b4OcY5KeC4gaffYZHx14998IKqCT9mqHCwppNu4QChpzgsnZd8/i2Uxo8ffW",
"4EGGtg7UYRpE6mTILe67MrDKnGYaYd0DdM7kloeNQ1rpWKtMSwY8RifVytQoV6b1ab0E6+UqqsJazShN",
"jzXThIHKmLsgpwwS3c45eI6AfL0BzGzkFOqFwEkWpDVI7k5SD839osPOxJRp77aH7DNvJ2+0x0U7JGHf",
"jacLyDuSk5Y6DvdbYUjb2N2KUGr0kUoE8ug7byJ7+JHF2zdt2HKN6nuvCIyin3eiyZQXCSv1SfU8CAje",
"NUXZgAkxjdKLJmKYfVsBOQqlY99M6wbJM2TYMGgtkA4LEVEwMBcFKXj1jeRJOJQXKC8cYL11G+nzF8uz",
"EuudUuogqFKolmfN0Xr/9HxxcwHmaB3nrCWvN3lwla3BfJMpX2/nnHLyX7N90bkCNxc34Oau2e+0QK/9",
"BJr961ZPvZ6QCXFvO1fNi4Y+0mmz3Tjrm/Wnyzl66x5Dwxk8LWvw4qLjdKEj6t1ZaVVolnpHdsfs+KsL",
"4d3PamhC+kPr7K52PIPjqnd/VnXPB92yN0cEDQv62H19vZ1frW+5/Viit4/L9tvdaFpsXQ1aZuvCmj/W",
"b0sT8vY8Zx29xc6129KS9aYO9A377gjfQ9I4426x/tR+5dNq465cM8QdG5Rvn4wH62R49IhvzPv6cEJ6",
"zdlYKy/um9fGYMSfyid92CLHHa94vfDqnTYtdFD7/qn46raubxqwp027l2XftCotH8350Xg0IcvbhzFq",
"9Vf+c//4evBIr296y8Xg1lxNreLjWX3hP2s9MSvoV5elFfS1lcsb/sll10PzxfXNcOVMyPpVzNbPJqP3",
"GJ2vveWztbhdCkIG9YI1avuF7v2YPWnVktu+G9da+rRWmeuX5+NzczB3yPyiMCGaeVdpDGFVq1yWVzNt",
"LqaovOjpN4/05trvNe/55WihaXcXT431DfLXR/Wafld4atuD2rw8uu/NJuQYdZ6tNR5ca0un+HRxNuzp",
"vrOc85PGke/MrSIdTyu8/OY+L2602gUdrx4qpRnsVR9GR1f2M0ITUj/WHum9PdWLPW90NDOf6Yyztniu",
"30zvno+eFuf1oceMhwabXU6781LXG/Yaq7G94rcN3rQvihOi9f1V6QEOmppV6lRv9IHRLeivM6rVdZ3N",
"mo8+Xj0wXMX+yeDRq7+OC+bo7crlRsci9cLrc29CcP3Wd0y/VvNf7YfCUpSmgmBhDfnrzF4N/NnTXeV5",
"WrHn4rxu9+4Kj4+1SunV7ld7y8awcdtoTog4O794fhgudLdt9c4Gxd6oUX927+fTctfujwfF/mNzDR+K",
"tk6cRvRcv+wuoHs/M1rVxYTorn6Eb7vXzeag2Wo0Kue43UaXxy6zzy9r/j2/7Q8GJe2pqj/bZPVUP2+4",
"SodaF8v6eWs570xIc9m5OL+l3VaDt5rNp1Zj2W5dWu3WeaXRaFnz283so6unRqHWfPIsZz1qPD9d2rN1",
"z56QwpF5/HZj3i+mlyWt/Vqed2rX580rjfQfj5p3RddfjI5ex/6o/NBnzbJbvvAd4fWG7W6vL9xq+2xC",
"iuzi7bFBx8W1d/LUqfcbZ8ag1bpezxozTh/u6rWnO791VJiSGRujYak/vG6Z65tW7fjhpF7F1/cT4lZH",
"R1N+e7astUp95hiNQWVw5tP1c3GExQV8rvRu+/fiaNyGxQrmT6OL1uyN1m6e6vfl7vW8qk2I9fpg1UtX",
"halbar+NauN6+aF9Ni06i1ml4yxWVue1h6xi8e3xaeWyp9Fzt9syF2/mkXM1OvZX1uWEzFaFrrZ2nkt9",
"PL1gxxeNxvr65O6BNZ5Hy9FAa+uzcX3ZbpHVfHTmr1/dh+X94qr56Lc79/VrVH6akAG+K5rdqzo3amce",
"P19VB0ePBhmQ29HRJZuNb3pnZfeBOQ2DtMe28XRfnz3PvQf7bM3LhZMTdD0h9lxjfbLWZlfLOfTNAr6r",
"X+vHj4vBfNYfDrpW9e7kvrfu+g8P4m35SGaDq+rD8Lz52qvwZ+oOBhNiiun4snhUXU+HD4VGedGcwtXw",
"oSRqd29XM/0NzUfPbQz7Vyf9wqXebXWGxdvz+nG9dGY0nPb5iTEh85J1i59Gtw0Iu1q323i7XAznw26/",
"b/VKT7dP+PLqfl0S5e763OQMutXlqPVwbdo3qLPuN8fP3QlZMO/KuZkik49PqrWxWWpedXzr7Zm1qver",
"s1Fv/mwN7eL9xWLUuSWt9dv8dn3cviu93nj4oXoibZR903l8Zj2q98q9/uikgN+6t+OhI2aDxh8T8seN",
"Oa5NiPIu7auzj1xPam5EVTZfOHfSXaWLBHQwmaf7bxfLcz1POWlF8/4uveUfwftcuTTxNa10LCOIP+J8",
"zWfOPEDihMeGbSJiGuTrvI6IoFzh/3sYr/xRz3HBEHQTmKH8/7gSPFH0yVPp9egAWpJl49SiFSZWFDGA",
"oLZMGUhU19cAchlWcIBV/WCT21Yl6wn5zcMecjBBv6eWr/eym+ptJpuhX+wNYDZ3gxWY0HdE5tSEDkfZ",
"nRWdIYGYiwniYGkjVVmPii5b/bAqLAqCSLUqlTlJC5d2JSztiDDaqY7vxOC6wIugyhsGcdv3C5DOkMjJ",
"V4nt9CDnS8qMtD2VkeVLaoi6H6EeICKYcGzZO/cpBPNRNkW9KLMgCbspdnMfFa1cqryf+NgnObkjebm/",
"Cco/TUdsUZLd5fIW0gTLEstNO1DtFX8hWR9QcU+78/Ij++mc3QsUn03Zq05/imP/HsOP79m9cifmUec1",
"Q9AJ2mAoQdcmmPoC7BMqtQcqfUICUHNCUtafBwquiyAJS0LQcUDKQBBwn08IZAhAh9NQX/fwwnhsWHRe",
"YKq6/ZXVUQRPCPMdFLT5MGRShrJgiYANF3FhXO0oUDVdubopAnAZlBihUP3lnHwTE+JRzvHUUdNcvFLl",
"XRcK3QYuZQiEHAaCWsrKSDMXy897aahEVlxR+yW5invnDharA2fs1mO+IFTRjO8HJ8qT8+JM+SGVjmBi",
"WOp4rwcwzAVEfP6+syNfzJgzn5D30uJJctLy4nlejnPWQfo7FQpHKS2Iqli3XZDZ2Ez1MvWK3F5v5q6z",
"4dzOIaNUrRZPQKPRaLTKV2+wVXSezzrFq3G7Kp91rthFr80GT/hoMLhb+pdw2Oi6wz7tvA3N0utZyTir",
"vmnN8apwvEojYj+b7nPEPk8uv1NdU85D9xkW65EUhIBBTQRZwLip+nQeebjuwzi6qaj8VjAuhipdZHBf",
"EROT7odDo7BYLmgYw6imlaC6ENRyuQwJHKwjEiTCwiuSDQ/qNgIllfdXbi6OOJfLZR6q1yrMC+fyQr/T",
"al+N2rlSXsvbwnXUDmKhWHY9air0YUWKAdUVAqCHExmu00wp7E0j8sVpppzX8kWVHRa2YlMh7KVREkZ5",
"StNSiyEoEICAoCUIR2eBRwUiAitPoFPCw24magKOFojBiBeKPWF7j7poGrSXYAYMJKeErSrJPreOkTnN",
"3FAuwqVlAilAXDSpsQ6yzyqlpnyv5zk4aEUpzML+us0t1ANKeXGz97a0ydgmuNrlURI2Q5e04s/G3jEC",
"xDssD14CG3LABWQCGXIbK5r20/CHtct93B0SeNZwp6PrgwH+4r8ff8MXUkjmSMXfOKAmwF7+92O/I9AX",
"NmX4LYj5PcRkaAxi4QwoqfwnKJkTuiTxPgRMqP4nROCOoJWHdIEMoIrigOq6z6RaJG2tCkwiK/vndxkz",
"bqo2odGIjIucF1kaXvgLGz+UD0vrkbxAIug/U95YdUuC0MkCyhREB0nSQnCqh05Jiu74RuJIR5nqqJGw",
"Ih4qV44MZOzbmwsktm9kZLeu8v+Zfk0xBhwQKyiwVFemuiIvbezmhnzY5p+0L8n78j/91tr3PeOl/Wzj",
"FXci7EnQNl/+a7YrMhy/zNYvs3WQ2RrvGJ737VfBCbsU/hkjZmKCuZ2wYeBDE4bFxnJlVUClTsAuEhDI",
"IFUaAkwJgFPqi+iWue+Ij6ycarL4ZeM+tXHhtdkf2ZT+bykCcQ998MsMcXyMCSBUZT+x7juQhU3D4Ddh",
"U9+yw/RFd3R99Xs+3T4KtBIFz4F4h+iUX1Y5zApWfhaCNB3/kVSjC9UgbkV54kjK09Ro6wrwh7oUjzxA",
"nYZI+Ixw9UsX0TxFjDqChB23JPnzGHmgusLjwTpVisWjdvhw+wxkYoIMAAVIHt4oV2fBoEgASSH8novA",
"5asfqOLmavUvffxUHzfMekcpt7Z7TzH//9S1bfU4QOkSvUAf61w4MFC5PT0Lrq+gFdTFliNiSv2QAQzk",
"IWJIPUzqWvQ7N8Glio80I6Lzl2J8rhjxjf939CLayq/oxa8Y/VeM/v9ajL5nm9LsnQKejCn2TMzmzuye",
"cUlb2WZIQXXWvlcASYxTrbf/VtXfrCFN2oPfEaEmCJnxS83+O2oWCPr/npLBWICg44C41hlJ00bNPk/o",
"QRKUSIge/xBaQNnmeu90DZTrTFfUwyKAGO6/6vXL/2EfHm/lLx39paNf0dFgbhK00su44Pe+/7sOh6RL",
"9TaxITilrfLcLHkQnoj/FyOHD5fzI+5FSrMzg/AmMTV8Pbj+Ht942i7pQg/nJR5u4/AnBqGHC8FdNJUb",
"QCwX/YxBYVFS8cROoVlACxPrIwRcQAv9i2gUE0l00zlG8xmc7z/+bwAAAP//BmST9PpYAAA=",
}
// GetSwagger returns the content of the embedded swagger specification file

View file

@ -686,11 +686,17 @@ components:
Naming package sets for a repository assigns it to a specific part
(pipeline) of the build process.
UploadOptions:
oneOf:
anyOf:
- $ref: '#/components/schemas/AWSEC2UploadOptions'
- $ref: '#/components/schemas/AWSS3UploadOptions'
- $ref: '#/components/schemas/GCPUploadOptions'
- $ref: '#/components/schemas/AzureUploadOptions'
description: |
This should really be oneOf but AWSS3UploadOptions is a subset of
AWSEC2UploadOptions. This means that all AWSEC2UploadOptions objects
are also valid AWSS3UploadOptionas objects which violates the oneOf
rules. Therefore, we have to use anyOf here but be aware that it isn't
possible to mix and match more schemas together.
AWSEC2UploadOptions:
type: object
required: