Skip to content

Commit

Permalink
MGMT-17353: Debug pod left in ImagePullBackOff after install in disco…
Browse files Browse the repository at this point in the history
…nnected environment (#6539)

Fot day2 hosts the functionality is removed since we don't want to
enable it for kube-api

Revert "MGMT-15902: Trigger reboots for node event when day2 node moves to done (#5648)"

This reverts commit 652202c.

Co-authored-by: Ori Amizur <oamizur@redhat.com>
  • Loading branch information
openshift-cherrypick-robot and ori-amizur committed Jul 8, 2024
1 parent e12c533 commit ca619df
Show file tree
Hide file tree
Showing 6 changed files with 5 additions and 202 deletions.
1 change: 0 additions & 1 deletion cmd/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -603,7 +603,6 @@ func main() {
ApproveCsrsRequeueDuration: Options.ApproveCsrsRequeueDuration,
AgentContainerImage: Options.BMConfig.AgentDockerImg,
HostFSMountDir: hostFSMountDir,
EventSender: eventsHandler,
}).SetupWithManager(ctrlMgr), "unable to create controller Agent")

failOnError((&controllers.BMACReconciler{
Expand Down
4 changes: 2 additions & 2 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ require (
github.com/danielerez/go-dns-client v0.0.0-20200630114514-0b60d1703f0b
github.com/dustin/go-humanize v1.0.1
github.com/filanov/stateswitch v1.0.1-0.20221122134945-bfa198e3a83a
github.com/go-errors/errors v1.4.2
github.com/go-gormigrate/gormigrate/v2 v2.0.1
github.com/go-logr/logr v1.2.4
github.com/go-openapi/errors v0.20.3
Expand Down Expand Up @@ -100,6 +99,7 @@ require (
github.com/emicklei/go-restful/v3 v3.11.0 // indirect
github.com/evanphx/json-patch/v5 v5.6.0 // indirect
github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d // indirect
github.com/go-errors/errors v1.4.2 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
github.com/go-sql-driver/mysql v1.7.0 // indirect
github.com/google/btree v1.0.1 // indirect
Expand Down Expand Up @@ -230,7 +230,7 @@ require (
go.uber.org/atomic v1.11.0 // indirect
go.uber.org/multierr v1.11.0 // indirect
go.uber.org/zap v1.24.0 // indirect
golang.org/x/net v0.24.0
golang.org/x/net v0.24.0 // indirect
golang.org/x/oauth2 v0.12.0 // indirect
golang.org/x/term v0.19.0 // indirect
golang.org/x/text v0.14.0 // indirect
Expand Down
32 changes: 0 additions & 32 deletions internal/controller/controllers/agent_controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,11 +35,8 @@ import (
aiv1beta1 "github.com/openshift/assisted-service/api/v1beta1"
"github.com/openshift/assisted-service/internal/bminventory"
"github.com/openshift/assisted-service/internal/common"
"github.com/openshift/assisted-service/internal/common/events"
eventsapi "github.com/openshift/assisted-service/internal/events/api"
"github.com/openshift/assisted-service/internal/gencrypto"
"github.com/openshift/assisted-service/internal/host"
"github.com/openshift/assisted-service/internal/oc"
"github.com/openshift/assisted-service/internal/spoke_k8s_client"
"github.com/openshift/assisted-service/models"
"github.com/openshift/assisted-service/pkg/auth"
Expand Down Expand Up @@ -93,7 +90,6 @@ type AgentReconciler struct {
AgentContainerImage string
HostFSMountDir string
reclaimer *agentReclaimer
EventSender eventsapi.Sender
}

// +kubebuilder:rbac:groups=agent-install.openshift.io,resources=agents,verbs=get;list;watch;create;update;patch;delete
Expand Down Expand Up @@ -489,31 +485,6 @@ func (r *AgentReconciler) spokeKubeClient(ctx context.Context, clusterRef *aiv1b
return r.SpokeK8sClientFactory.CreateFromSecret(secret)
}

func (r *AgentReconciler) notifyNumberOfReboots(ctx context.Context, h *models.Host, node *corev1.Node, clusterRef *aiv1beta1.ClusterReference) error {
if !isNodeReady(node) {
return nil
}
secret, err := spokeKubeconfigSecret(ctx, r.Log, r.Client, r.APIReader, clusterRef)
if err != nil {
r.Log.WithError(err).Errorf("failed to get spoke secret for cluster %s/%s", clusterRef.Namespace, clusterRef.Name)
return err
}
kubeconfig, err := spoke_k8s_client.KubeconfigFromSecret(secret)
if err != nil {
r.Log.WithError(err).Errorf("failed to get kubeconfig from secret for cluster %s/%s", clusterRef.Namespace, clusterRef.Name)
return err
}
dbg := oc.NewDebug(kubeconfig)
reboots, err := dbg.RebootsForNode(node.Name)
if err != nil {
r.Log.WithError(err).Errorf("failed to get number of reboots for node %s, cluster %s/%s", node.Name,
clusterRef.Namespace, clusterRef.Name)
return err
}
events.SendRebootsForNodeEvent(ctx, r.EventSender, *h.ID, node.Name, h.InfraEnvID, h.ClusterID, int64(reboots))
return nil
}

// Attempt to approve CSRs for agent. If already approved then the node will be marked as done
// requeue means that approval will be attempted again
func (r *AgentReconciler) tryApproveDay2CSRs(ctx context.Context, agent *aiv1beta1.Agent, node *corev1.Node, client spoke_k8s_client.SpokeK8sClient) {
Expand Down Expand Up @@ -817,9 +788,6 @@ func (r *AgentReconciler) updateStatus(ctx context.Context, log logrus.FieldLogg
log.WithError(err).Errorf("Failed to apply labels for day2 node %s/%s", agent.Namespace, agent.Name)
return ctrl.Result{RequeueAfter: defaultRequeueAfterOnError}, err
}
if err = r.notifyNumberOfReboots(ctx, h, node, agent.Spec.ClusterDeploymentName); err != nil {
log.WithError(err).Errorf("Failed to notify number of reboots for day2 node %s/%s", agent.Namespace, agent.Name)
}
if err = r.UpdateDay2InstallPogress(ctx, h, agent, node); err != nil {
return ctrl.Result{RequeueAfter: defaultRequeueAfterOnError}, err
}
Expand Down
96 changes: 0 additions & 96 deletions internal/oc/debug.go

This file was deleted.

68 changes: 0 additions & 68 deletions internal/oc/debug_test.go

This file was deleted.

6 changes: 3 additions & 3 deletions internal/spoke_k8s_client/factory.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ func (cf *spokeK8sClientFactory) CreateFromRawKubeconfig(kubeconfig []byte) (Spo
}

func (cf *spokeK8sClientFactory) CreateFromSecret(secret *corev1.Secret) (SpokeK8sClient, error) {
kubeconfigData, err := KubeconfigFromSecret(secret)
kubeconfigData, err := kubeconfigFromSecret(secret)
if err != nil {
return nil, err
}
Expand All @@ -66,7 +66,7 @@ func (cf *spokeK8sClientFactory) CreateFromStorageKubeconfig(ctx context.Context
}

func (cf *spokeK8sClientFactory) ClientAndSetFromSecret(secret *corev1.Secret) (SpokeK8sClient, *kubernetes.Clientset, error) {
kubeconfig, err := KubeconfigFromSecret(secret)
kubeconfig, err := kubeconfigFromSecret(secret)
if err != nil {
cf.log.WithError(err).Error("failed to get kubeconfig from secret")
return nil, nil, err
Expand All @@ -75,7 +75,7 @@ func (cf *spokeK8sClientFactory) ClientAndSetFromSecret(secret *corev1.Secret) (
return cf.clientAndSetForKubeconfig(kubeconfig)
}

func KubeconfigFromSecret(secret *corev1.Secret) ([]byte, error) {
func kubeconfigFromSecret(secret *corev1.Secret) ([]byte, error) {
if secret.Data == nil {
return nil, errors.Errorf("Secret %s/%s does not contain any data", secret.Namespace, secret.Name)
}
Expand Down

0 comments on commit ca619df

Please sign in to comment.