Description of problem:
When a Network Policy is enforced, an update of the SG of a LBaaS affected by the Network Policy is triggered. However, when checking if the k8s service should be affected by the Network Policy, services without selector are also taken into account and they shouldn't as Kuryr does not wires them.
Also it's assumed that the ports field will be always defined in the service specification and this might not always happen.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Run the Kubernetes Upstream Network Policy e2e test: "should enforce updated policy"
Verified on an OCP 4.2 cluster (4.2.0-0.nightly-2019-10-02-001405) with Kuryr-controller image from OCP 4.3 (4.3.0-0.ci-2019-10-02-101344),
which includes the fix.
Verified that the fix does not add new regressions as well.
$ oc get pods -n openshift-kuryr kuryr-controller-5744b8d79d-wpdjl -o yaml | grep image
It was not possible to verify on OCP 4.3 cluster as there are no nightly builds available at the moment.
Verified on OCP 4.3.0-0.nightly-2019-10-17-061631 build on top of OSP 13 2019-10-01.1 puddle.
release image: registry.svc.ci.openshift.org/ocp/release@sha256:2cafe25ec1ed2dfdec361cde13b4461d2a30194d0b41fbd1c6d3fad5ab34ca05
K8s NP (test/e2e/network/network_policy.go) tests passed.
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.