minor changes to make linter happy

This commit is contained in:
Jakub Vavřík
2021-01-28 18:48:40 +01:00
parent ac4d934c86
commit a3dd604264
6 changed files with 19 additions and 5 deletions

View File

@@ -2,4 +2,5 @@
// +groupName="shoot-fleet-agent-service.extensions.config.gardener.cloud" // +groupName="shoot-fleet-agent-service.extensions.config.gardener.cloud"
//go:generate ../../../hack/update-codegen.sh //go:generate ../../../hack/update-codegen.sh
//Package config that holds config api
package config package config

View File

@@ -13,7 +13,9 @@ import (
) )
var ( var (
Codec runtime.Codec //codec used to encode
Codec runtime.Codec
//scheme to register
Scheme *runtime.Scheme Scheme *runtime.Scheme
) )

View File

@@ -102,6 +102,7 @@ func ControllerSwitches() *cmd.SwitchOptions {
) )
} }
// ApplyHealthCheckConfig applies healthcheck config
func (c *FleetServiceConfig) ApplyHealthCheckConfig(config *healthcheckconfig.HealthCheckConfig) { func (c *FleetServiceConfig) ApplyHealthCheckConfig(config *healthcheckconfig.HealthCheckConfig) {
if c.config.HealthCheckConfig != nil { if c.config.HealthCheckConfig != nil {
*config = *c.config.HealthCheckConfig *config = *c.config.HealthCheckConfig

View File

@@ -42,7 +42,11 @@ import (
// ActuatorName is the name of the Fleet agent actuator. // ActuatorName is the name of the Fleet agent actuator.
const ActuatorName = "shoot-fleet-agent-actuator" const ActuatorName = "shoot-fleet-agent-actuator"
// KubeconfigSecretName name of secret that holds kubeconfig for Shoot
const KubeconfigSecretName = "kubecfg" const KubeconfigSecretName = "kubecfg"
// KubeconfigKey key in KubeconfigSecretName secret that holds kubeconfig for Shoot
const KubeconfigKey = "kubeconfig" const KubeconfigKey = "kubeconfig"
// NewActuator returns an actuator responsible for Extension resources. // NewActuator returns an actuator responsible for Extension resources.
@@ -93,7 +97,7 @@ func (a *actuator) Reconcile(ctx context.Context, ex *extensionsv1alpha1.Extensi
} }
} }
a.registerClusterInFleetManager(ctx, namespace, cluster) a.RegisterClusterInFleetManager(ctx, namespace, cluster)
return a.updateStatus(ctx, ex) return a.updateStatus(ctx, ex)
} }
@@ -135,14 +139,13 @@ func (a *actuator) InjectScheme(scheme *runtime.Scheme) error {
return nil return nil
} }
func (a *actuator) registerClusterInFleetManager(ctx context.Context, namespace string, cluster *extensions.Cluster) { // RegisterClusterInFleetManager registers cluster in remote fleet manager
func (a *actuator) RegisterClusterInFleetManager(ctx context.Context, namespace string, cluster *extensions.Cluster) {
a.logger.Info("Starting with already registered check") a.logger.Info("Starting with already registered check")
registered, err := a.fleetManager.GetCluster(ctx, cluster.Shoot.Name) registered, err := a.fleetManager.GetCluster(ctx, cluster.Shoot.Name)
if !errors.IsNotFound(err) { if !errors.IsNotFound(err) {
a.logger.Info("Cluster already registered - skipping registration", "clientId", registered.Spec.ClientID) a.logger.Info("Cluster already registered - skipping registration", "clientId", registered.Spec.ClientID)
return return
} else {
a.logger.Info("Cluster registration not found.")
} }
a.logger.Info("Starting cluster registration process") a.logger.Info("Starting cluster registration process")
secret := &corev1.Secret{} secret := &corev1.Secret{}

View File

@@ -2,6 +2,7 @@ package config
import "github.com/javamachr/gardener-extension-shoot-fleet-agent/pkg/apis/config" import "github.com/javamachr/gardener-extension-shoot-fleet-agent/pkg/apis/config"
//Holds controller config
type Config struct { type Config struct {
config.FleetAgentConfig config.FleetAgentConfig
} }

View File

@@ -10,12 +10,14 @@ import (
"k8s.io/client-go/rest" "k8s.io/client-go/rest"
) )
//FleetManager serves as main communication point with external Fleet Manager
type FleetManager struct { type FleetManager struct {
secretClient kubernetes.Clientset secretClient kubernetes.Clientset
fleetClient clientset.Interface fleetClient clientset.Interface
namespace string namespace string
} }
//Constructs new manager with given config operating in given namespace
func NewManagerForConfig(c *rest.Config, namespace string) (*FleetManager, error) { func NewManagerForConfig(c *rest.Config, namespace string) (*FleetManager, error) {
secretClient, err := kubernetes.NewForConfig(c) secretClient, err := kubernetes.NewForConfig(c)
if err != nil { if err != nil {
@@ -34,18 +36,22 @@ func NewManagerForConfig(c *rest.Config, namespace string) (*FleetManager, error
}, nil }, nil
} }
//registers a cluster in remote fleet
func (f *FleetManager) CreateCluster(ctx context.Context, cluster *v1alpha1.Cluster) (*v1alpha1.Cluster, error) { func (f *FleetManager) CreateCluster(ctx context.Context, cluster *v1alpha1.Cluster) (*v1alpha1.Cluster, error) {
return f.fleetClient.FleetV1alpha1().Clusters(f.namespace).Create(ctx, cluster, metav1.CreateOptions{}) return f.fleetClient.FleetV1alpha1().Clusters(f.namespace).Create(ctx, cluster, metav1.CreateOptions{})
} }
//updates a cluster registration in remote fleet
func (f *FleetManager) UpdateCluster(ctx context.Context, cluster *v1alpha1.Cluster) (*v1alpha1.Cluster, error) { func (f *FleetManager) UpdateCluster(ctx context.Context, cluster *v1alpha1.Cluster) (*v1alpha1.Cluster, error) {
return f.fleetClient.FleetV1alpha1().Clusters(f.namespace).Update(ctx, cluster, metav1.UpdateOptions{}) return f.fleetClient.FleetV1alpha1().Clusters(f.namespace).Update(ctx, cluster, metav1.UpdateOptions{})
} }
//gets a cluster registration from remote fleet
func (f *FleetManager) GetCluster(ctx context.Context, clusterName string) (*v1alpha1.Cluster, error) { func (f *FleetManager) GetCluster(ctx context.Context, clusterName string) (*v1alpha1.Cluster, error) {
return f.fleetClient.FleetV1alpha1().Clusters(f.namespace).Get(ctx, clusterName, metav1.GetOptions{}) return f.fleetClient.FleetV1alpha1().Clusters(f.namespace).Get(ctx, clusterName, metav1.GetOptions{})
} }
//registers a clusters kubeconfig secret in remote fleet
func (f *FleetManager) CreateKubeconfigSecret(ctx context.Context, secret *corev1.Secret) (*corev1.Secret, error) { func (f *FleetManager) CreateKubeconfigSecret(ctx context.Context, secret *corev1.Secret) (*corev1.Secret, error) {
return f.secretClient.CoreV1().Secrets(f.namespace).Create(ctx, secret, metav1.CreateOptions{}) return f.secretClient.CoreV1().Secrets(f.namespace).Create(ctx, secret, metav1.CreateOptions{})
} }