-
Notifications
You must be signed in to change notification settings - Fork 2k
Replaced hyper
+ tokio
with our own custom API server implementation
#1319
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
georgepisaltu
merged 18 commits into
firecracker-microvm:master
from
georgepisaltu:api_server
Oct 23, 2019
Merged
Replaced hyper
+ tokio
with our own custom API server implementation
#1319
georgepisaltu
merged 18 commits into
firecracker-microvm:master
from
georgepisaltu:api_server
Oct 23, 2019
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
hyper
+ tokio
with our own custom API server implementation
cb7b856
to
de0be0a
Compare
acatangiu
reviewed
Oct 15, 2019
9c0571c
to
20e62fb
Compare
sandreim
reviewed
Oct 22, 2019
`HttpServer` is a struct that leverages `HttpConnection` for exchanging data with a client and `epoll` to be able to run on the same thread as the rest of the code. Signed-off-by: George Pisaltu <gpl@amazon.com>
Signed-off-by: George Pisaltu <gpl@amazon.com>
Signed-off-by: George Pisaltu <gpl@amazon.com>
Replaced the existing API Server with a new one which uses HttpServer instead of using Hyper and Tokio. This reduces the number of dependencies from 104 to 74. Using this new ApiServer enables much easier addition of new API requests, as can be seen in the following commits. This commit only brings in the ApiServer framework plus processing MMDS and InstanceInfo requests, the following commits will provide processing of the other Firecracker URLs. Signed-off-by: George Pisaltu <gpl@amazon.com>
The renamed method only adds EPOLLIN events. Renamed it for clarity. Signed-off-by: George Pisaltu <gpl@amazon.com>
Signed-off-by: George Pisaltu <gpl@amazon.com>
Signed-off-by: George Pisaltu <gpl@amazon.com>
Signed-off-by: George Pisaltu <gpl@amazon.com>
Signed-off-by: George Pisaltu <gpl@amazon.com>
Signed-off-by: George Pisaltu <gpl@amazon.com>
Signed-off-by: George Pisaltu <gpl@amazon.com>
Signed-off-by: George Pisaltu <gpl@amazon.com>
c7d1257
to
be5e9a8
Compare
Signed-off-by: George Pisaltu <gpl@amazon.com>
The format for the error log has changed and this commit updates it to reflect the changes. Signed-off-by: George Pisaltu <gpl@amazon.com>
Signed-off-by: George Pisaltu <gpl@amazon.com>
Signed-off-by: George Pisaltu <gpl@amazon.com>
be5e9a8
to
9ecbcc1
Compare
Signed-off-by: George Pisaltu <gpl@amazon.com>
9ecbcc1
to
0b0dbcb
Compare
sandreim
approved these changes
Oct 23, 2019
acatangiu
approved these changes
Oct 23, 2019
This was referenced Oct 23, 2019
15 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Reason for This PR
Fixes: #1193 #1194 #615
Description of Changes
The old
hyper
implementation of the API server is now replaced with another which uses our ownHttpServer
. The oldapi_server
interface is refactored. It is now much easier to add API changes to Firecracker, as demonstrated in the commits.Upsides
HttpServer
implementation)future
s ✨License Acceptance
By submitting this pull request, I confirm that my contribution is made under
the terms of the Apache 2.0 license.
PR Checklist
git commit -s
).