feature: enhance error message on not having bound the apiexport yet

Open
#112 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
45/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
go, kubernetes

Research direction

Start at the syncagent startup path that produces the client-go reflector error shown in the issue, then trace how a missing APIBinding is surfaced. Done means that an absent APIBinding yields a clear hint about the kcp workspaces while preserving the existing synchronization behavior; the payload names no repository file or test.

Written by the indexing model from the issue text.

Description

good first issue kind/feature
Feature Description

The scenario

  • kcp is setup properly in a k8s cluster with proper workspaces
  • a provider cluster exists with syncagent installed and proper publishedresource, rbac, ...

On starting the syncagent I get this error message

E1024 05:55:57.471055 1 reflector.go:158] "Unhandled Error" err="k8s.io/client-go@v0.31.6/tools/cache/reflector.go:243: Failed to watch myorg.com/v1, Kind=MyService: failed to list myorg.com/v1, Kind=MyService: the server could not find the requested resource" logger="UnhandledError"

The reason for this is not in the provider cluster, everyting is fine. The problem is that no APIBinding exist in kcp yet. After ignoring the error message and creating the APIBindings in the provider and consumer workspaces everything worked fine.

Proposed Solution

For avoiding long debugging sessions to find the issue in the provider cluster it would be great to have a hint in the error message that the CRD cannot be read in the kcp workspaces (which will exist after the APIBindings are created).

Alternative Solutions

No response

Want to contribute?
  • I would like to work on this issue.
Additional Context

No response

Dominant language
Go
Stars
25
Forks
30
Avg merge
3d 9h
Merged PRs (30d)
2

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from kcp-dev/api-syncagent

All issues in kcp-dev/api-syncagent

Similar issues

More Go issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.