Skip to content

Commit

Permalink
Fix update egress gateway
Browse files Browse the repository at this point in the history
  • Loading branch information
lou-lan committed Nov 9, 2023
1 parent d85fc9c commit 0a26584
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 9 deletions.
5 changes: 5 additions & 0 deletions pkg/egressgateway/egress_gateway_webhook.go
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,11 @@ func (egw *EgressGatewayWebhook) EgressGatewayValidate(ctx context.Context, req
// Check whether the IP address to be deleted has been allocated
for _, item := range eg.Status.NodeList {
for _, eip := range item.Eips {
// skip the cases of using useNodeIP
if eip.IPv4 == "" && eip.IPv6 == "" {
continue
}

result, err := ip.IsIPIncludedRange(constant.IPv4, eip.IPv4, ipv4Ranges)
if err != nil {
return webhook.Denied(fmt.Sprintf("Failed to check IP: %v", err))
Expand Down
18 changes: 9 additions & 9 deletions test/e2e/egresspolicy/egresspolicy_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,7 @@ var _ = Describe("EgressPolicy", Ordered, func() {
var err error

AfterEach(func() {
// delete the policy if it is exist
// delete the policy if it is existed
if egp != nil {
err = common.WaitEgressPoliciesDeleted(ctx, cli, []*egressv1.EgressPolicy{egp}, time.Second*5)
Expect(err).NotTo(HaveOccurred())
Expand Down Expand Up @@ -356,7 +356,7 @@ var _ = Describe("EgressPolicy", Ordered, func() {
4. Update the gateway to change the match from node1 to node2
5. Validate the status of the gateway and policy, verify the pod's egress IP should be the IP of node2
*/
PContext("Create policy with setting EgressIP.UseNodeIP to be true", Label("P00015", "P00016"), func() {
Context("Create policy with setting EgressIP.UseNodeIP to be true", Label("P00015", "P00016"), func() {
var egw *egressv1.EgressGateway
var egp *egressv1.EgressPolicy
var egcp *egressv1.EgressClusterPolicy
Expand Down Expand Up @@ -406,14 +406,14 @@ var _ = Describe("EgressPolicy", Ordered, func() {
// delete daemonset
Expect(common.DeleteObj(ctx, cli, ds)).NotTo(HaveOccurred())

// delete egresspolicy
// delete EgressPolicy
if egp != nil {
GinkgoWriter.Printf("Delete egp: %s\n", egp.Name)
err = common.WaitEgressPoliciesDeleted(ctx, cli, []*egressv1.EgressPolicy{egp}, time.Second*5)
Expect(err).NotTo(HaveOccurred())
}

// delete egressclusterpolicy
// delete EgressClusterPolicy
if egcp != nil {
GinkgoWriter.Printf("Delete egcp: %s\n", egcp.Name)
err = common.WaitEgressClusterPoliciesDeleted(ctx, cli, []*egressv1.EgressClusterPolicy{egcp}, time.Second*5)
Expand Down Expand Up @@ -570,14 +570,14 @@ var _ = Describe("EgressPolicy", Ordered, func() {

DeferCleanup(func() {

// delete egresspolicy
// delete EgressPolicy
if egp != nil {
GinkgoWriter.Printf("Delete egp: %s\n", egp.Name)
err = common.WaitEgressPoliciesDeleted(ctx, cli, []*egressv1.EgressPolicy{egp}, time.Second*5)
Expect(err).NotTo(HaveOccurred())
}

// delete egressclusterpolicy
// delete EgressClusterPolicy
if egcp != nil {
GinkgoWriter.Printf("Delete egcp: %s\n", egcp.Name)
err = common.WaitEgressClusterPoliciesDeleted(ctx, cli, []*egressv1.EgressClusterPolicy{egcp}, time.Second*5)
Expand All @@ -595,7 +595,7 @@ var _ = Describe("EgressPolicy", Ordered, func() {
})

It("namespace-level policy", func() {
// create egresspolicy
// create EgressPolicy
egp, err = common.CreateEgressPolicyCustom(ctx, cli,
func(egp *egressv1.EgressPolicy) {
egp.Spec.EgressGatewayName = egw1.Name
Expand Down Expand Up @@ -629,7 +629,7 @@ var _ = Describe("EgressPolicy", Ordered, func() {

// todo @bzsuni waiting for the bug to be fixed
PIt("cluster-level policy", func() {
// create egressclusterpolicy
// create EgressClusterPolicy
egcp, err = common.CreateEgressClusterPolicyCustom(ctx, cli,
func(egcp *egressv1.EgressClusterPolicy) {
egcp.Spec.EgressGatewayName = egw1.Name
Expand Down Expand Up @@ -698,7 +698,7 @@ var _ = Describe("EgressPolicy", Ordered, func() {
Expect(common.DeleteObj(ctx, cli, podObj)).NotTo(HaveOccurred())
}

// delete egresspolicy
// delete EgressPolicy
if egp != nil {
// Expect(common.DeleteObj(ctx, cli, egp)).NotTo(HaveOccurred())
err = common.WaitEgressPoliciesDeleted(ctx, cli, []*egressv1.EgressPolicy{egp}, time.Second*5)
Expand Down

0 comments on commit 0a26584

Please sign in to comment.