|
|
|
@ -21,8 +21,6 @@ jobs: |
|
|
|
s3tests: |
|
|
|
name: Ceph S3 tests |
|
|
|
runs-on: ubuntu-22.04 |
|
|
|
container: |
|
|
|
image: docker.io/kmlebedev/ceph-s3-tests:0.0.2 |
|
|
|
timeout-minutes: 30 |
|
|
|
steps: |
|
|
|
- name: Check out code into the Go module directory |
|
|
|
@ -34,13 +32,26 @@ jobs: |
|
|
|
go-version-file: 'go.mod' |
|
|
|
id: go |
|
|
|
|
|
|
|
- name: Set up Python |
|
|
|
uses: actions/setup-python@v4 |
|
|
|
with: |
|
|
|
python-version: '3.9' |
|
|
|
|
|
|
|
- name: Clone s3-tests |
|
|
|
run: | |
|
|
|
git clone https://github.com/ceph/s3-tests.git |
|
|
|
cd s3-tests |
|
|
|
pip install -r requirements.txt |
|
|
|
pip install tox |
|
|
|
pip install -e . |
|
|
|
|
|
|
|
- name: Run Ceph S3 tests with KV store |
|
|
|
timeout-minutes: 15 |
|
|
|
env: |
|
|
|
S3TEST_CONF: /__w/seaweedfs/seaweedfs/docker/compose/s3tests.conf |
|
|
|
S3TEST_CONF: docker/compose/s3tests.conf |
|
|
|
shell: bash |
|
|
|
run: | |
|
|
|
cd /__w/seaweedfs/seaweedfs/weed |
|
|
|
cd weed |
|
|
|
go install -buildvcs=false |
|
|
|
set -x |
|
|
|
# Create clean data directory for this test run |
|
|
|
@ -53,7 +64,7 @@ jobs: |
|
|
|
-s3.allowEmptyFolder=false -s3.allowDeleteBucketNotEmpty=true -s3.config=../docker/compose/s3.json & |
|
|
|
pid=$! |
|
|
|
sleep 10 |
|
|
|
cd /s3-tests |
|
|
|
cd ../s3-tests |
|
|
|
sed -i "s/assert prefixes == \['foo%2B1\/', 'foo\/', 'quux%20ab\/'\]/assert prefixes == \['foo\/', 'foo%2B1\/', 'quux%20ab\/'\]/" s3tests_boto3/functional/test_s3.py |
|
|
|
tox -- \ |
|
|
|
s3tests_boto3/functional/test_s3.py::test_bucket_list_empty \ |
|
|
|
@ -216,10 +227,10 @@ jobs: |
|
|
|
- name: Run S3 Object Lock and Retention tests |
|
|
|
timeout-minutes: 15 |
|
|
|
env: |
|
|
|
S3TEST_CONF: /__w/seaweedfs/seaweedfs/docker/compose/s3tests.conf |
|
|
|
S3TEST_CONF: docker/compose/s3tests.conf |
|
|
|
shell: bash |
|
|
|
run: | |
|
|
|
cd /__w/seaweedfs/seaweedfs/weed |
|
|
|
cd weed |
|
|
|
go install -buildvcs=false |
|
|
|
set -x |
|
|
|
# Create clean data directory for this test run |
|
|
|
@ -232,10 +243,10 @@ jobs: |
|
|
|
-s3.allowEmptyFolder=false -s3.allowDeleteBucketNotEmpty=true -s3.config=../docker/compose/s3.json & |
|
|
|
pid=$! |
|
|
|
sleep 10 |
|
|
|
cd /s3-tests |
|
|
|
cd ../s3-tests |
|
|
|
sed -i "s/assert prefixes == \['foo%2B1\/', 'foo\/', 'quux%20ab\/'\]/assert prefixes == \['foo\/', 'foo%2B1\/', 'quux%20ab\/'\]/" s3tests_boto3/functional/test_s3.py |
|
|
|
# Run object lock tests without marker filtering to ensure all tests are executed |
|
|
|
tox -- -m "object_lock" --tb=short |
|
|
|
# Run object lock tests by pattern matching test names |
|
|
|
tox -- -k "object_lock" --tb=short |
|
|
|
kill -9 $pid || true |
|
|
|
# Clean up data directory |
|
|
|
rm -rf "$WEED_DATA_DIR" || true |
|
|
|
@ -244,7 +255,7 @@ jobs: |
|
|
|
timeout-minutes: 10 |
|
|
|
shell: bash |
|
|
|
run: | |
|
|
|
cd /__w/seaweedfs/seaweedfs/weed |
|
|
|
cd weed |
|
|
|
go install -buildvcs=false |
|
|
|
# Create clean data directory for this test run |
|
|
|
export WEED_DATA_DIR="/tmp/seaweedfs-copy-test-$(date +%s)" |
|
|
|
@ -266,10 +277,10 @@ jobs: |
|
|
|
- name: Run Ceph S3 tests with SQL store |
|
|
|
timeout-minutes: 15 |
|
|
|
env: |
|
|
|
S3TEST_CONF: /__w/seaweedfs/seaweedfs/docker/compose/s3tests.conf |
|
|
|
S3TEST_CONF: docker/compose/s3tests.conf |
|
|
|
shell: bash |
|
|
|
run: | |
|
|
|
cd /__w/seaweedfs/seaweedfs/weed |
|
|
|
cd weed |
|
|
|
go install -tags "sqlite" -buildvcs=false |
|
|
|
# Create clean data directory for this test run |
|
|
|
export WEED_DATA_DIR="/tmp/seaweedfs-sql-test-$(date +%s)" |
|
|
|
@ -283,7 +294,7 @@ jobs: |
|
|
|
-s3.allowEmptyFolder=false -s3.allowDeleteBucketNotEmpty=true -s3.config=../docker/compose/s3.json & |
|
|
|
pid=$! |
|
|
|
sleep 10 |
|
|
|
cd /s3-tests |
|
|
|
cd ../s3-tests |
|
|
|
sed -i "s/assert prefixes == \['foo%2B1\/', 'foo\/', 'quux%20ab\/'\]/assert prefixes == \['foo\/', 'foo%2B1\/', 'quux%20ab\/'\]/" s3tests_boto3/functional/test_s3.py |
|
|
|
tox -- \ |
|
|
|
s3tests_boto3/functional/test_s3.py::test_bucket_list_empty \ |
|
|
|
|