A REST API for cloud embedded board reservation.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

1.0 KiB

Issues to address

If app crashes, won’t sync w/ board status in database.

Authentication. Likely should attach an expiration policy to access tokens generated by an ssh key. This way an ssh key can be passwordless for automation, and the cli could do: bitelab auth; bitelab reserve board; ; bitelab release board; bitelab revoke

where auth fetches an access token via ssh, and revoke, revokes the token as it is no longer needed. This either allows a “one time” access token where the user can provide a passphrase to get the token at auth time, or limited valid time access tokens such that if they were leaked, they would quickly expire.

CONNECT proxy

RFC definition: https://tools.ietf.org/html/rfc2817#section-5.2

FastAPI StreamingResponse: https://fastapi.tiangolo.com/advanced/custom-response/#streamingresponse

Streaming Requests: https://github.com/tiangolo/fastapi/issues/58

Brief tests showed that this may not work reliably. I think WebSockets is the best answer for this.