@@ -1167,6 +1167,102 @@ func TestSyncPendingJob(t *testing.T) {
11671167 ExpectedNumPods : 1 ,
11681168 ExpectedURL : "boop-42/error" ,
11691169 },
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+ },
11701266 {
11711267 Name : "running pod" ,
11721268 PJ : prowapi.ProwJob {
0 commit comments