Skip to content

Instantly share code, notes, and snippets.

@rhbvkleef
Last active May 16, 2021 14:35
Show Gist options
  • Save rhbvkleef/aa01ec956339e744647ca919b7f68ed8 to your computer and use it in GitHub Desktop.
Save rhbvkleef/aa01ec956339e744647ca919b7f68ed8 to your computer and use it in GitHub Desktop.
Accumulation API for Drag Race Benchmark Results
openapi: "3.0.3"
info:
title: "DragRace Benchmark Service"
version: "0.0.1"
description: |
API definitions for the DragRace benchmark result accumulation service.
license:
name: "BSD 3-Clause"
url: "https://opensource.org/licenses/BSD-3-Clause"
servers:
- url: "https://dragrace.rolfvankleef.nl/"
description: "Production"
paths:
"/api/results":
post:
summary: "Results submission endpoint"
security:
- basic_auth: []
tags:
- "Submission API"
requestBody:
description: "Resultset"
content:
"application/json":
schema:
type: object
properties:
environment:
"$ref": "#/components/schemas/environment"
results:
type: array
items:
"$ref": "#/components/schemas/testResult"
responses:
200:
description: "OK"
components:
securitySchemes:
basic_auth:
description: "Authentication key handed out by administrator."
type: "http"
scheme: "Bearer"
schemas:
environment:
type: object
properties:
hostname:
type: string
example: "titan.vankleef.me"
os:
type: string
description: "Human-readable name of the OS (e.g. Windows 10, Debian GNU/Linux 10 Buster, Arch Linux)"
example: "Arch Linux"
arch:
type: string
description: "CPU architecture (e.g. x86_64, aarch64, arm32le)"
example: "x86_64"
cpuname:
type: string
description: "Human-readable name of the CPU"
example: "Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz"
cpufreq_base:
type: number
description: "Base frequency of the CPU"
example: 2.6
required:
- hostname
- os
- arch
- cpuname
testResult:
type: object
properties:
language:
type: string
example: "Java"
threads:
type: integer
minimum: 1
example: 1
tags:
type: array
items:
type: string
enum:
- faithful
- unfaithful
example: ["faithful"]
name:
type: string
example: "rhbvkleef"
implementation_idx:
type: integer
minimum: 1
example: 1
iterations:
type: number
example: 20000
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment