72.7. Kubernetes Deployments Producer の例
- listDeployments: kubernetes クラスター上のデプロイメントをリストします。
from("direct:list").
toF("kubernetes-deployments:///?kubernetesClient=#kubernetesClient&operation=listDeployments").
to("mock:result");
この操作により、クラスターからデプロイメントのリストが返されます。
- listDeploymentsByLabels: kubernetes クラスター上のデプロイメントをラベルごとにリストします。
from("direct:listByLabels").process(new Processor() {
@Override
public void process(Exchange exchange) throws Exception {
Map<String, String> labels = new HashMap<>();
labels.put("key1", "value1");
labels.put("key2", "value2");
exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_DEPLOYMENTS_LABELS, labels);
}
});
toF("kubernetes-deployments:///?kubernetesClient=#kubernetesClient&operation=listDeploymentsByLabels").
to("mock:result");
この操作により、ラベルセレクター (key1 と key2、値は value1 と value2) を使用して、クラスターからデプロイメントのリストを返します。
72.7.1. Kubernetes デプロイメントのコンシューマーの例 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
fromF("kubernetes-deployments://%s?oauthToken=%s&namespace=default&resourceName=test", host, authToken).process(new KubernertesProcessor()).to("mock:result");
public class KubernertesProcessor implements Processor {
@Override
public void process(Exchange exchange) throws Exception {
Message in = exchange.getIn();
Deployment dp = exchange.getIn().getBody(Deployment.class);
log.info("Got event with configmap name: " + dp.getMetadata().getName() + " and action " + in.getHeader(KubernetesConstants.KUBERNETES_EVENT_ACTION));
}
}
このコンシューマーは、デプロイメントテストのデフォルトの名前空間に関するイベントリストを返します。