Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Record machine sync error event #880

Conversation

vikaschoudhary16
Copy link
Contributor

Any errors encountered while reconciling machines should be reported as events at the machineset controller object.

What this PR does / why we need it:
Fixes the recording of machine sync errors. Currently if machineset faces any error which reconciling machines, this error will not be reported at machineset object.

This PR fixes above issue.

Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1696407

Special notes for your reviewer:

Please confirm that if this PR changes any image versions, then that's the sole change this PR makes.

Release note:


@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Apr 8, 2019
@k8s-ci-robot k8s-ci-robot requested review from justinsb and krousey April 8, 2019 09:20
@detiber
Copy link
Member

detiber commented Apr 8, 2019

/lgtm
/assign @vincepri

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Apr 8, 2019
@@ -251,6 +251,10 @@ func (r *ReconcileMachineSet) reconcile(ctx context.Context, machineSet *cluster
return reconcile.Result{}, errors.Wrap(err, "failed to update machine set status")
}

if syncErr != nil {
return reconcile.Result{}, errors.Wrapf(syncErr, "failed to sync machines")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Any reason we shouldn't check the error just after the call to syncReplicas?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@vincepri so that machineset status status could get updated and along with error message in the events, user could have latest stats.

pkg/controller/machineset/controller.go Outdated Show resolved Hide resolved
@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Apr 9, 2019
@vikaschoudhary16 vikaschoudhary16 force-pushed the upstream-record-syncerr branch from 417751a to 7123307 Compare April 9, 2019 10:20
Copy link
Member

@vincepri vincepri left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/approve
/assign @detiber

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: vikaschoudhary16, vincepri

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Apr 9, 2019
@detiber
Copy link
Member

detiber commented Apr 9, 2019

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Apr 9, 2019
@k8s-ci-robot k8s-ci-robot merged commit d6418fc into kubernetes-sigs:master Apr 9, 2019
@vikaschoudhary16 vikaschoudhary16 deleted the upstream-record-syncerr branch April 10, 2019 09:19
detiber pushed a commit to detiber/cluster-api that referenced this pull request May 2, 2019
k8s-ci-robot pushed a commit that referenced this pull request May 2, 2019
* Update CRDs (#863)

Generated with `make generate`

* fix various shell bugs (#868)

* fix errors in scripts/ci-build.gitsh

* fix errors in scripts/ci-integration.sh

* fix errors in scripts/ci-is-vendor-in-sync.sh

* fix errors in scripts/ci-make.sh

* fix errors in scripts/ci-test.sh

* removed unused variables from scripts/fetch_ext_bins.sh

* fix errors in hack/update-bazel.sh

* fix errors in hack/verify_clientset.sh

* use gnu sed on all platforms (#867)

* Fix error message in getCluster (#871)

Previously it was showing 'Machine foo in namespace "cluster.k8s.io/cluster-name" doesn't specify "k8s-machine-api"  label, assuming nil cluster'

* minikube: use --profile instead of --p (#875)

It was reported that "minikube start" fails:
  minikube start --bootstrapper=kubeadm --p=clusterapi
  Error: unknown flag: --p

From "minikube start --help":
  -p, --profile string

Use --profile in minikube.go as --p does not work.
The alternative is -p.

* nit: fix log to replace Creating with Preparing (#872)

saw this log with following flag
--bootstrap-cluster-kubeconfig /root/.kube/config

I0403 17:32:28.339021   31615 createbootstrapcluster.go:27] Creating bootstrap cluster

actually we are reusing ,not creating

* Record machine sync error event (#880)

* make clusterapi wait timeout configurable (#865)

add an environment to make timeout configurable
for timeoutMachineReady

* Update klog to 0.3.0 release (#890)

Signed-off-by: Vince Prignano <[email protected]>

* Add missing namespace to Get function (#896)

* Add NodeName to Machine's additionalPrinterColumns (#895)

Because it is useful to cross-reference between Machines and Nodes.

Set priority to >0 so that node names will only be displayed in `-o wide` because the names are often quite long.

* additionalPrinterColumns for Machine, added correctly. (#897)

Co-authored-by: Danny Berger <[email protected]>

* Normalize clusterctl options to underscores (#899)

Matches current conventions and implementation of kubectl.
This change does not include warning messages when using the previous,
underscore option names, but it does recognize those names.

Co-authored-by: Leah Hanson <[email protected]>

* Update manager-role ClusterRole (#901)

* Update Go 1.12 (#898)

* Update Go 1.12

Signed-off-by: Vince Prignano <[email protected]>

* update

Signed-off-by: Vince Prignano <[email protected]>

* Update OWNERS_ALIASES and SECURITY_CONTACTS (#884)

* Update OWNERS_ALIASES and SECURITY_CONTACTS

* Add davidewatson to cluster-api-admins

* Clarify log message for machine-controller isDeleteAllowed (#905)

Users have noted that this log message is confusing and
does not lead to a clear path forward when deleting this
machine.

This commit makes it clear that the machine will not be
deleted.

* Clarify MachineDeployment watchers' comments (#887)

Signed-off-by: Vince Prignano <[email protected]>

* Simplify util.ParseMachinesYaml (#909)

Signed-off-by: Vince Prignano <[email protected]>

* Add support for passing namespace cmdline flag to the manager (#914)

* Bump kubectl version to v1.13.2 in ci (#923)

kubectl v1.10.2 does not compatible with cluster v1.14.x anymore

Signed-off-by: Hui Luo <[email protected]>

* Add /status to MachineSet and MachineDeployment kubebuilder directives (#922)

Signed-off-by: Vince Prignano <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants