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:
Lars Karlitski 2020-09-23 22:27:48 +02:00 committed by Tom Gundersen
parent a8ba969f6e
commit 40d8440660
5 changed files with 11 additions and 7 deletions

View file

@ -192,7 +192,7 @@ func TestKojiAPIAuth(t *testing.T) {
require.NoError(t, err)
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)
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) {
@ -217,7 +217,7 @@ func TestKojiAPIAuth(t *testing.T) {
require.NoError(t, err)
defer ckp.remove()
testRoute(t, "https://localhost/status", ckp, false)
testRoute(t, "https://localhost/api/composer-koji/v1/status", ckp, false)
})
}

View file

@ -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
package api
const BasePath = "/api/composer-koji/v1"

View file

@ -1,11 +1,13 @@
openapi: 3.0.1
info:
version: '1'
title: OSBuild Composer - Koji
version: '1'
description: Service to build and push images to Koji.
license:
name: Apache 2.0
url: 'https://www.apache.org/licenses/LICENSE-2.0.html'
servers:
- url: /api/composer-koji/v1
paths:
/status:
get:

View file

@ -44,7 +44,7 @@ func NewServer(logger *log.Logger, workers *worker.Server, rpmMetadata rpmmd.RPM
e.Binder = binder{}
e.StdLogger = logger
api.RegisterHandlers(e, &apiHandlers{s})
api.RegisterHandlers(e.Group(api.BasePath), &apiHandlers{s})
s.server = &http.Server{
ErrorLog: logger,

View file

@ -42,7 +42,7 @@ def main(distro):
cr = compose_request(distro, "https://localhost:4343/kojihub")
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"),
verify="/etc/osbuild-composer/ca-crt.pem")
if r.status_code != 201:
@ -54,7 +54,7 @@ def main(distro):
compose_id = r.json()["id"]
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"),
verify="/etc/osbuild-composer/ca-crt.pem")
if r.status_code != 200: