-
Notifications
You must be signed in to change notification settings - Fork 20
88 lines (72 loc) · 2.57 KB
/
test.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
---
name: Test S3Tests Runner
on:
pull_request:
paths:
- "tools/tests/s3tests-runner.sh"
jobs:
test-s3tests-runner:
runs-on: ubuntu-latest
steps:
- name: Checkout s3gw
uses: actions/checkout@v3
with:
path: s3gw
submodules: false
- name: Checkout ceph
uses: actions/checkout@v3
with:
repository: s3gw-tech/s3gw-ceph
path: s3gw/ceph
- name: Checkout s3tests
uses: actions/checkout@v3
with:
repository: ceph/s3-tests
path: s3tests
- name: Checkout s3gw-status
uses: actions/checkout@v3
with:
repository: ${{ github.repository_owner }}/s3gw-status
path: s3gw-status
- name: Configure Git
run: |
git config --global user.name "GitHub Actions Bot"
git config --global user.email "[email protected]"
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: 3.11
- name: Install Dependencies
run: |
YQ_GH_URL=https://github.com/mikefarah/yq/releases/download
YQ_VERSION=v4.31.1
YQ_CHECKSUM=1aef844cbecbbf81036449ea5e7dfcdf19d2d374fab6303fdb8f849d04275d76
sudo apt-get update
sudo apt-get install -y \
wget \
s3cmd
# Unfortunately, since yq is only available through snap on Ubuntu and
# that doesn't work in docker containers (at least not out of the
# box), this abomination is the way to go to install yq.
echo "${YQ_CHECKSUM} yq" >> checksum
wget -O yq "${YQ_GH_URL}/${YQ_VERSION}/yq_linux_amd64"
sha256sum -c checksum \
&& sudo mv yq /usr/bin/yq \
&& sudo chmod +x /usr/bin/yq
python3 -m pip install -r s3tests/requirements.txt
python3 -m pip install -r \
s3gw/ceph/qa/rgw/store/sfs/tests/requirements.txt
- name: Run S3tests
run: |
set -x
export CEPH_DIR="${GITHUB_WORKSPACE}/s3gw/ceph"
export OUTPUT_DIR="${GITHUB_WORKSPACE}/s3test-results"
export FORCE_CONTAINER=ON
export FORCE_DOCKER=ON
export \
FIXTURES="${GITHUB_WORKSPACE}/s3gw/ceph/qa/rgw/store/sfs/tests/fixtures"
export S3TEST_REPO="${GITHUB_WORKSPACE}/s3tests"
export S3TEST_CONF="${FIXTURES}/s3tests.conf"
export S3TEST_LIST="${FIXTURES}/s3-tests.txt"
pushd s3tests
${GITHUB_WORKSPACE}/s3gw/tools/tests/s3tests-runner.sh