This appears to be some kind of eventual consistency check. This
should have no effect given S3Proxy and recent AWS strong consistency.
Also it is likely ineffective given the other test object creation
operations.
This shell incantation is necessary to have errexit take effect for
test bodies. Previous only the _last_ command's exit code was
propagated to the test runner, masking real failures. Reverts
ea3c21f270.
Previously the integration tests were exiting after the first failed
test instead of running all of them an reporting their statuses.
Follows on to dbf93c0152.
Also use a unique file name for every test. This ensures that tests
like test_external_directory_creation and test_external_modification
do not collide.
Previously these failed due to dd only copying 32 MB from /dev/urandom
and exhausting the limited space in /tmp. References #1543.
Co-authored-by: Takeshi Nakatani <ggtakec@gmail.com>
This can find errors in retry logic. Chaos HTTP Proxy does not
support SSL bouncestorage/chaos-http-proxy#1 so users must set
s3proxy.endpoint and run via:
CHAOS_HTTP_PROXY=1 S3_URL=http://127.0.0.1:8080 make check -C test
It can also be helpful to increase retries and reduce sleep times.
References #1504.
Details in README.md and s3fs-integration-test-common.sh
Factor out s3fs-fuse and s3proxy start/stop. The plan is to make it easier to
add test suites besides small-integration-test.sh that can test with various
s3fs options.
Each test run starts in a uniquely named at the top of the bucket. This allows
multiple runs against persistent storage without worrying about cleaning
up in error conditions that leave artifiacts behind.
Tests continues if a test case fails.
Results are summarized at the end of the test run
Environment variable to control debug level of s3fs-fuse
Environment variable to enable public bucket (makes it easier to poke
around with tools like curl)
Environment variable to start s3fs-fuse under valgrind
Environment variable that casues script sets up s3fs-fuse and then wait
indefinitely, making it easy to experiment manually with the mount
point.
Additional test case