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