Skip to content
This repository has been archived by the owner on May 15, 2024. It is now read-only.

Implement local Motion HTTP API that conforms to the specification #12

Merged
merged 3 commits into from
Jul 6, 2023

Conversation

masih
Copy link
Member

@masih masih commented Jul 5, 2023

Implement a basic motion API with a local flat file blob store that
conforms to the OpenAPI specification.

Implement the server with swappable blob storage such that future work
can change it for other types of storage such as RIPS, S3, R2, etc.

TODOs are left for async discussion points.

api/server/handler.go Outdated Show resolved Hide resolved
api/server/handler.go Outdated Show resolved Hide resolved
Implement a basic motion API with a local flat file blob store that
 conforms to the OpenAPI specification.

 Implement the server with swappable blob storage such that future work
 can change it for other types of storage such as RIPS, S3, R2, etc.

 TODOs are left for async discussion points.
Further to discussion captured in #14, change the HTTP server to accept
range requests.

This requires the blob store to return `ReadSeeker` for a given blob ID.
api/model.go Show resolved Hide resolved
api/server/handler.go Outdated Show resolved Hide resolved
blob/blob.go Outdated Show resolved Hide resolved
cmd/motion/main.go Outdated Show resolved Hide resolved
In order to maximise for future flexibility to deal with large blobs,
use random UUIDs as blob IDs. This allows the ID generation to be
independent from the blob upload completion and or chunking.

Update documentation for the exported APIs.
@masih masih merged commit 0f58262 into main Jul 6, 2023
@masih masih deleted the masih/http_api_skeleton branch July 6, 2023 20:19
@masih masih self-assigned this Jul 20, 2023
@TorfinnOlsen TorfinnOlsen added this to the M1.0 Motion Testable API milestone Jul 21, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

3 participants