garage/script/test-smoke.sh

81 lines
2.5 KiB
Bash
Raw Permalink Normal View History

2020-11-29 16:03:08 +00:00
#!/bin/bash
set -ex
shopt -s expand_aliases
SCRIPT_FOLDER="`dirname \"$0\"`"
REPO_FOLDER="${SCRIPT_FOLDER}/../"
2020-12-17 20:04:59 +00:00
echo "setup"
2020-11-29 16:03:08 +00:00
cargo build
${SCRIPT_FOLDER}/dev-clean.sh
${SCRIPT_FOLDER}/dev-cluster.sh > /tmp/garage.log 2>&1 &
${SCRIPT_FOLDER}/dev-configure.sh
${SCRIPT_FOLDER}/dev-bucket.sh
2020-12-06 09:19:01 +00:00
source ${SCRIPT_FOLDER}/dev-env-aws.sh
source ${SCRIPT_FOLDER}/dev-env-s3cmd.sh
2020-11-29 16:03:08 +00:00
2020-12-06 09:04:17 +00:00
garage status
garage key list
garage bucket list
dd if=/dev/urandom of=/tmp/garage.1.rnd bs=1k count=2 # < INLINE_THRESHOLD = 3072 bytes
2020-12-06 08:13:47 +00:00
dd if=/dev/urandom of=/tmp/garage.2.rnd bs=1M count=5
dd if=/dev/urandom of=/tmp/garage.3.rnd bs=1M count=10
2020-11-29 16:03:08 +00:00
dd if=/dev/urandom bs=1k count=2 | base64 -w0 > /tmp/garage.1.b64
dd if=/dev/urandom bs=1M count=5 | base64 -w0 > /tmp/garage.2.b64
dd if=/dev/urandom bs=1M count=10 | base64 -w0 > /tmp/garage.3.b64
2020-12-17 20:04:59 +00:00
echo "s3 api testing..."
for idx in {1,2,3}.{rnd,b64}; do
2020-12-06 09:23:14 +00:00
# AWS sends
awsgrg cp /tmp/garage.$idx s3://eprouvette/garage.$idx.aws
2020-12-06 09:23:14 +00:00
2020-12-06 09:19:01 +00:00
awsgrg ls s3://eprouvette
2020-12-06 09:23:14 +00:00
2020-12-06 09:19:01 +00:00
awsgrg cp s3://eprouvette/garage.$idx.aws /tmp/garage.$idx.dl
diff /tmp/garage.$idx /tmp/garage.$idx.dl
2020-12-06 09:23:14 +00:00
rm /tmp/garage.$idx.dl
s3grg get s3://eprouvette/garage.$idx.aws /tmp/garage.$idx.dl
diff /tmp/garage.$idx /tmp/garage.$idx.dl
2020-12-06 09:23:14 +00:00
rm /tmp/garage.$idx.dl
2020-12-06 09:19:01 +00:00
awsgrg rm s3://eprouvette/garage.$idx.aws
2020-12-06 09:23:14 +00:00
# S3CMD sends
s3grg put /tmp/garage.$idx s3://eprouvette/garage.$idx.s3cmd
2020-12-06 09:23:14 +00:00
s3grg ls s3://eprouvette
s3grg get s3://eprouvette/garage.$idx.s3cmd /tmp/garage.$idx.dl
diff /tmp/garage.$idx /tmp/garage.$idx.dl
2020-12-06 09:23:14 +00:00
rm /tmp/garage.$idx.dl
2020-12-06 09:19:01 +00:00
awsgrg cp s3://eprouvette/garage.$idx.s3cmd /tmp/garage.$idx.dl
diff /tmp/garage.$idx /tmp/garage.$idx.dl
2020-12-06 09:23:14 +00:00
rm /tmp/garage.$idx.dl
s3grg rm s3://eprouvette/garage.$idx.s3cmd
2020-12-06 08:13:47 +00:00
done
rm /tmp/garage.{1,2,3}.{rnd,b64}
2020-11-29 16:03:08 +00:00
2020-12-17 20:04:59 +00:00
echo "website testing"
echo "<h1>hello world</h1>" > /tmp/garage-index.html
awsgrg cp /tmp/garage-index.html s3://eprouvette/index.html
[ `curl -s -o /dev/null -w "%{http_code}" --header "Host: eprouvette.garage.tld" http://127.0.0.1:3923/ ` == 404 ]
garage bucket website --allow eprouvette
[ `curl -s -o /dev/null -w "%{http_code}" --header "Host: eprouvette.garage.tld" http://127.0.0.1:3923/ ` == 200 ]
garage bucket website --deny eprouvette
[ `curl -s -o /dev/null -w "%{http_code}" --header "Host: eprouvette.garage.tld" http://127.0.0.1:3923/ ` == 404 ]
awsgrg rm s3://eprouvette/index.html
rm /tmp/garage-index.html
echo "teardown"
2020-12-06 09:04:17 +00:00
garage bucket deny --read --write eprouvette --key $AWS_ACCESS_KEY_ID
garage bucket delete --yes eprouvette
garage key delete --yes $AWS_ACCESS_KEY_ID
2020-12-05 17:27:51 +00:00
echo "success"