Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Convert security policy into IR
Browse files Browse the repository at this point in the history
sawsa307 committed Sep 12, 2024
1 parent f81472a commit 07f1118
Showing 3 changed files with 13 additions and 0 deletions.
4 changes: 4 additions & 0 deletions pkg/i2gw/intermediate/provider_gce.go
Original file line number Diff line number Diff line change
@@ -22,11 +22,15 @@ type GceGatewayIR struct {
type GceHTTPRouteIR struct{}
type GceServiceIR struct {
SessionAffinity *SessionAffinityConfig
SecurityPolicy *SecurityPolicyConfig
}
type SessionAffinityConfig struct {
AffinityType string
CookieTTLSec *int64
}
type SecurityPolicyConfig struct {
Name string
}

func mergeGceGatewayIR(current, existing *GceGatewayIR) *GceGatewayIR {
// If either GceGatewayIR is nil, return the other one as the merged result.
6 changes: 6 additions & 0 deletions pkg/i2gw/providers/gce/extensions/input_extensions.go
Original file line number Diff line number Diff line change
@@ -36,3 +36,9 @@ func BuildIRSessionAffinityConfig(beConfig *backendconfigv1.BackendConfig) *inte
CookieTTLSec: beConfig.Spec.SessionAffinity.AffinityCookieTtlSec,
}
}

func BuildIRSecurityPolicyConfig(beConfig *backendconfigv1.BackendConfig) *intermediate.SecurityPolicyConfig {
return &intermediate.SecurityPolicyConfig{
Name: beConfig.Spec.SecurityPolicy.Name,
}
}
3 changes: 3 additions & 0 deletions pkg/i2gw/providers/gce/gce_extensions.go
Original file line number Diff line number Diff line change
@@ -148,6 +148,9 @@ func beConfigToGceServiceIR(beConfig *backendconfigv1.BackendConfig) intermediat
if beConfig.Spec.SessionAffinity != nil {
gceServiceIR.SessionAffinity = extensions.BuildIRSessionAffinityConfig(beConfig)
}
if beConfig.Spec.SecurityPolicy != nil {
gceServiceIR.SecurityPolicy = extensions.BuildIRSecurityPolicyConfig(beConfig)
}

return gceServiceIR
}

0 comments on commit 07f1118

Please sign in to comment.