本文整理汇总了Golang中github.com/kubernetes/dashboard/src/app/backend/resource/common.NewSameNamespaceQuery函数的典型用法代码示例。如果您正苦于以下问题:Golang NewSameNamespaceQuery函数的具体用法?Golang NewSameNamespaceQuery怎么用?Golang NewSameNamespaceQuery使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了NewSameNamespaceQuery函数的18个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: GetPodsEvents
// GetPodsEvents gets pods events associated to resource targeted by given resource selector.
func GetPodsEvents(client client.Interface, namespace string, resourceSelector map[string]string) (
[]api.Event, error) {
channels := &common.ResourceChannels{
PodList: common.GetPodListChannelWithOptions(
client,
common.NewSameNamespaceQuery(namespace),
api.ListOptions{
LabelSelector: labels.SelectorFromSet(resourceSelector),
FieldSelector: fields.Everything(),
},
1),
EventList: common.GetEventListChannel(client, common.NewSameNamespaceQuery(namespace), 1),
}
podList := <-channels.PodList.List
if err := <-channels.PodList.Error; err != nil {
return nil, err
}
eventList := <-channels.EventList.List
if err := <-channels.EventList.Error; err != nil {
return nil, err
}
events := filterEventsByPodsUID(eventList.Items, podList.Items)
return events, nil
}
开发者ID:kubernetes,项目名称:dashboard,代码行数:30,代码来源:eventcommon.go
示例2: GetDeploymentOldReplicaSets
// GetDeploymentEvents returns model events for a deployment with the given name in the given
// namespace
func GetDeploymentOldReplicaSets(client client.Interface, dsQuery *dataselect.DataSelectQuery,
namespace string, deploymentName string) (*replicasetlist.ReplicaSetList, error) {
deployment, err := client.Extensions().Deployments(namespace).Get(deploymentName)
if err != nil {
return nil, err
}
selector, err := unversioned.LabelSelectorAsSelector(deployment.Spec.Selector)
if err != nil {
return nil, err
}
options := api.ListOptions{LabelSelector: selector}
channels := &common.ResourceChannels{
ReplicaSetList: common.GetReplicaSetListChannelWithOptions(client,
common.NewSameNamespaceQuery(namespace), options, 1),
PodList: common.GetPodListChannelWithOptions(client,
common.NewSameNamespaceQuery(namespace), options, 1),
EventList: common.GetEventListChannelWithOptions(client,
common.NewSameNamespaceQuery(namespace), options, 1),
}
rawRs := <-channels.ReplicaSetList.List
if err := <-channels.ReplicaSetList.Error; err != nil {
return nil, err
}
rawPods := <-channels.PodList.List
if err := <-channels.PodList.Error; err != nil {
return nil, err
}
rawEvents := <-channels.EventList.List
if err := <-channels.EventList.Error; err != nil {
return nil, err
}
rawRepSets := make([]*extensions.ReplicaSet, 0)
for i := range rawRs.Items {
rawRepSets = append(rawRepSets, &rawRs.Items[i])
}
oldRs, _, err := deploymentutil.FindOldReplicaSets(deployment, rawRepSets, rawPods)
if err != nil {
return nil, err
}
oldReplicaSets := make([]extensions.ReplicaSet, len(oldRs))
for i, replicaSet := range oldRs {
oldReplicaSets[i] = *replicaSet
}
oldReplicaSetList := replicasetlist.CreateReplicaSetList(oldReplicaSets, rawPods.Items, rawEvents.Items,
dsQuery, nil)
return oldReplicaSetList, nil
}
开发者ID:kubernetes,项目名称:dashboard,代码行数:55,代码来源:deploymentoldreplicasets.go
示例3: GetDeploymentPods
// getJobPods returns list of pods targeting deployment.
func GetDeploymentPods(client client.Interface, heapsterClient heapster.HeapsterClient,
dsQuery *dataselect.DataSelectQuery, namespace string, deploymentName string) (*pod.PodList, error) {
deployment, err := client.Extensions().Deployments(namespace).Get(deploymentName)
if err != nil {
return nil, err
}
selector, err := unversioned.LabelSelectorAsSelector(deployment.Spec.Selector)
if err != nil {
return nil, err
}
options := api.ListOptions{LabelSelector: selector}
channels := &common.ResourceChannels{
PodList: common.GetPodListChannelWithOptions(client,
common.NewSameNamespaceQuery(namespace), options, 1),
}
rawPods := <-channels.PodList.List
if err := <-channels.PodList.Error; err != nil {
return nil, err
}
pods := common.FilterNamespacedPodsBySelector(rawPods.Items, deployment.ObjectMeta.Namespace,
deployment.Spec.Selector.MatchLabels)
podList := pod.CreatePodList(pods, []api.Event{}, dsQuery, heapsterClient)
return &podList, nil
}
开发者ID:kubernetes,项目名称:dashboard,代码行数:31,代码来源:deploymentpods.go
示例4: GetEvents
// GetEvents gets events associated to resource with given name.
func GetEvents(client client.Interface, namespace, resourceName string) ([]api.Event, error) {
fieldSelector, err := fields.ParseSelector("involvedObject.name=" + resourceName)
if err != nil {
return nil, err
}
channels := &common.ResourceChannels{
EventList: common.GetEventListChannelWithOptions(
client,
common.NewSameNamespaceQuery(namespace),
api.ListOptions{
LabelSelector: labels.Everything(),
FieldSelector: fieldSelector,
},
1),
}
eventList := <-channels.EventList.List
if err := <-channels.EventList.Error; err != nil {
return nil, err
}
return eventList.Items, nil
}
开发者ID:kubernetes,项目名称:dashboard,代码行数:27,代码来源:eventcommon.go
示例5: GetServicePods
// GetServicePods gets list of pods targeted by given label selector in given namespace.
func GetServicePods(client k8sClient.Interface, heapsterClient client.HeapsterClient, namespace,
name string, dsQuery *dataselect.DataSelectQuery) (*pod.PodList, error) {
service, err := client.Core().Services(namespace).Get(name)
if err != nil {
return nil, err
}
labelSelector := labels.SelectorFromSet(service.Spec.Selector)
channels := &common.ResourceChannels{
PodList: common.GetPodListChannelWithOptions(client,
common.NewSameNamespaceQuery(namespace),
api.ListOptions{
LabelSelector: labelSelector,
FieldSelector: fields.Everything(),
},
1),
}
apiPodList := <-channels.PodList.List
if err := <-channels.PodList.Error; err != nil {
return nil, err
}
podList := pod.CreatePodList(apiPodList.Items, dsQuery, heapsterClient)
return &podList, nil
}
开发者ID:bryk,项目名称:dashboard,代码行数:28,代码来源:servicedetail.go
示例6: GetPodDetail
// GetPodDetail returns the details (PodDetail) of a named Pod from a particular
// namespace.
func GetPodDetail(client k8sClient.Interface, heapsterClient client.HeapsterClient,
namespace, name string) (*PodDetail, error) {
log.Printf("Getting details of %s pod in %s namespace", name, namespace)
channels := &common.ResourceChannels{
ConfigMapList: common.GetConfigMapListChannel(client, common.NewSameNamespaceQuery(namespace), 1),
PodMetrics: common.GetPodMetricsChannel(heapsterClient, name, namespace),
}
pod, err := client.Pods(namespace).Get(name)
if err != nil {
return nil, err
}
// Download metrics
_, metricPromises := dataselect.GenericDataSelectWithMetrics(toCells([]api.Pod{*pod}),
dataselect.StdMetricsDataSelect, dataselect.NoResourceCache, &heapsterClient)
metrics, _ := metricPromises.GetMetrics()
if err = <-channels.ConfigMapList.Error; err != nil {
return nil, err
}
configMapList := <-channels.ConfigMapList.List
podDetail := toPodDetail(pod, metrics, configMapList)
return &podDetail, nil
}
开发者ID:digitalfishpond,项目名称:dashboard,代码行数:31,代码来源:poddetail.go
示例7: GetDeploymentEvents
// GetDeploymentEvents returns model events for a deployment with the given name in the given
// namespace
func GetDeploymentEvents(client client.Interface, dsQuery *dataselect.DataSelectQuery, namespace string, deploymentName string) (
*common.EventList, error) {
deployment, err := client.Extensions().Deployments(namespace).Get(deploymentName)
if err != nil {
return nil, err
}
selector, err := unversioned.LabelSelectorAsSelector(deployment.Spec.Selector)
if err != nil {
return nil, err
}
options := api.ListOptions{LabelSelector: selector}
channels := &common.ResourceChannels{
EventList: common.GetEventListChannelWithOptions(client,
common.NewSameNamespaceQuery(namespace), options, 1),
}
eventRaw := <-channels.EventList.List
if err := <-channels.EventList.Error; err != nil {
return nil, err
}
dpEvents := eventRaw.Items
if !event.IsTypeFilled(dpEvents) {
dpEvents = event.FillEventsType(dpEvents)
}
eventList := event.CreateEventList(dpEvents, dsQuery)
return &eventList, nil
}
开发者ID:digitalfishpond,项目名称:dashboard,代码行数:34,代码来源:deploymentevents.go
示例8: GetPodDetail
// GetPodDetail returns the details (PodDetail) of a named Pod from a particular
// namespace.
func GetPodDetail(client k8sClient.Interface, heapsterClient client.HeapsterClient,
namespace, name string) (*PodDetail, error) {
log.Printf("Getting details of %s pod in %s namespace", name, namespace)
channels := &common.ResourceChannels{
ConfigMapList: common.GetConfigMapListChannel(client, common.NewSameNamespaceQuery(namespace), 1),
PodMetrics: common.GetPodMetricsChannel(heapsterClient, name, namespace),
}
pod, err := client.Core().Pods(namespace).Get(name)
if err != nil {
return nil, err
}
controller := Controller{
Kind: "unknown",
}
creatorAnnotation, found := pod.ObjectMeta.Annotations[api.CreatedByAnnotation]
if found {
creatorRef, err := getPodCreator(client, creatorAnnotation, common.NewSameNamespaceQuery(namespace), heapsterClient)
if err != nil {
return nil, err
}
controller = *creatorRef
}
// Download metrics
_, metricPromises := dataselect.GenericDataSelectWithMetrics(toCells([]api.Pod{*pod}),
dataselect.StdMetricsDataSelect, dataselect.NoResourceCache, &heapsterClient)
metrics, _ := metricPromises.GetMetrics()
if err = <-channels.ConfigMapList.Error; err != nil {
return nil, err
}
configMapList := <-channels.ConfigMapList.List
podDetail := toPodDetail(pod, metrics, configMapList, controller)
return &podDetail, nil
}
开发者ID:floreks,项目名称:dashboard,代码行数:43,代码来源:poddetail.go
示例9: getJobPodInfo
// Returns simple info about pods(running, desired, failing, etc.) related to given job.
func getJobPodInfo(client k8sClient.Interface, job *batch.Job) (*common.PodInfo, error) {
labelSelector := labels.SelectorFromSet(job.Spec.Selector.MatchLabels)
channels := &common.ResourceChannels{
PodList: common.GetPodListChannelWithOptions(client, common.NewSameNamespaceQuery(
job.Namespace),
api.ListOptions{
LabelSelector: labelSelector,
FieldSelector: fields.Everything(),
}, 1),
}
pods := <-channels.PodList.List
if err := <-channels.PodList.Error; err != nil {
return nil, err
}
podInfo := common.GetPodInfo(job.Status.Active, *job.Spec.Completions, pods.Items)
return &podInfo, nil
}
开发者ID:bryk,项目名称:dashboard,代码行数:20,代码来源:jobpods.go
示例10: GetHorizontalPodAutoscalerListForResource
func GetHorizontalPodAutoscalerListForResource(client k8sClient.Interface, namespace, kind, name string) (*HorizontalPodAutoscalerList, error) {
nsQuery := common.NewSameNamespaceQuery(namespace)
channel := common.GetHorizontalPodAutoscalerListChannel(client, nsQuery, 1)
hpaList := <-channel.List
if err := <-channel.Error; err != nil {
return nil, err
}
filteredHpaList := make([]autoscaling.HorizontalPodAutoscaler, 0)
for _, hpa := range hpaList.Items {
if hpa.Spec.ScaleTargetRef.Kind == kind && hpa.Spec.ScaleTargetRef.Name == name {
filteredHpaList = append(filteredHpaList, hpa)
}
}
return createHorizontalPodAutoscalerList(filteredHpaList), nil
}
开发者ID:kubernetes,项目名称:dashboard,代码行数:19,代码来源:horizontalpodautoscalerlist.go
示例11: getReplicationControllerPodInfo
// Returns simple info about pods(running, desired, failing, etc.) related to given replication
// controller.
func getReplicationControllerPodInfo(client k8sClient.Interface, rc *api.ReplicationController,
namespace string) (*common.PodInfo, error) {
labelSelector := labels.SelectorFromSet(rc.Spec.Selector)
channels := &common.ResourceChannels{
PodList: common.GetPodListChannelWithOptions(client, common.NewSameNamespaceQuery(namespace),
api.ListOptions{
LabelSelector: labelSelector,
FieldSelector: fields.Everything(),
}, 1),
}
pods := <-channels.PodList.List
if err := <-channels.PodList.Error; err != nil {
return nil, err
}
podInfo := common.GetPodInfo(rc.Status.Replicas, rc.Spec.Replicas, pods.Items)
return &podInfo, nil
}
开发者ID:bryk,项目名称:dashboard,代码行数:22,代码来源:replicationcontrollerpods.go
示例12: getRawStatefulSetPods
// Returns array of api pods targeting pet set with given name.
func getRawStatefulSetPods(client *k8sClient.Clientset, statefulSetName, namespace string) (
[]api.Pod, error) {
statefulSet, err := client.Apps().StatefulSets(namespace).Get(statefulSetName)
if err != nil {
return nil, err
}
channels := &common.ResourceChannels{
PodList: common.GetPodListChannel(client, common.NewSameNamespaceQuery(namespace), 1),
}
podList := <-channels.PodList.List
if err := <-channels.PodList.Error; err != nil {
return nil, err
}
matchingPods := common.FilterNamespacedPodsByLabelSelector(podList.Items,
statefulSet.ObjectMeta.Namespace, statefulSet.Spec.Selector)
return matchingPods, nil
}
开发者ID:kubernetes,项目名称:dashboard,代码行数:22,代码来源:statefulsetpods.go
示例13: getRawDaemonSetPods
// Returns array of api pods targeting daemon set with given name.
func getRawDaemonSetPods(client k8sClient.Interface, daemonSetName, namespace string) (
[]api.Pod, error) {
daemonSet, err := client.Extensions().DaemonSets(namespace).Get(daemonSetName)
if err != nil {
return nil, err
}
channels := &common.ResourceChannels{
PodList: common.GetPodListChannel(client, common.NewSameNamespaceQuery(namespace), 1),
}
podList := <-channels.PodList.List
if err := <-channels.PodList.Error; err != nil {
return nil, err
}
matchingPods := common.FilterNamespacedPodsByLabelSelector(podList.Items,
daemonSet.ObjectMeta.Namespace, daemonSet.Spec.Selector)
return matchingPods, nil
}
开发者ID:kubernetes,项目名称:dashboard,代码行数:22,代码来源:daemonsetpods.go
示例14: GetDaemonSetServices
// GetDaemonSetServices returns list of services that are related to daemon set targeted by given
// name.
func GetDaemonSetServices(client client.Interface, dsQuery *dataselect.DataSelectQuery,
namespace, name string) (*service.ServiceList, error) {
daemonSet, err := client.Extensions().DaemonSets(namespace).Get(name)
if err != nil {
return nil, err
}
channels := &common.ResourceChannels{
ServiceList: common.GetServiceListChannel(client, common.NewSameNamespaceQuery(namespace),
1),
}
services := <-channels.ServiceList.List
if err := <-channels.ServiceList.Error; err != nil {
return nil, err
}
matchingServices := common.FilterNamespacedServicesBySelector(services.Items, namespace,
daemonSet.Spec.Selector.MatchLabels)
return service.CreateServiceList(matchingServices, dsQuery), nil
}
开发者ID:digitalfishpond,项目名称:dashboard,代码行数:24,代码来源:daemonsetservices.go
示例15: GetReplicationControllerServices
// GetReplicationControllerServices returns list of services that are related to replication
// controller targeted by given name.
func GetReplicationControllerServices(client client.Interface, dsQuery *dataselect.DataSelectQuery,
namespace, rcName string) (*service.ServiceList, error) {
replicationController, err := client.ReplicationControllers(namespace).Get(rcName)
if err != nil {
return nil, err
}
channels := &common.ResourceChannels{
ServiceList: common.GetServiceListChannel(client, common.NewSameNamespaceQuery(namespace),
1),
}
services := <-channels.ServiceList.List
if err := <-channels.ServiceList.Error; err != nil {
return nil, err
}
matchingServices := common.FilterNamespacedServicesBySelector(services.Items, namespace,
replicationController.Spec.Selector)
return service.CreateServiceList(matchingServices, dsQuery), nil
}
开发者ID:cheld,项目名称:dashboard,代码行数:24,代码来源:replicationcontrollerservices.go
示例16: getRawJobPods
// Returns array of api pods targeting job with given name.
func getRawJobPods(client k8sClient.Interface, petSetName, namespace string) ([]api.Pod, error) {
replicaSet, err := client.Batch().Jobs(namespace).Get(petSetName)
if err != nil {
return nil, err
}
labelSelector := labels.SelectorFromSet(replicaSet.Spec.Selector.MatchLabels)
channels := &common.ResourceChannels{
PodList: common.GetPodListChannelWithOptions(client, common.NewSameNamespaceQuery(namespace),
api.ListOptions{
LabelSelector: labelSelector,
FieldSelector: fields.Everything(),
}, 1),
}
podList := <-channels.PodList.List
if err := <-channels.PodList.Error; err != nil {
return nil, err
}
return podList.Items, nil
}
开发者ID:bryk,项目名称:dashboard,代码行数:24,代码来源:jobpods.go
示例17: getRawReplicationControllerPods
// Returns array of api pods targeting replication controller associated to given name.
func getRawReplicationControllerPods(client k8sClient.Interface, rcName, namespace string) (
[]api.Pod, error) {
replicationController, err := client.Core().ReplicationControllers(namespace).Get(rcName)
if err != nil {
return nil, err
}
labelSelector := labels.SelectorFromSet(replicationController.Spec.Selector)
channels := &common.ResourceChannels{
PodList: common.GetPodListChannelWithOptions(client, common.NewSameNamespaceQuery(namespace),
api.ListOptions{
LabelSelector: labelSelector,
FieldSelector: fields.Everything(),
}, 1),
}
podList := <-channels.PodList.List
if err := <-channels.PodList.Error; err != nil {
return nil, err
}
return podList.Items, nil
}
开发者ID:bryk,项目名称:dashboard,代码行数:25,代码来源:replicationcontrollerpods.go
示例18: GetDeploymentDetail
// GetDeploymentDetail returns model object of deployment and error, if any.
func GetDeploymentDetail(client client.Interface, heapsterClient heapster.HeapsterClient, namespace string,
deploymentName string) (*DeploymentDetail, error) {
log.Printf("Getting details of %s deployment in %s namespace", deploymentName, namespace)
deployment, err := client.Extensions().Deployments(namespace).Get(deploymentName)
if err != nil {
return nil, err
}
selector, err := unversioned.LabelSelectorAsSelector(deployment.Spec.Selector)
if err != nil {
return nil, err
}
options := api.ListOptions{LabelSelector: selector}
channels := &common.ResourceChannels{
ReplicaSetList: common.GetReplicaSetListChannelWithOptions(client.Extensions(),
common.NewSameNamespaceQuery(namespace), options, 1),
PodList: common.GetPodListChannelWithOptions(client,
common.NewSameNamespaceQuery(namespace), options, 1),
}
rawRs := <-channels.ReplicaSetList.List
if err := <-channels.ReplicaSetList.Error; err != nil {
return nil, err
}
rawPods := <-channels.PodList.List
if err := <-channels.PodList.Error; err != nil {
return nil, err
}
// Pods
podList, err := GetDeploymentPods(client, heapsterClient, dataselect.DefaultDataSelectWithMetrics, namespace, deploymentName)
if err != nil {
return nil, err
}
// Events
eventList, err := GetDeploymentEvents(client, dataselect.DefaultDataSelect, namespace, deploymentName)
if err != nil {
return nil, err
}
// Old Replica Sets
oldReplicaSetList, err := GetDeploymentOldReplicaSets(client, dataselect.DefaultDataSelect, namespace, deploymentName)
if err != nil {
return nil, err
}
// New Replica Set
newRs, err := deploymentutil.FindNewReplicaSet(deployment, rawRs.Items)
if err != nil {
return nil, err
}
var newReplicaSet replicaset.ReplicaSet
if newRs != nil {
newRsPodInfo := common.GetPodInfo(newRs.Status.Replicas, newRs.Spec.Replicas, rawPods.Items)
newReplicaSet = replicaset.ToReplicaSet(newRs, &newRsPodInfo)
}
// Extra Info
var rollingUpdateStrategy *RollingUpdateStrategy
if deployment.Spec.Strategy.RollingUpdate != nil {
rollingUpdateStrategy = &RollingUpdateStrategy{
MaxSurge: deployment.Spec.Strategy.RollingUpdate.MaxSurge.IntValue(),
MaxUnavailable: deployment.Spec.Strategy.RollingUpdate.MaxUnavailable.IntValue(),
}
}
return &DeploymentDetail{
ObjectMeta: common.NewObjectMeta(deployment.ObjectMeta),
TypeMeta: common.NewTypeMeta(common.ResourceKindDeployment),
PodList: *podList,
Selector: deployment.Spec.Selector.MatchLabels,
StatusInfo: GetStatusInfo(&deployment.Status),
Strategy: deployment.Spec.Strategy.Type,
MinReadySeconds: deployment.Spec.MinReadySeconds,
RollingUpdateStrategy: rollingUpdateStrategy,
OldReplicaSetList: *oldReplicaSetList,
NewReplicaSet: newReplicaSet,
RevisionHistoryLimit: deployment.Spec.RevisionHistoryLimit,
EventList: *eventList,
}, nil
}
开发者ID:digitalfishpond,项目名称:dashboard,代码行数:86,代码来源:deploymentdetail.go
注:本文中的github.com/kubernetes/dashboard/src/app/backend/resource/common.NewSameNamespaceQuery函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论