@@ -157,7 +157,35 @@ storage:
157
157
contents:
158
158
inline: |
159
159
[Manager]
160
- DefaultTimeoutStopSec=5s` )
160
+ DefaultTimeoutStopSec=5s
161
+ - path: /usr/local/bin/nfs-random-write.sh
162
+ mode: 0755
163
+ overwrite: true
164
+ contents:
165
+ inline: |
166
+ #!/bin/bash
167
+ for i in $(seq 6); do
168
+ (while sudo rm -f /var/tmp/data$i/test; do \
169
+ for x in $(seq 6); do \
170
+ set -x; \
171
+ sudo dd if=/dev/urandom of=/var/tmp/data$i/test bs=4096 count=2048 conv=notrunc oflag=append &> /dev/null; \
172
+ set +x; \
173
+ sleep 0.5; \
174
+ done; \
175
+ done) &
176
+ done
177
+ systemd:
178
+ units:
179
+ - name: write-to-nfs.service
180
+ enabled: false
181
+ contents: |
182
+ [Unit]
183
+ ConditionFirstBoot=true
184
+ [Service]
185
+ Type=oneshot
186
+ RemainAfterExit=yes
187
+ ExecStart=/usr/local/bin/nfs-random-write.sh
188
+ Restart=on-failure` )
161
189
opts := platform.MachineOptions {
162
190
MinMemory : 2048 ,
163
191
}
@@ -197,21 +225,10 @@ storage:
197
225
func doSyncTest (c cluster.TestCluster , client platform.Machine ) {
198
226
c .RunCmdSync (client , "sudo touch /var/tmp/data3/test" )
199
227
// Continue write
200
- go func () {
201
- _ , err := c .SSH (client , `for i in $(seq 6); do
202
- (while sudo rm -f /var/tmp/data$i/test; do \
203
- for x in $(seq 6); do \
204
- set -x; \
205
- sudo dd if=/dev/urandom of=/var/tmp/data$i/test bs=4096 count=2048 conv=notrunc oflag=append &> /dev/null; \
206
- set +x; \
207
- sleep 0.5; \
208
- done; \
209
- done) &
210
- done` )
211
- if err != nil {
212
- c .Fatalf ("failed to run dd command: %v" , err )
213
- }
214
- }()
228
+ _ , err := c .SSH (client , `sudo systemctl enable --now write-to-nfs.service` )
229
+ if err != nil {
230
+ c .Fatalf ("failed to start service: %v" , err )
231
+ }
215
232
216
233
// Create a stage deploy using kargs while writing
217
234
c .RunCmdSync (client , "sudo rpm-ostree kargs --append=test=1" )
@@ -224,7 +241,7 @@ func doSyncTest(c cluster.TestCluster, client platform.Machine) {
224
241
c .Log ("Set link down and rebooting." )
225
242
// Skip the error check as it is expected
226
243
cmd := fmt .Sprintf ("sudo systemd-run sh -c 'ip link set %s down && sleep 5 && systemctl reboot'" , netdevice )
227
- _ , err : = c .SSH (client , cmd )
244
+ _ , err = c .SSH (client , cmd )
228
245
if err != nil {
229
246
c .Fatalf ("failed to set down link and reboot: %v" , err )
230
247
}
0 commit comments