37
37
S3_EXPRESS_ONE_ZONE_BUCKET_NAME_EXTERNAL : ${{ vars.S3_EXPRESS_ONE_ZONE_BUCKET_NAME_EXTERNAL }}
38
38
KMS_TEST_KEY_ID : ${{ vars.KMS_TEST_KEY_ID }}
39
39
S3_EXPRESS_ONE_ZONE_BUCKET_NAME_SSE_KMS : ${{ vars.S3_EXPRESS_ONE_ZONE_BUCKET_NAME_SSE_KMS }}
40
- RUST_FEATURES : fuse_tests,s3_tests,fips_tests,event_log,second_account_tests,manifest
41
40
42
41
permissions :
43
42
id-token : write
44
43
contents : read
45
44
46
45
jobs :
47
46
test :
48
- name : Tests (${{ matrix.runner.name }}, FUSE ${{ matrix.fuseVersion }})
49
- runs-on : ${{ matrix.runner.tags }}
50
-
51
- environment : ${{ inputs.environment }}
52
-
53
- strategy :
54
- fail-fast : false
55
- matrix :
56
- fuseVersion : [2, 3]
57
- runner :
58
- - name : Ubuntu x86
59
- tags : [ubuntu-22.04] # GitHub-hosted
60
- - name : Amazon Linux arm
61
- tags : [self-hosted, linux, arm64]
62
- exclude :
63
- # fuse3 is not available on Amazon Linux 2
64
- - runner :
65
- name : Amazon Linux arm
66
- tags : [self-hosted, linux, arm64]
67
- fuseVersion : 3
68
-
69
- steps :
70
- - name : Configure AWS credentials
71
- uses : aws-actions/configure-aws-credentials@v4
72
- with :
73
- role-to-assume : ${{ vars.ACTIONS_IAM_ROLE }}
74
- aws-region : ${{ vars.S3_REGION }}
75
- - name : Checkout code
76
- uses : actions/checkout@v4
77
- with :
78
- ref : ${{ inputs.ref }}
79
- submodules : true
80
- persist-credentials : false
81
- - name : Set up Rust toolchain
82
- uses : actions-rust-lang/setup-rust-toolchain@v1
83
- with :
84
- # setup-rust-toolchain sets "-D warnings" by default, and Rust treats any warning as compile error.
85
- # We need to this currently because `mountpoint-s3-fuser` contains some warnings and it breaks the build.
86
- rustflags : " "
87
- - name : Install operating system dependencies
88
- uses : ./.github/actions/install-dependencies
89
- with :
90
- fuseVersion : ${{ matrix.fuseVersion }}
91
- - name : Build tests
92
- run : cargo test --features $RUST_FEATURES --no-run
93
- - name : Run tests
94
- run : cargo test --features $RUST_FEATURES
95
- - name : Save dump files
96
- if : ${{ failure() && matrix.runner.name == 'Amazon Linux arm' }}
97
- run : ./.github/actions/scripts/save-coredump.sh
98
-
99
- s3express-test :
100
- name : S3 Express One Zone tests (${{ matrix.runner.name }}, FUSE ${{ matrix.fuseVersion }})
47
+ name : FS Tests (${{ matrix.bucket-type.name }}, ${{ matrix.runner.name }}, FUSE ${{ matrix.fuseVersion }})
101
48
runs-on : ${{ matrix.runner.tags }}
102
49
103
50
environment : ${{ inputs.environment }}
51
+ env :
52
+ features : fuse_tests,s3_tests,fips_tests,event_log,second_account_tests,manifest,${{ matrix.bucket-type.feature }}
53
+ packages : --package mountpoint-s3 --package mountpoint-s3-fs
104
54
105
55
strategy :
106
56
fail-fast : false
107
57
matrix :
58
+ bucket-type :
59
+ - name : S3
60
+ feature :
61
+ - name : S3XOZ
62
+ feature : s3express_tests
108
63
fuseVersion : [2, 3]
109
64
runner :
110
65
- name : Ubuntu x86
111
66
tags : [ubuntu-22.04] # GitHub-hosted
112
- - name : Amazon Linux arm
67
+ - name : AL2 arm
113
68
tags : [self-hosted, linux, arm64]
114
69
exclude :
115
70
# fuse3 is not available on Amazon Linux 2
116
71
- runner :
117
- name : Amazon Linux arm
72
+ name : AL2 arm
118
73
tags : [self-hosted, linux, arm64]
119
74
fuseVersion : 3
120
75
@@ -141,14 +96,13 @@ jobs:
141
96
with :
142
97
fuseVersion : ${{ matrix.fuseVersion }}
143
98
- name : Build tests
144
- run : cargo test --features '${{ env.RUST_FEATURES }},s3express_tests ' --no-run
99
+ run : cargo test ${{ env.packages }} --features '${{ env.features }}' --no-run
145
100
- name : Run tests
146
- run : cargo test --features '${{ env.RUST_FEATURES }},s3express_tests '
101
+ run : cargo test ${{ env.packages }} --features '${{ env.features }}'
147
102
- name : Save dump files
148
- if : ${{ failure() && matrix.runner.name == 'Amazon Linux arm' }}
103
+ if : ${{ failure() && matrix.runner.name == 'AL2 arm' }}
149
104
run : ./.github/actions/scripts/save-coredump.sh
150
105
151
-
152
106
client-test :
153
107
name : Client Tests (${{ matrix.bucket-type.name }}, ${{ matrix.runner.name }}, ${{ matrix.pool.name }})
154
108
runs-on : ${{ matrix.runner.tags }}
@@ -164,14 +118,16 @@ jobs:
164
118
bucket-type :
165
119
- name : S3
166
120
feature :
167
- - name : S3 Express One Zone
121
+ - name : S3XOZ
168
122
feature : s3express_tests
169
123
runner :
170
124
- name : Ubuntu x86
171
125
tags : [ubuntu-22.04] # GitHub-hosted
172
- - name : Amazon Linux arm
126
+ - name : AL2 arm
173
127
tags : [self-hosted, linux, arm64]
174
128
pool :
129
+ - name : Default Pool
130
+ feature :
175
131
- name : Test Pool
176
132
feature : pool_tests
177
133
@@ -203,7 +159,7 @@ jobs:
203
159
- name : Run tests
204
160
run : cargo test ${{ env.packages }} --features '${{ env.features }}'
205
161
- name : Save dump files
206
- if : ${{ failure() && matrix.runner.name == 'Amazon Linux arm' }}
162
+ if : ${{ failure() && matrix.runner.name == 'AL2 arm' }}
207
163
run : ./.github/actions/scripts/save-coredump.sh
208
164
209
165
fstab :
@@ -219,7 +175,7 @@ jobs:
219
175
runner :
220
176
- name : Ubuntu x86
221
177
tags : [ubuntu-22.04] # GitHub-hosted
222
- - name : Amazon Linux arm
178
+ - name : AL2 arm
223
179
tags : [self-hosted, linux, arm64]
224
180
225
181
steps :
0 commit comments