ホームページ >バックエンド開発 >Golang >コントローラーはオブジェクトの変更を調整します

コントローラーはオブジェクトの変更を調整します

WBOY
WBOY転載
2024-02-10 14:15:091153ブラウズ

コントローラーはオブジェクトの変更を調整します

phpエディターのYuzaiがこの記事でコントローラー連携オブジェクトの変更に関する関連内容を紹介します。開発プロセス中、コントローラーは重要な役割を果たし、ユーザー要求を受信し、対応するビジネス ロジックをスケジュールする責任を負います。ただし、特定のニーズを満たすためにコントローラーの調整オブジェクトを変更する必要がある場合があります。この記事では、開発者がこの概念をよりよく理解して適用できるように、コントローラー調整オブジェクトを変更する方法を詳しく説明します。初心者でも経験豊富な開発者でも、この記事から役立つ知識とヒントを得ることができます。始めましょう!

質問の内容

オペレータ SDK を使用してシークレットの変更をリッスンしようとしています 問題は、オペレーターで定義したラベルを使用してシークレットを適用すると、調整イベントを受信しないことです

私は次のことを行いました

リーリー

オペレーターを実行して次のシークレットを適用しましたが、coordination が呼び出されません。何か考えはありますか?

mgr, err := ctrl.newmanager(ctrl.getconfigordie(), ctrl.options{
    scheme:                 scheme,
        …
    newcache: cache.builderwithoptions(cache.options{
        selectorsbyobject: cache.selectorsbyobject{
            &corev1.secret{}: {
                label: labels.selectorfromset(labels.set{"foo": "bar"}),
            },
        },
    }),

回避策

cache.options.selectorsbyobject フィールドを使用して、調整イベントをトリガーするタグを指定しているようです。ただし、このフィールドは、リコンシリエーション イベントをトリガーするタグではなく、キャッシュからオブジェクトを選択するために使用するタグを指定するために使用されます。

調整イベントをトリガーするタグを指定するには、次のように ctrl.watch 関数を使用できます:

リーリー

以上がコントローラーはオブジェクトの変更を調整しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。