kojiapi: prefix all routes with /api/composer-koji/v1
The cloud API will be moved to `/api/composer/v1` in the future. Mention this in the `servers` section of the openapi.yml (relative URLs are allowed) too, even though our generator does not consider it.
This commit is contained in:
parent
a8ba969f6e
commit
40d8440660
5 changed files with 11 additions and 7 deletions
|
|
@ -192,7 +192,7 @@ func TestKojiAPIAuth(t *testing.T) {
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
defer ckp.remove()
|
defer ckp.remove()
|
||||||
|
|
||||||
testRoute(t, "https://localhost/status", ckp, c.success)
|
testRoute(t, "https://localhost/api/composer-koji/v1/status", ckp, c.success)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
@ -208,7 +208,7 @@ func TestKojiAPIAuth(t *testing.T) {
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
defer ckp.remove()
|
defer ckp.remove()
|
||||||
|
|
||||||
testRoute(t, "https://localhost/status", ckp, false)
|
testRoute(t, "https://localhost/api/composer-koji/v1/status", ckp, false)
|
||||||
})
|
})
|
||||||
|
|
||||||
t.Run("self-signed certificate", func(t *testing.T) {
|
t.Run("self-signed certificate", func(t *testing.T) {
|
||||||
|
|
@ -217,7 +217,7 @@ func TestKojiAPIAuth(t *testing.T) {
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
defer ckp.remove()
|
defer ckp.remove()
|
||||||
|
|
||||||
testRoute(t, "https://localhost/status", ckp, false)
|
testRoute(t, "https://localhost/api/composer-koji/v1/status", ckp, false)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,5 @@
|
||||||
//go:generate go run github.com/deepmap/oapi-codegen/cmd/oapi-codegen -package=api -generate types,server -o api.gen.go openapi.yml
|
//go:generate go run github.com/deepmap/oapi-codegen/cmd/oapi-codegen -package=api -generate types,server -o api.gen.go openapi.yml
|
||||||
|
|
||||||
package api
|
package api
|
||||||
|
|
||||||
|
const BasePath = "/api/composer-koji/v1"
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,13 @@
|
||||||
openapi: 3.0.1
|
openapi: 3.0.1
|
||||||
info:
|
info:
|
||||||
version: '1'
|
|
||||||
title: OSBuild Composer - Koji
|
title: OSBuild Composer - Koji
|
||||||
|
version: '1'
|
||||||
description: Service to build and push images to Koji.
|
description: Service to build and push images to Koji.
|
||||||
license:
|
license:
|
||||||
name: Apache 2.0
|
name: Apache 2.0
|
||||||
url: 'https://www.apache.org/licenses/LICENSE-2.0.html'
|
url: 'https://www.apache.org/licenses/LICENSE-2.0.html'
|
||||||
|
servers:
|
||||||
|
- url: /api/composer-koji/v1
|
||||||
paths:
|
paths:
|
||||||
/status:
|
/status:
|
||||||
get:
|
get:
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@ func NewServer(logger *log.Logger, workers *worker.Server, rpmMetadata rpmmd.RPM
|
||||||
e.Binder = binder{}
|
e.Binder = binder{}
|
||||||
e.StdLogger = logger
|
e.StdLogger = logger
|
||||||
|
|
||||||
api.RegisterHandlers(e, &apiHandlers{s})
|
api.RegisterHandlers(e.Group(api.BasePath), &apiHandlers{s})
|
||||||
|
|
||||||
s.server = &http.Server{
|
s.server = &http.Server{
|
||||||
ErrorLog: logger,
|
ErrorLog: logger,
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,7 @@ def main(distro):
|
||||||
cr = compose_request(distro, "https://localhost:4343/kojihub")
|
cr = compose_request(distro, "https://localhost:4343/kojihub")
|
||||||
print(json.dumps(cr))
|
print(json.dumps(cr))
|
||||||
|
|
||||||
r = requests.post("https://localhost/compose", json=cr,
|
r = requests.post("https://localhost/api/composer-koji/v1/compose", json=cr,
|
||||||
cert=("/etc/osbuild-composer/worker-crt.pem", "/etc/osbuild-composer/worker-key.pem"),
|
cert=("/etc/osbuild-composer/worker-crt.pem", "/etc/osbuild-composer/worker-key.pem"),
|
||||||
verify="/etc/osbuild-composer/ca-crt.pem")
|
verify="/etc/osbuild-composer/ca-crt.pem")
|
||||||
if r.status_code != 201:
|
if r.status_code != 201:
|
||||||
|
|
@ -54,7 +54,7 @@ def main(distro):
|
||||||
compose_id = r.json()["id"]
|
compose_id = r.json()["id"]
|
||||||
|
|
||||||
while True:
|
while True:
|
||||||
r = requests.get(f"https://localhost/compose/{compose_id}",
|
r = requests.get(f"https://localhost/api/composer-koji/v1/compose/{compose_id}",
|
||||||
cert=("/etc/osbuild-composer/worker-crt.pem", "/etc/osbuild-composer/worker-key.pem"),
|
cert=("/etc/osbuild-composer/worker-crt.pem", "/etc/osbuild-composer/worker-key.pem"),
|
||||||
verify="/etc/osbuild-composer/ca-crt.pem")
|
verify="/etc/osbuild-composer/ca-crt.pem")
|
||||||
if r.status_code != 200:
|
if r.status_code != 200:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue