@@ -31,13 +31,17 @@ import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.Persist
31
31
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PodForDaemonSet
32
32
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PodForDeployment
33
33
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PodForJob
34
+ import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PodForReplicaSet
35
+ import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PodForReplicationController
34
36
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PodForService
35
37
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.PodForStatefulSet
38
+ import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.ReplicaSetsOperator
36
39
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.SecretsOperator
37
40
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.ServicesOperator
38
41
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.StatefulSetsOperator
39
42
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.StorageClassesOperator
40
43
import com.redhat.devtools.intellij.kubernetes.model.resource.kubernetes.custom.CustomResourceDefinitionsOperator
44
+ import com.redhat.devtools.intellij.kubernetes.model.resource.openshift.ReplicationControllersOperator
41
45
import com.redhat.devtools.intellij.kubernetes.model.resourceName
42
46
import com.redhat.devtools.intellij.kubernetes.tree.KubernetesStructure.Folders.CONFIGURATION
43
47
import com.redhat.devtools.intellij.kubernetes.tree.KubernetesStructure.Folders.CONFIG_MAPS
@@ -54,6 +58,8 @@ import com.redhat.devtools.intellij.kubernetes.tree.KubernetesStructure.Folders.
54
58
import com.redhat.devtools.intellij.kubernetes.tree.KubernetesStructure.Folders.PERSISTENT_VOLUMES
55
59
import com.redhat.devtools.intellij.kubernetes.tree.KubernetesStructure.Folders.PERSISTENT_VOLUME_CLAIMS
56
60
import com.redhat.devtools.intellij.kubernetes.tree.KubernetesStructure.Folders.PODS
61
+ import com.redhat.devtools.intellij.kubernetes.tree.KubernetesStructure.Folders.REPLICASETS
62
+ import com.redhat.devtools.intellij.kubernetes.tree.KubernetesStructure.Folders.REPLICATIONCONTROLLERS
57
63
import com.redhat.devtools.intellij.kubernetes.tree.KubernetesStructure.Folders.SECRETS
58
64
import com.redhat.devtools.intellij.kubernetes.tree.KubernetesStructure.Folders.SERVICES
59
65
import com.redhat.devtools.intellij.kubernetes.tree.KubernetesStructure.Folders.STATEFULSETS
@@ -67,11 +73,13 @@ import io.fabric8.kubernetes.api.model.HasMetadata
67
73
import io.fabric8.kubernetes.api.model.Namespace
68
74
import io.fabric8.kubernetes.api.model.Node
69
75
import io.fabric8.kubernetes.api.model.Pod
76
+ import io.fabric8.kubernetes.api.model.ReplicationController
70
77
import io.fabric8.kubernetes.api.model.Secret
71
78
import io.fabric8.kubernetes.api.model.Service
72
79
import io.fabric8.kubernetes.api.model.apiextensions.v1.CustomResourceDefinition
73
80
import io.fabric8.kubernetes.api.model.apps.DaemonSet
74
81
import io.fabric8.kubernetes.api.model.apps.Deployment
82
+ import io.fabric8.kubernetes.api.model.apps.ReplicaSet
75
83
import io.fabric8.kubernetes.api.model.apps.StatefulSet
76
84
import io.fabric8.kubernetes.api.model.batch.v1.Job
77
85
import io.fabric8.kubernetes.api.model.discovery.v1beta1.Endpoint
@@ -87,7 +95,9 @@ class KubernetesStructure(model: IResourceModel) : AbstractTreeStructureContribu
87
95
val DAEMONSETS = Folder (" DaemonSets" , kind = DaemonSetsOperator .KIND ) // Workloads / DaemonSets
88
96
val JOBS = Folder (" Jobs" , kind = JobsOperator .KIND ) // Workloads / Jobs
89
97
val CRONJOBS = Folder (" CronJobs" , kind = CronJobsOperator .KIND ) // Workloads / CronJobs
90
- val PODS = Folder (" Pods" , kind = NamespacedPodsOperator .KIND ) // Workloads / Pods
98
+ val PODS = Folder (" Pods" , kind = NamespacedPodsOperator .KIND ) // Workloads / Pods
99
+ val REPLICASETS = Folder (" Replica Sets" , kind = ReplicaSetsOperator .KIND )
100
+ val REPLICATIONCONTROLLERS = Folder (" Replication Controllers" , kind = ReplicationControllersOperator .KIND )
91
101
val NETWORK = Folder (" Network" , kind = null )
92
102
val SERVICES = Folder (" Services" , kind = ServicesOperator .KIND ) // Network / Services
93
103
val ENDPOINTS = Folder (" Endpoints" , kind = EndpointsOperator .KIND ) // Network / Endpoints
@@ -192,7 +202,9 @@ class KubernetesStructure(model: IResourceModel) : AbstractTreeStructureContribu
192
202
DAEMONSETS ,
193
203
JOBS ,
194
204
CRONJOBS ,
195
- PODS )
205
+ PODS ,
206
+ REPLICASETS ,
207
+ REPLICATIONCONTROLLERS )
196
208
}
197
209
},
198
210
element<Any > {
@@ -298,7 +310,49 @@ class KubernetesStructure(model: IResourceModel) : AbstractTreeStructureContribu
298
310
.list()
299
311
.sortedBy(resourceName)
300
312
}
301
- }
313
+ },
314
+ element<Any > {
315
+ applicableIf { it == REPLICASETS }
316
+ childrenKind { ReplicaSetsOperator .KIND }
317
+ children {
318
+ model.resources(ReplicaSetsOperator .KIND )
319
+ .inCurrentNamespace()
320
+ .list()
321
+ .sortedBy(resourceName)
322
+ }
323
+ },
324
+ element<ReplicaSet > {
325
+ applicableIf { it is ReplicaSet }
326
+ childrenKind { NamespacedPodsOperator .KIND }
327
+ children {
328
+ model.resources(NamespacedPodsOperator .KIND )
329
+ .inCurrentNamespace()
330
+ .filtered(PodForReplicaSet (it))
331
+ .list()
332
+ .sortedBy(resourceName)
333
+ }
334
+ },
335
+ element<Any > {
336
+ applicableIf { it == REPLICATIONCONTROLLERS }
337
+ childrenKind { ReplicationControllersOperator .KIND }
338
+ children {
339
+ model.resources(ReplicationControllersOperator .KIND )
340
+ .inCurrentNamespace()
341
+ .list()
342
+ .sortedBy(resourceName)
343
+ }
344
+ },
345
+ element<ReplicationController > {
346
+ applicableIf { it is ReplicationController }
347
+ childrenKind { NamespacedPodsOperator .KIND }
348
+ children {
349
+ model.resources(NamespacedPodsOperator .KIND )
350
+ .inCurrentNamespace()
351
+ .filtered(PodForReplicationController (it))
352
+ .list()
353
+ .sortedBy(resourceName)
354
+ }
355
+ },
302
356
)
303
357
}
304
358
0 commit comments