-
Notifications
You must be signed in to change notification settings - Fork 119
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
Create an S3 client based on local storage #113
base: master
Are you sure you want to change the base?
Conversation
783d8dc
to
d871fb4
Compare
d871fb4
to
f36fd1a
Compare
I'll remove Travis eventually. CircleCI seems to be much faster. |
Once this PR is merged, we'll require CircleCI build to pass before merging. I think it will make merging much safer. |
@@ -250,6 +309,366 @@ class AwsS3ClientWrapper { | |||
std::shared_ptr<CloudRequestCallback> cloud_request_callback_; | |||
}; | |||
|
|||
namespace test { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we move this implementation to the test file, so that we don't clutter the production binary?
|
||
export AWS_ACCESS_KEY_ID | ||
export AWS_SECRET_ACCESS_KEY | ||
|
||
export SRC_ROOT=$(git rev-parse --show-toplevel) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we also need an integration test that actually uses S3?
@mrambacher is going to have a similar PR that mocks the |
Right now, the unit tests are not able to run because we use actual S3 storage for tests. We want to mock the S3 storage using local storage so that unit test run faster.
In this PR, I created a class
TestS3ClientWrapper
which extendsAwsS3ClientWrapper
. Also, updaterun_tests.sh
to disable all networking for docker container to confirm that this test runs locally.Before my changes,
run_tests.sh
never completes. With my changes,run_tests.sh
completes all tests in 15 minutes. Breakdown as followed:db_test2
db_basoc_test
env_basic_test
cloud_manifest_test
db_cloud_test
db_test