@@ -1167,6 +1167,102 @@ func TestSyncPendingJob(t *testing.T) {
1167
1167
ExpectedNumPods : 1 ,
1168
1168
ExpectedURL : "boop-42/error" ,
1169
1169
},
1170
+ {
1171
+ Name : "delete terminated pod" ,
1172
+ PJ : prowapi.ProwJob {
1173
+ ObjectMeta : metav1.ObjectMeta {
1174
+ Name : "boop-42" ,
1175
+ Namespace : "prowjobs" ,
1176
+ },
1177
+ Spec : prowapi.ProwJobSpec {
1178
+ PodSpec : & v1.PodSpec {Containers : []v1.Container {{Name : "test-name" , Env : []v1.EnvVar {}}}},
1179
+ },
1180
+ Status : prowapi.ProwJobStatus {
1181
+ State : prowapi .PendingState ,
1182
+ PodName : "boop-42" ,
1183
+ },
1184
+ },
1185
+ Pods : []v1.Pod {
1186
+ {
1187
+ ObjectMeta : metav1.ObjectMeta {
1188
+ Name : "boop-42" ,
1189
+ Namespace : "pods" ,
1190
+ },
1191
+ Status : v1.PodStatus {
1192
+ Phase : v1 .PodFailed ,
1193
+ Reason : Terminated ,
1194
+ },
1195
+ },
1196
+ },
1197
+ ExpectedComplete : false ,
1198
+ ExpectedState : prowapi .PendingState ,
1199
+ ExpectedNumPods : 0 ,
1200
+ },
1201
+ {
1202
+ Name : "delete terminated pod and remove its k8sreporter finalizer" ,
1203
+ PJ : prowapi.ProwJob {
1204
+ ObjectMeta : metav1.ObjectMeta {
1205
+ Name : "boop-42" ,
1206
+ Namespace : "prowjobs" ,
1207
+ },
1208
+ Spec : prowapi.ProwJobSpec {
1209
+ PodSpec : & v1.PodSpec {Containers : []v1.Container {{Name : "test-name" , Env : []v1.EnvVar {}}}},
1210
+ },
1211
+ Status : prowapi.ProwJobStatus {
1212
+ State : prowapi .PendingState ,
1213
+ PodName : "boop-42" ,
1214
+ },
1215
+ },
1216
+ Pods : []v1.Pod {
1217
+ {
1218
+ ObjectMeta : metav1.ObjectMeta {
1219
+ Name : "boop-42" ,
1220
+ Namespace : "pods" ,
1221
+ Finalizers : []string {"prow.x-k8s.io/gcsk8sreporter" },
1222
+ },
1223
+ Status : v1.PodStatus {
1224
+ Phase : v1 .PodFailed ,
1225
+ Reason : Terminated ,
1226
+ },
1227
+ },
1228
+ },
1229
+ ExpectedComplete : false ,
1230
+ ExpectedState : prowapi .PendingState ,
1231
+ ExpectedNumPods : 0 ,
1232
+ },
1233
+ {
1234
+ Name : "don't delete terminated pod w/ error_on_termination, complete PJ instead" ,
1235
+ PJ : prowapi.ProwJob {
1236
+ ObjectMeta : metav1.ObjectMeta {
1237
+ Name : "boop-42" ,
1238
+ Namespace : "prowjobs" ,
1239
+ },
1240
+ Spec : prowapi.ProwJobSpec {
1241
+ ErrorOnTermination : true ,
1242
+ PodSpec : & v1.PodSpec {Containers : []v1.Container {{Name : "test-name" , Env : []v1.EnvVar {}}}},
1243
+ },
1244
+ Status : prowapi.ProwJobStatus {
1245
+ State : prowapi .PendingState ,
1246
+ PodName : "boop-42" ,
1247
+ },
1248
+ },
1249
+ Pods : []v1.Pod {
1250
+ {
1251
+ ObjectMeta : metav1.ObjectMeta {
1252
+ Name : "boop-42" ,
1253
+ Namespace : "pods" ,
1254
+ },
1255
+ Status : v1.PodStatus {
1256
+ Phase : v1 .PodFailed ,
1257
+ Reason : Terminated ,
1258
+ },
1259
+ },
1260
+ },
1261
+ ExpectedComplete : true ,
1262
+ ExpectedState : prowapi .ErrorState ,
1263
+ ExpectedNumPods : 1 ,
1264
+ ExpectedURL : "boop-42/error" ,
1265
+ },
1170
1266
{
1171
1267
Name : "running pod" ,
1172
1268
PJ : prowapi.ProwJob {
0 commit comments