python/services/gkehub/feature_membership_server.go (774 lines of code) (raw):
// Copyright 2025 Google LLC. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package server
import (
"context"
"github.com/GoogleCloudPlatform/declarative-resource-client-library/dcl"
emptypb "github.com/GoogleCloudPlatform/declarative-resource-client-library/python/proto/empty_go_proto"
gkehubpb "github.com/GoogleCloudPlatform/declarative-resource-client-library/python/proto/gkehub/gkehub_go_proto"
"github.com/GoogleCloudPlatform/declarative-resource-client-library/services/google/gkehub"
)
// FeatureMembershipServer implements the gRPC interface for FeatureMembership.
type FeatureMembershipServer struct{}
// ProtoToFeatureMembershipMeshManagementEnum converts a FeatureMembershipMeshManagementEnum enum from its proto representation.
func ProtoToGkehubFeatureMembershipMeshManagementEnum(e gkehubpb.GkehubFeatureMembershipMeshManagementEnum) *gkehub.FeatureMembershipMeshManagementEnum {
if e == 0 {
return nil
}
if n, ok := gkehubpb.GkehubFeatureMembershipMeshManagementEnum_name[int32(e)]; ok {
e := gkehub.FeatureMembershipMeshManagementEnum(n[len("GkehubFeatureMembershipMeshManagementEnum"):])
return &e
}
return nil
}
// ProtoToFeatureMembershipMeshControlPlaneEnum converts a FeatureMembershipMeshControlPlaneEnum enum from its proto representation.
func ProtoToGkehubFeatureMembershipMeshControlPlaneEnum(e gkehubpb.GkehubFeatureMembershipMeshControlPlaneEnum) *gkehub.FeatureMembershipMeshControlPlaneEnum {
if e == 0 {
return nil
}
if n, ok := gkehubpb.GkehubFeatureMembershipMeshControlPlaneEnum_name[int32(e)]; ok {
e := gkehub.FeatureMembershipMeshControlPlaneEnum(n[len("GkehubFeatureMembershipMeshControlPlaneEnum"):])
return &e
}
return nil
}
// ProtoToFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum converts a FeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum enum from its proto representation.
func ProtoToGkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum(e gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum) *gkehub.FeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum {
if e == 0 {
return nil
}
if n, ok := gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum_name[int32(e)]; ok {
e := gkehub.FeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum(n[len("GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum"):])
return &e
}
return nil
}
// ProtoToFeatureMembershipConfigmanagementManagementEnum converts a FeatureMembershipConfigmanagementManagementEnum enum from its proto representation.
func ProtoToGkehubFeatureMembershipConfigmanagementManagementEnum(e gkehubpb.GkehubFeatureMembershipConfigmanagementManagementEnum) *gkehub.FeatureMembershipConfigmanagementManagementEnum {
if e == 0 {
return nil
}
if n, ok := gkehubpb.GkehubFeatureMembershipConfigmanagementManagementEnum_name[int32(e)]; ok {
e := gkehub.FeatureMembershipConfigmanagementManagementEnum(n[len("GkehubFeatureMembershipConfigmanagementManagementEnum"):])
return &e
}
return nil
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum enum from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum(e gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum {
if e == 0 {
return nil
}
if n, ok := gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum_name[int32(e)]; ok {
e := gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum(n[len("GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum"):])
return &e
}
return nil
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum enum from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum(e gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum {
if e == 0 {
return nil
}
if n, ok := gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum_name[int32(e)]; ok {
e := gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum(n[len("GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum"):])
return &e
}
return nil
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum enum from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum(e gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum {
if e == 0 {
return nil
}
if n, ok := gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum_name[int32(e)]; ok {
e := gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum(n[len("GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum"):])
return &e
}
return nil
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum enum from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum(e gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum {
if e == 0 {
return nil
}
if n, ok := gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum_name[int32(e)]; ok {
e := gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum(n[len("GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum"):])
return &e
}
return nil
}
// ProtoToFeatureMembershipMesh converts a FeatureMembershipMesh object from its proto representation.
func ProtoToGkehubFeatureMembershipMesh(p *gkehubpb.GkehubFeatureMembershipMesh) *gkehub.FeatureMembershipMesh {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipMesh{
Management: ProtoToGkehubFeatureMembershipMeshManagementEnum(p.GetManagement()),
ControlPlane: ProtoToGkehubFeatureMembershipMeshControlPlaneEnum(p.GetControlPlane()),
}
return obj
}
// ProtoToFeatureMembershipConfigmanagement converts a FeatureMembershipConfigmanagement object from its proto representation.
func ProtoToGkehubFeatureMembershipConfigmanagement(p *gkehubpb.GkehubFeatureMembershipConfigmanagement) *gkehub.FeatureMembershipConfigmanagement {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipConfigmanagement{
ConfigSync: ProtoToGkehubFeatureMembershipConfigmanagementConfigSync(p.GetConfigSync()),
PolicyController: ProtoToGkehubFeatureMembershipConfigmanagementPolicyController(p.GetPolicyController()),
Binauthz: ProtoToGkehubFeatureMembershipConfigmanagementBinauthz(p.GetBinauthz()),
HierarchyController: ProtoToGkehubFeatureMembershipConfigmanagementHierarchyController(p.GetHierarchyController()),
Version: dcl.StringOrNil(p.GetVersion()),
Management: ProtoToGkehubFeatureMembershipConfigmanagementManagementEnum(p.GetManagement()),
}
return obj
}
// ProtoToFeatureMembershipConfigmanagementConfigSync converts a FeatureMembershipConfigmanagementConfigSync object from its proto representation.
func ProtoToGkehubFeatureMembershipConfigmanagementConfigSync(p *gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSync) *gkehub.FeatureMembershipConfigmanagementConfigSync {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipConfigmanagementConfigSync{
Git: ProtoToGkehubFeatureMembershipConfigmanagementConfigSyncGit(p.GetGit()),
SourceFormat: dcl.StringOrNil(p.GetSourceFormat()),
Enabled: dcl.Bool(p.GetEnabled()),
StopSyncing: dcl.Bool(p.GetStopSyncing()),
PreventDrift: dcl.Bool(p.GetPreventDrift()),
MetricsGcpServiceAccountEmail: dcl.StringOrNil(p.GetMetricsGcpServiceAccountEmail()),
Oci: ProtoToGkehubFeatureMembershipConfigmanagementConfigSyncOci(p.GetOci()),
}
for _, r := range p.GetDeploymentOverrides() {
obj.DeploymentOverrides = append(obj.DeploymentOverrides, *ProtoToGkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverrides(r))
}
return obj
}
// ProtoToFeatureMembershipConfigmanagementConfigSyncDeploymentOverrides converts a FeatureMembershipConfigmanagementConfigSyncDeploymentOverrides object from its proto representation.
func ProtoToGkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverrides(p *gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverrides) *gkehub.FeatureMembershipConfigmanagementConfigSyncDeploymentOverrides {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipConfigmanagementConfigSyncDeploymentOverrides{
DeploymentName: dcl.StringOrNil(p.GetDeploymentName()),
DeploymentNamespace: dcl.StringOrNil(p.GetDeploymentNamespace()),
}
for _, r := range p.GetContainers() {
obj.Containers = append(obj.Containers, *ProtoToGkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainers(r))
}
return obj
}
// ProtoToFeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainers converts a FeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainers object from its proto representation.
func ProtoToGkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainers(p *gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainers) *gkehub.FeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainers {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainers{
ContainerName: dcl.StringOrNil(p.GetContainerName()),
CpuRequest: dcl.StringOrNil(p.GetCpuRequest()),
MemoryRequest: dcl.StringOrNil(p.GetMemoryRequest()),
CpuLimit: dcl.StringOrNil(p.GetCpuLimit()),
MemoryLimit: dcl.StringOrNil(p.GetMemoryLimit()),
}
return obj
}
// ProtoToFeatureMembershipConfigmanagementConfigSyncGit converts a FeatureMembershipConfigmanagementConfigSyncGit object from its proto representation.
func ProtoToGkehubFeatureMembershipConfigmanagementConfigSyncGit(p *gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncGit) *gkehub.FeatureMembershipConfigmanagementConfigSyncGit {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipConfigmanagementConfigSyncGit{
SyncRepo: dcl.StringOrNil(p.GetSyncRepo()),
SyncBranch: dcl.StringOrNil(p.GetSyncBranch()),
PolicyDir: dcl.StringOrNil(p.GetPolicyDir()),
SyncWaitSecs: dcl.StringOrNil(p.GetSyncWaitSecs()),
SyncRev: dcl.StringOrNil(p.GetSyncRev()),
SecretType: dcl.StringOrNil(p.GetSecretType()),
HttpsProxy: dcl.StringOrNil(p.GetHttpsProxy()),
GcpServiceAccountEmail: dcl.StringOrNil(p.GetGcpServiceAccountEmail()),
}
return obj
}
// ProtoToFeatureMembershipConfigmanagementConfigSyncOci converts a FeatureMembershipConfigmanagementConfigSyncOci object from its proto representation.
func ProtoToGkehubFeatureMembershipConfigmanagementConfigSyncOci(p *gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncOci) *gkehub.FeatureMembershipConfigmanagementConfigSyncOci {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipConfigmanagementConfigSyncOci{
SyncRepo: dcl.StringOrNil(p.GetSyncRepo()),
PolicyDir: dcl.StringOrNil(p.GetPolicyDir()),
SyncWaitSecs: dcl.StringOrNil(p.GetSyncWaitSecs()),
SecretType: dcl.StringOrNil(p.GetSecretType()),
GcpServiceAccountEmail: dcl.StringOrNil(p.GetGcpServiceAccountEmail()),
}
return obj
}
// ProtoToFeatureMembershipConfigmanagementPolicyController converts a FeatureMembershipConfigmanagementPolicyController object from its proto representation.
func ProtoToGkehubFeatureMembershipConfigmanagementPolicyController(p *gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyController) *gkehub.FeatureMembershipConfigmanagementPolicyController {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipConfigmanagementPolicyController{
Enabled: dcl.Bool(p.GetEnabled()),
ReferentialRulesEnabled: dcl.Bool(p.GetReferentialRulesEnabled()),
LogDeniesEnabled: dcl.Bool(p.GetLogDeniesEnabled()),
MutationEnabled: dcl.Bool(p.GetMutationEnabled()),
Monitoring: ProtoToGkehubFeatureMembershipConfigmanagementPolicyControllerMonitoring(p.GetMonitoring()),
TemplateLibraryInstalled: dcl.Bool(p.GetTemplateLibraryInstalled()),
AuditIntervalSeconds: dcl.StringOrNil(p.GetAuditIntervalSeconds()),
}
for _, r := range p.GetExemptableNamespaces() {
obj.ExemptableNamespaces = append(obj.ExemptableNamespaces, r)
}
return obj
}
// ProtoToFeatureMembershipConfigmanagementPolicyControllerMonitoring converts a FeatureMembershipConfigmanagementPolicyControllerMonitoring object from its proto representation.
func ProtoToGkehubFeatureMembershipConfigmanagementPolicyControllerMonitoring(p *gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoring) *gkehub.FeatureMembershipConfigmanagementPolicyControllerMonitoring {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipConfigmanagementPolicyControllerMonitoring{}
for _, r := range p.GetBackends() {
obj.Backends = append(obj.Backends, *ProtoToGkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum(r))
}
return obj
}
// ProtoToFeatureMembershipConfigmanagementBinauthz converts a FeatureMembershipConfigmanagementBinauthz object from its proto representation.
func ProtoToGkehubFeatureMembershipConfigmanagementBinauthz(p *gkehubpb.GkehubFeatureMembershipConfigmanagementBinauthz) *gkehub.FeatureMembershipConfigmanagementBinauthz {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipConfigmanagementBinauthz{
Enabled: dcl.Bool(p.GetEnabled()),
}
return obj
}
// ProtoToFeatureMembershipConfigmanagementHierarchyController converts a FeatureMembershipConfigmanagementHierarchyController object from its proto representation.
func ProtoToGkehubFeatureMembershipConfigmanagementHierarchyController(p *gkehubpb.GkehubFeatureMembershipConfigmanagementHierarchyController) *gkehub.FeatureMembershipConfigmanagementHierarchyController {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipConfigmanagementHierarchyController{
Enabled: dcl.Bool(p.GetEnabled()),
EnablePodTreeLabels: dcl.Bool(p.GetEnablePodTreeLabels()),
EnableHierarchicalResourceQuota: dcl.Bool(p.GetEnableHierarchicalResourceQuota()),
}
return obj
}
// ProtoToFeatureMembershipPolicycontroller converts a FeatureMembershipPolicycontroller object from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontroller(p *gkehubpb.GkehubFeatureMembershipPolicycontroller) *gkehub.FeatureMembershipPolicycontroller {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipPolicycontroller{
Version: dcl.StringOrNil(p.GetVersion()),
PolicyControllerHubConfig: ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfig(p.GetPolicyControllerHubConfig()),
}
return obj
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfig converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfig object from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfig(p *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfig) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfig {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfig{
InstallSpec: ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum(p.GetInstallSpec()),
ReferentialRulesEnabled: dcl.Bool(p.GetReferentialRulesEnabled()),
LogDeniesEnabled: dcl.Bool(p.GetLogDeniesEnabled()),
MutationEnabled: dcl.Bool(p.GetMutationEnabled()),
Monitoring: ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoring(p.GetMonitoring()),
AuditIntervalSeconds: dcl.Int64OrNil(p.GetAuditIntervalSeconds()),
ConstraintViolationLimit: dcl.Int64OrNil(p.GetConstraintViolationLimit()),
PolicyContent: ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContent(p.GetPolicyContent()),
}
for _, r := range p.GetExemptableNamespaces() {
obj.ExemptableNamespaces = append(obj.ExemptableNamespaces, r)
}
return obj
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoring converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoring object from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoring(p *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoring) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoring {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoring{}
for _, r := range p.GetBackends() {
obj.Backends = append(obj.Backends, *ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum(r))
}
return obj
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContent converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContent object from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContent(p *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContent) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContent {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContent{
TemplateLibrary: ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibrary(p.GetTemplateLibrary()),
}
return obj
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibrary converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibrary object from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibrary(p *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibrary) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibrary {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibrary{
Installation: ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum(p.GetInstallation()),
}
return obj
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundles converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundles object from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundles(p *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundles) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundles {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundles{}
for _, r := range p.GetExemptedNamespaces() {
obj.ExemptedNamespaces = append(obj.ExemptedNamespaces, r)
}
return obj
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigs converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigs object from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigs(p *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigs) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigs {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigs{
ReplicaCount: dcl.Int64OrNil(p.GetReplicaCount()),
ContainerResources: ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResources(p.GetContainerResources()),
PodAffinity: ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum(p.GetPodAffinity()),
}
for _, r := range p.GetPodTolerations() {
obj.PodTolerations = append(obj.PodTolerations, *ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerations(r))
}
return obj
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResources converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResources object from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResources(p *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResources) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResources {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResources{
Limits: ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimits(p.GetLimits()),
Requests: ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequests(p.GetRequests()),
}
return obj
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimits converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimits object from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimits(p *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimits) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimits {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimits{
Memory: dcl.StringOrNil(p.GetMemory()),
Cpu: dcl.StringOrNil(p.GetCpu()),
}
return obj
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequests converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequests object from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequests(p *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequests) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequests {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequests{
Memory: dcl.StringOrNil(p.GetMemory()),
Cpu: dcl.StringOrNil(p.GetCpu()),
}
return obj
}
// ProtoToFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerations converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerations object from its proto representation.
func ProtoToGkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerations(p *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerations) *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerations {
if p == nil {
return nil
}
obj := &gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerations{
Key: dcl.StringOrNil(p.GetKey()),
Operator: dcl.StringOrNil(p.GetOperator()),
Value: dcl.StringOrNil(p.GetValue()),
Effect: dcl.StringOrNil(p.GetEffect()),
}
return obj
}
// ProtoToFeatureMembership converts a FeatureMembership resource from its proto representation.
func ProtoToFeatureMembership(p *gkehubpb.GkehubFeatureMembership) *gkehub.FeatureMembership {
obj := &gkehub.FeatureMembership{
Mesh: ProtoToGkehubFeatureMembershipMesh(p.GetMesh()),
Configmanagement: ProtoToGkehubFeatureMembershipConfigmanagement(p.GetConfigmanagement()),
Policycontroller: ProtoToGkehubFeatureMembershipPolicycontroller(p.GetPolicycontroller()),
Project: dcl.StringOrNil(p.GetProject()),
Location: dcl.StringOrNil(p.GetLocation()),
Feature: dcl.StringOrNil(p.GetFeature()),
Membership: dcl.StringOrNil(p.GetMembership()),
MembershipLocation: dcl.StringOrNil(p.GetMembershipLocation()),
}
return obj
}
// FeatureMembershipMeshManagementEnumToProto converts a FeatureMembershipMeshManagementEnum enum to its proto representation.
func GkehubFeatureMembershipMeshManagementEnumToProto(e *gkehub.FeatureMembershipMeshManagementEnum) gkehubpb.GkehubFeatureMembershipMeshManagementEnum {
if e == nil {
return gkehubpb.GkehubFeatureMembershipMeshManagementEnum(0)
}
if v, ok := gkehubpb.GkehubFeatureMembershipMeshManagementEnum_value["FeatureMembershipMeshManagementEnum"+string(*e)]; ok {
return gkehubpb.GkehubFeatureMembershipMeshManagementEnum(v)
}
return gkehubpb.GkehubFeatureMembershipMeshManagementEnum(0)
}
// FeatureMembershipMeshControlPlaneEnumToProto converts a FeatureMembershipMeshControlPlaneEnum enum to its proto representation.
func GkehubFeatureMembershipMeshControlPlaneEnumToProto(e *gkehub.FeatureMembershipMeshControlPlaneEnum) gkehubpb.GkehubFeatureMembershipMeshControlPlaneEnum {
if e == nil {
return gkehubpb.GkehubFeatureMembershipMeshControlPlaneEnum(0)
}
if v, ok := gkehubpb.GkehubFeatureMembershipMeshControlPlaneEnum_value["FeatureMembershipMeshControlPlaneEnum"+string(*e)]; ok {
return gkehubpb.GkehubFeatureMembershipMeshControlPlaneEnum(v)
}
return gkehubpb.GkehubFeatureMembershipMeshControlPlaneEnum(0)
}
// FeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnumToProto converts a FeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum enum to its proto representation.
func GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnumToProto(e *gkehub.FeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum) gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum {
if e == nil {
return gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum(0)
}
if v, ok := gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum_value["FeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum"+string(*e)]; ok {
return gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum(v)
}
return gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum(0)
}
// FeatureMembershipConfigmanagementManagementEnumToProto converts a FeatureMembershipConfigmanagementManagementEnum enum to its proto representation.
func GkehubFeatureMembershipConfigmanagementManagementEnumToProto(e *gkehub.FeatureMembershipConfigmanagementManagementEnum) gkehubpb.GkehubFeatureMembershipConfigmanagementManagementEnum {
if e == nil {
return gkehubpb.GkehubFeatureMembershipConfigmanagementManagementEnum(0)
}
if v, ok := gkehubpb.GkehubFeatureMembershipConfigmanagementManagementEnum_value["FeatureMembershipConfigmanagementManagementEnum"+string(*e)]; ok {
return gkehubpb.GkehubFeatureMembershipConfigmanagementManagementEnum(v)
}
return gkehubpb.GkehubFeatureMembershipConfigmanagementManagementEnum(0)
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnumToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum enum to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnumToProto(e *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum) gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum {
if e == nil {
return gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum(0)
}
if v, ok := gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum_value["FeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum"+string(*e)]; ok {
return gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum(v)
}
return gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnum(0)
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnumToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum enum to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnumToProto(e *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum) gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum {
if e == nil {
return gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum(0)
}
if v, ok := gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum_value["FeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum"+string(*e)]; ok {
return gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum(v)
}
return gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum(0)
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnumToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum enum to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnumToProto(e *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum) gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum {
if e == nil {
return gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum(0)
}
if v, ok := gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum_value["FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum"+string(*e)]; ok {
return gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum(v)
}
return gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnum(0)
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnumToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum enum to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnumToProto(e *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum) gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum {
if e == nil {
return gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum(0)
}
if v, ok := gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum_value["FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum"+string(*e)]; ok {
return gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum(v)
}
return gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnum(0)
}
// FeatureMembershipMeshToProto converts a FeatureMembershipMesh object to its proto representation.
func GkehubFeatureMembershipMeshToProto(o *gkehub.FeatureMembershipMesh) *gkehubpb.GkehubFeatureMembershipMesh {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipMesh{}
p.SetManagement(GkehubFeatureMembershipMeshManagementEnumToProto(o.Management))
p.SetControlPlane(GkehubFeatureMembershipMeshControlPlaneEnumToProto(o.ControlPlane))
return p
}
// FeatureMembershipConfigmanagementToProto converts a FeatureMembershipConfigmanagement object to its proto representation.
func GkehubFeatureMembershipConfigmanagementToProto(o *gkehub.FeatureMembershipConfigmanagement) *gkehubpb.GkehubFeatureMembershipConfigmanagement {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipConfigmanagement{}
p.SetConfigSync(GkehubFeatureMembershipConfigmanagementConfigSyncToProto(o.ConfigSync))
p.SetPolicyController(GkehubFeatureMembershipConfigmanagementPolicyControllerToProto(o.PolicyController))
p.SetBinauthz(GkehubFeatureMembershipConfigmanagementBinauthzToProto(o.Binauthz))
p.SetHierarchyController(GkehubFeatureMembershipConfigmanagementHierarchyControllerToProto(o.HierarchyController))
p.SetVersion(dcl.ValueOrEmptyString(o.Version))
p.SetManagement(GkehubFeatureMembershipConfigmanagementManagementEnumToProto(o.Management))
return p
}
// FeatureMembershipConfigmanagementConfigSyncToProto converts a FeatureMembershipConfigmanagementConfigSync object to its proto representation.
func GkehubFeatureMembershipConfigmanagementConfigSyncToProto(o *gkehub.FeatureMembershipConfigmanagementConfigSync) *gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSync {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSync{}
p.SetGit(GkehubFeatureMembershipConfigmanagementConfigSyncGitToProto(o.Git))
p.SetSourceFormat(dcl.ValueOrEmptyString(o.SourceFormat))
p.SetEnabled(dcl.ValueOrEmptyBool(o.Enabled))
p.SetStopSyncing(dcl.ValueOrEmptyBool(o.StopSyncing))
p.SetPreventDrift(dcl.ValueOrEmptyBool(o.PreventDrift))
p.SetMetricsGcpServiceAccountEmail(dcl.ValueOrEmptyString(o.MetricsGcpServiceAccountEmail))
p.SetOci(GkehubFeatureMembershipConfigmanagementConfigSyncOciToProto(o.Oci))
sDeploymentOverrides := make([]*gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverrides, len(o.DeploymentOverrides))
for i, r := range o.DeploymentOverrides {
sDeploymentOverrides[i] = GkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverridesToProto(&r)
}
p.SetDeploymentOverrides(sDeploymentOverrides)
return p
}
// FeatureMembershipConfigmanagementConfigSyncDeploymentOverridesToProto converts a FeatureMembershipConfigmanagementConfigSyncDeploymentOverrides object to its proto representation.
func GkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverridesToProto(o *gkehub.FeatureMembershipConfigmanagementConfigSyncDeploymentOverrides) *gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverrides {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverrides{}
p.SetDeploymentName(dcl.ValueOrEmptyString(o.DeploymentName))
p.SetDeploymentNamespace(dcl.ValueOrEmptyString(o.DeploymentNamespace))
sContainers := make([]*gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainers, len(o.Containers))
for i, r := range o.Containers {
sContainers[i] = GkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainersToProto(&r)
}
p.SetContainers(sContainers)
return p
}
// FeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainersToProto converts a FeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainers object to its proto representation.
func GkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainersToProto(o *gkehub.FeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainers) *gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainers {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncDeploymentOverridesContainers{}
p.SetContainerName(dcl.ValueOrEmptyString(o.ContainerName))
p.SetCpuRequest(dcl.ValueOrEmptyString(o.CpuRequest))
p.SetMemoryRequest(dcl.ValueOrEmptyString(o.MemoryRequest))
p.SetCpuLimit(dcl.ValueOrEmptyString(o.CpuLimit))
p.SetMemoryLimit(dcl.ValueOrEmptyString(o.MemoryLimit))
return p
}
// FeatureMembershipConfigmanagementConfigSyncGitToProto converts a FeatureMembershipConfigmanagementConfigSyncGit object to its proto representation.
func GkehubFeatureMembershipConfigmanagementConfigSyncGitToProto(o *gkehub.FeatureMembershipConfigmanagementConfigSyncGit) *gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncGit {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncGit{}
p.SetSyncRepo(dcl.ValueOrEmptyString(o.SyncRepo))
p.SetSyncBranch(dcl.ValueOrEmptyString(o.SyncBranch))
p.SetPolicyDir(dcl.ValueOrEmptyString(o.PolicyDir))
p.SetSyncWaitSecs(dcl.ValueOrEmptyString(o.SyncWaitSecs))
p.SetSyncRev(dcl.ValueOrEmptyString(o.SyncRev))
p.SetSecretType(dcl.ValueOrEmptyString(o.SecretType))
p.SetHttpsProxy(dcl.ValueOrEmptyString(o.HttpsProxy))
p.SetGcpServiceAccountEmail(dcl.ValueOrEmptyString(o.GcpServiceAccountEmail))
return p
}
// FeatureMembershipConfigmanagementConfigSyncOciToProto converts a FeatureMembershipConfigmanagementConfigSyncOci object to its proto representation.
func GkehubFeatureMembershipConfigmanagementConfigSyncOciToProto(o *gkehub.FeatureMembershipConfigmanagementConfigSyncOci) *gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncOci {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipConfigmanagementConfigSyncOci{}
p.SetSyncRepo(dcl.ValueOrEmptyString(o.SyncRepo))
p.SetPolicyDir(dcl.ValueOrEmptyString(o.PolicyDir))
p.SetSyncWaitSecs(dcl.ValueOrEmptyString(o.SyncWaitSecs))
p.SetSecretType(dcl.ValueOrEmptyString(o.SecretType))
p.SetGcpServiceAccountEmail(dcl.ValueOrEmptyString(o.GcpServiceAccountEmail))
return p
}
// FeatureMembershipConfigmanagementPolicyControllerToProto converts a FeatureMembershipConfigmanagementPolicyController object to its proto representation.
func GkehubFeatureMembershipConfigmanagementPolicyControllerToProto(o *gkehub.FeatureMembershipConfigmanagementPolicyController) *gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyController {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyController{}
p.SetEnabled(dcl.ValueOrEmptyBool(o.Enabled))
p.SetReferentialRulesEnabled(dcl.ValueOrEmptyBool(o.ReferentialRulesEnabled))
p.SetLogDeniesEnabled(dcl.ValueOrEmptyBool(o.LogDeniesEnabled))
p.SetMutationEnabled(dcl.ValueOrEmptyBool(o.MutationEnabled))
p.SetMonitoring(GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringToProto(o.Monitoring))
p.SetTemplateLibraryInstalled(dcl.ValueOrEmptyBool(o.TemplateLibraryInstalled))
p.SetAuditIntervalSeconds(dcl.ValueOrEmptyString(o.AuditIntervalSeconds))
sExemptableNamespaces := make([]string, len(o.ExemptableNamespaces))
for i, r := range o.ExemptableNamespaces {
sExemptableNamespaces[i] = r
}
p.SetExemptableNamespaces(sExemptableNamespaces)
return p
}
// FeatureMembershipConfigmanagementPolicyControllerMonitoringToProto converts a FeatureMembershipConfigmanagementPolicyControllerMonitoring object to its proto representation.
func GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringToProto(o *gkehub.FeatureMembershipConfigmanagementPolicyControllerMonitoring) *gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoring {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoring{}
sBackends := make([]gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum, len(o.Backends))
for i, r := range o.Backends {
sBackends[i] = gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum(gkehubpb.GkehubFeatureMembershipConfigmanagementPolicyControllerMonitoringBackendsEnum_value[string(r)])
}
p.SetBackends(sBackends)
return p
}
// FeatureMembershipConfigmanagementBinauthzToProto converts a FeatureMembershipConfigmanagementBinauthz object to its proto representation.
func GkehubFeatureMembershipConfigmanagementBinauthzToProto(o *gkehub.FeatureMembershipConfigmanagementBinauthz) *gkehubpb.GkehubFeatureMembershipConfigmanagementBinauthz {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipConfigmanagementBinauthz{}
p.SetEnabled(dcl.ValueOrEmptyBool(o.Enabled))
return p
}
// FeatureMembershipConfigmanagementHierarchyControllerToProto converts a FeatureMembershipConfigmanagementHierarchyController object to its proto representation.
func GkehubFeatureMembershipConfigmanagementHierarchyControllerToProto(o *gkehub.FeatureMembershipConfigmanagementHierarchyController) *gkehubpb.GkehubFeatureMembershipConfigmanagementHierarchyController {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipConfigmanagementHierarchyController{}
p.SetEnabled(dcl.ValueOrEmptyBool(o.Enabled))
p.SetEnablePodTreeLabels(dcl.ValueOrEmptyBool(o.EnablePodTreeLabels))
p.SetEnableHierarchicalResourceQuota(dcl.ValueOrEmptyBool(o.EnableHierarchicalResourceQuota))
return p
}
// FeatureMembershipPolicycontrollerToProto converts a FeatureMembershipPolicycontroller object to its proto representation.
func GkehubFeatureMembershipPolicycontrollerToProto(o *gkehub.FeatureMembershipPolicycontroller) *gkehubpb.GkehubFeatureMembershipPolicycontroller {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipPolicycontroller{}
p.SetVersion(dcl.ValueOrEmptyString(o.Version))
p.SetPolicyControllerHubConfig(GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigToProto(o.PolicyControllerHubConfig))
return p
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfig object to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigToProto(o *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfig) *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfig {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfig{}
p.SetInstallSpec(GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigInstallSpecEnumToProto(o.InstallSpec))
p.SetReferentialRulesEnabled(dcl.ValueOrEmptyBool(o.ReferentialRulesEnabled))
p.SetLogDeniesEnabled(dcl.ValueOrEmptyBool(o.LogDeniesEnabled))
p.SetMutationEnabled(dcl.ValueOrEmptyBool(o.MutationEnabled))
p.SetMonitoring(GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringToProto(o.Monitoring))
p.SetAuditIntervalSeconds(dcl.ValueOrEmptyInt64(o.AuditIntervalSeconds))
p.SetConstraintViolationLimit(dcl.ValueOrEmptyInt64(o.ConstraintViolationLimit))
p.SetPolicyContent(GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentToProto(o.PolicyContent))
sExemptableNamespaces := make([]string, len(o.ExemptableNamespaces))
for i, r := range o.ExemptableNamespaces {
sExemptableNamespaces[i] = r
}
p.SetExemptableNamespaces(sExemptableNamespaces)
mDeploymentConfigs := make(map[string]*gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigs, len(o.DeploymentConfigs))
for k, r := range o.DeploymentConfigs {
mDeploymentConfigs[k] = GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsToProto(&r)
}
p.SetDeploymentConfigs(mDeploymentConfigs)
return p
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoring object to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringToProto(o *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoring) *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoring {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoring{}
sBackends := make([]gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum, len(o.Backends))
for i, r := range o.Backends {
sBackends[i] = gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum(gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigMonitoringBackendsEnum_value[string(r)])
}
p.SetBackends(sBackends)
return p
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContent object to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentToProto(o *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContent) *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContent {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContent{}
p.SetTemplateLibrary(GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryToProto(o.TemplateLibrary))
mBundles := make(map[string]*gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundles, len(o.Bundles))
for k, r := range o.Bundles {
mBundles[k] = GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundlesToProto(&r)
}
p.SetBundles(mBundles)
return p
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibrary object to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryToProto(o *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibrary) *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibrary {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibrary{}
p.SetInstallation(GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentTemplateLibraryInstallationEnumToProto(o.Installation))
return p
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundlesToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundles object to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundlesToProto(o *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundles) *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundles {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigPolicyContentBundles{}
sExemptedNamespaces := make([]string, len(o.ExemptedNamespaces))
for i, r := range o.ExemptedNamespaces {
sExemptedNamespaces[i] = r
}
p.SetExemptedNamespaces(sExemptedNamespaces)
return p
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigs object to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsToProto(o *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigs) *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigs {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigs{}
p.SetReplicaCount(dcl.ValueOrEmptyInt64(o.ReplicaCount))
p.SetContainerResources(GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesToProto(o.ContainerResources))
p.SetPodAffinity(GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodAffinityEnumToProto(o.PodAffinity))
sPodTolerations := make([]*gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerations, len(o.PodTolerations))
for i, r := range o.PodTolerations {
sPodTolerations[i] = GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerationsToProto(&r)
}
p.SetPodTolerations(sPodTolerations)
return p
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResources object to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesToProto(o *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResources) *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResources {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResources{}
p.SetLimits(GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimitsToProto(o.Limits))
p.SetRequests(GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequestsToProto(o.Requests))
return p
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimitsToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimits object to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimitsToProto(o *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimits) *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimits {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesLimits{}
p.SetMemory(dcl.ValueOrEmptyString(o.Memory))
p.SetCpu(dcl.ValueOrEmptyString(o.Cpu))
return p
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequestsToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequests object to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequestsToProto(o *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequests) *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequests {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsContainerResourcesRequests{}
p.SetMemory(dcl.ValueOrEmptyString(o.Memory))
p.SetCpu(dcl.ValueOrEmptyString(o.Cpu))
return p
}
// FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerationsToProto converts a FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerations object to its proto representation.
func GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerationsToProto(o *gkehub.FeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerations) *gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerations {
if o == nil {
return nil
}
p := &gkehubpb.GkehubFeatureMembershipPolicycontrollerPolicyControllerHubConfigDeploymentConfigsPodTolerations{}
p.SetKey(dcl.ValueOrEmptyString(o.Key))
p.SetOperator(dcl.ValueOrEmptyString(o.Operator))
p.SetValue(dcl.ValueOrEmptyString(o.Value))
p.SetEffect(dcl.ValueOrEmptyString(o.Effect))
return p
}
// FeatureMembershipToProto converts a FeatureMembership resource to its proto representation.
func FeatureMembershipToProto(resource *gkehub.FeatureMembership) *gkehubpb.GkehubFeatureMembership {
p := &gkehubpb.GkehubFeatureMembership{}
p.SetMesh(GkehubFeatureMembershipMeshToProto(resource.Mesh))
p.SetConfigmanagement(GkehubFeatureMembershipConfigmanagementToProto(resource.Configmanagement))
p.SetPolicycontroller(GkehubFeatureMembershipPolicycontrollerToProto(resource.Policycontroller))
p.SetProject(dcl.ValueOrEmptyString(resource.Project))
p.SetLocation(dcl.ValueOrEmptyString(resource.Location))
p.SetFeature(dcl.ValueOrEmptyString(resource.Feature))
p.SetMembership(dcl.ValueOrEmptyString(resource.Membership))
p.SetMembershipLocation(dcl.ValueOrEmptyString(resource.MembershipLocation))
return p
}
// applyFeatureMembership handles the gRPC request by passing it to the underlying FeatureMembership Apply() method.
func (s *FeatureMembershipServer) applyFeatureMembership(ctx context.Context, c *gkehub.Client, request *gkehubpb.ApplyGkehubFeatureMembershipRequest) (*gkehubpb.GkehubFeatureMembership, error) {
p := ProtoToFeatureMembership(request.GetResource())
res, err := c.ApplyFeatureMembership(ctx, p)
if err != nil {
return nil, err
}
r := FeatureMembershipToProto(res)
return r, nil
}
// applyGkehubFeatureMembership handles the gRPC request by passing it to the underlying FeatureMembership Apply() method.
func (s *FeatureMembershipServer) ApplyGkehubFeatureMembership(ctx context.Context, request *gkehubpb.ApplyGkehubFeatureMembershipRequest) (*gkehubpb.GkehubFeatureMembership, error) {
cl, err := createConfigFeatureMembership(ctx, request.GetServiceAccountFile())
if err != nil {
return nil, err
}
return s.applyFeatureMembership(ctx, cl, request)
}
// DeleteFeatureMembership handles the gRPC request by passing it to the underlying FeatureMembership Delete() method.
func (s *FeatureMembershipServer) DeleteGkehubFeatureMembership(ctx context.Context, request *gkehubpb.DeleteGkehubFeatureMembershipRequest) (*emptypb.Empty, error) {
cl, err := createConfigFeatureMembership(ctx, request.GetServiceAccountFile())
if err != nil {
return nil, err
}
return &emptypb.Empty{}, cl.DeleteFeatureMembership(ctx, ProtoToFeatureMembership(request.GetResource()))
}
// ListGkehubFeatureMembership handles the gRPC request by passing it to the underlying FeatureMembershipList() method.
func (s *FeatureMembershipServer) ListGkehubFeatureMembership(ctx context.Context, request *gkehubpb.ListGkehubFeatureMembershipRequest) (*gkehubpb.ListGkehubFeatureMembershipResponse, error) {
cl, err := createConfigFeatureMembership(ctx, request.GetServiceAccountFile())
if err != nil {
return nil, err
}
resources, err := cl.ListFeatureMembership(ctx, request.GetProject(), request.GetLocation(), request.GetFeature())
if err != nil {
return nil, err
}
var protos []*gkehubpb.GkehubFeatureMembership
for _, r := range resources.Items {
rp := FeatureMembershipToProto(r)
protos = append(protos, rp)
}
p := &gkehubpb.ListGkehubFeatureMembershipResponse{}
p.SetItems(protos)
return p, nil
}
func createConfigFeatureMembership(ctx context.Context, service_account_file string) (*gkehub.Client, error) {
conf := dcl.NewConfig(dcl.WithUserAgent("dcl-test"), dcl.WithCredentialsFile(service_account_file))
return gkehub.NewClient(conf), nil
}