{"action":"opened","issue":{"url":"https://api.github.com/repos/F5Networks/k8s-bigip-ctlr/issues/734","repository_url":"https://api.github.com/repos/F5Networks/k8s-bigip-ctlr","labels_url":"https://api.github.com/repos/F5Networks/k8s-bigip-ctlr/issues/734/labels{/name}","comments_url":"https://api.github.com/repos/F5Networks/k8s-bigip-ctlr/issues/734/comments","events_url":"https://api.github.com/repos/F5Networks/k8s-bigip-ctlr/issues/734/events","html_url":"https://github.com/F5Networks/k8s-bigip-ctlr/issues/734","id":353386400,"node_id":"MDU6SXNzdWUzNTMzODY0MDA=","number":734,"title":"k8s-bigip-ctlr stops processing subsequent resources after resource error","user":{"login":"amudukutore","id":1004624,"node_id":"MDQ6VXNlcjEwMDQ2MjQ=","avatar_url":"https://avatars0.githubusercontent.com/u/1004624?v=4","gravatar_id":"","url":"https://api.github.com/users/amudukutore","html_url":"https://github.com/amudukutore","followers_url":"https://api.github.com/users/amudukutore/followers","following_url":"https://api.github.com/users/amudukutore/following{/other_user}","gists_url":"https://api.github.com/users/amudukutore/gists{/gist_id}","starred_url":"https://api.github.com/users/amudukutore/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amudukutore/subscriptions","organizations_url":"https://api.github.com/users/amudukutore/orgs","repos_url":"https://api.github.com/users/amudukutore/repos","events_url":"https://api.github.com/users/amudukutore/events{/privacy}","received_events_url":"https://api.github.com/users/amudukutore/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-08-23T13:40:58Z","updated_at":"2018-08-23T13:40:58Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"#### Description\r\nThe F5 Big IP K8S controller processes the ingress configuration files via the K8S api and applies them to the F5 Big IP LTM.  We have the individual ingress associated with a K8S namespace.  If an update to an ingress happens, which contains errors, the F5 K8S controller halts on processing.  This in turn effects any new ingress created for other namespaces within the K8S environment.  We would like to see the F5 K8S controller mark/log the offending ingress as an error and continue processing other ingress requests.  The way it stands now, every ingress for each namespace can not process changes/updates/or new ingress deployments unless the offending/error is correct.\r\n\r\n#### Kubernetes Version\r\nv1.11\r\n\r\n#### Controller Version\r\n1.5.0, 1.6.0\r\n\r\n#### BIG-IP Version\r\n13.1.07\r\n\r\n#### Diagnostic Information\r\n```\r\n2018/08/10 14:33:10 [ERROR] [2018-08-10 14:33:10,981 f5_cccl.service.manager ERROR] Resource ingress1 update error, requeuing task...\\\r\n2018/08/10 14:33:10 [INFO] [2018-08-10 14:33:10,981 f5_cccl.resource.resource INFO] Creating ApiPolicy: ingress1\\\r\n2018/08/10 14:33:11 [ERROR] [2018-08-10 14:33:11,010 f5_cccl.resource.resource ERROR] HTTP error(400): CCCL resource(ApiPolicy) ingress1.\\\r\n2018/08/10 14:33:11 [ERROR] [2018-08-10 14:33:11,010 f5_cccl.service.manager ERROR] F5CcclResourceRequestError - 400 Unexpected Error: Bad Request for uri: https://<IP>:<PORT>/mgmt/tm/ltm/policy/\\\r\n2018/08/10 14:33:11 [INFO] Text: u'\\{\"code\":400,\"message\":\"010716e5:3: Policy ingress1\\\\', rule \\\\'ingress_2\\\\'; action refers to an invalid pool \\\\'/kubernetes/ingress_2\\\\'.\",\"errorStack\":[],\"apiError\":3\\}'\\\r\n2018/08/10 14:33:11 [ERROR] [2018-08-10 14:33:11,010 f5_cccl.service.manager ERROR] Resource ingress1 creation error, requeuing task...\\\r\n...\r\n```\r\nTask was requeued, error re-triggered, requeued, and loop goes on. BIG-IP was not able to continue processing other ingress requests UNTIL he fixed this error.\r\n\r\n#### Steps to reproduce:\r\n1. Deploy an app and service to K8S\r\n2. Deploy a configmap that has a syntax error.  In my case, I made the load balancing method \"round-robin\"\r\n3. The CC logs will show that there is a syntax error that begins like this:\r\n    2018/08/20 18:07:36 [ERROR] [2018-08-20 18:07:36,660 __main__ ERROR] CCCL Error: Service congifuration provided does not match schema:\r\n4. Deploy another, different configmap or an ingress that is valid\r\n5. The CC logs will not show any activity related to the newly deployed resource and the BIG-IP configuration is not updated\r\n6. Delete the invalid configmap deploy in step #2\r\n7. CC logs will show the resource deployed in step #4 being processed and the BIG-IP configuration is updated\r\n\r\n"}}
{"actor":{"display_login":"amudukutore"}}