😢

client-goのfake clientではServer side apply を扱えない

2021/08/01に公開

メモレベルの記事です。

2021/8/1現在、client-goのfake clientでServer side applyをしようとするとnodes "nodename" not foundもしくはPatchType is not supportedのエラーが返ってきます。

https://github.com/kubernetes/kubernetes/issues/99953

こちらのissueにある通り、現状ユーザー側で対応できることは

Return a better error that explains that apply testing using the fake client requires registering a reactor (see the example in #99462)

のみです。fakeclientにはPrependReactorというメソッドが生えており、これを用いて自分の目的に沿ったReactorを自分で追加することになります。

issueで参考として挙げられているのはこちらです↓

https://github.com/kubernetes/kubernetes/pull/99462/files#diff-8c3956cd937c24a4523e25764907178ac39e65885dbe8e5dc7552063933b98dbR173-R179

Discussion