mirror of
https://github.com/replicatedhq/troubleshoot.git
synced 2026-04-15 07:16:34 +00:00
Merge pull request #330 from replicatedhq/pv-pvc
add pv and pvcs to support bundle
This commit is contained in:
@@ -173,6 +173,24 @@ func ClusterResources(c *Collector) (map[string][]byte, error) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
//Persistent Volumes
|
||||
pvs, pvsErrors := pvs(ctx, client)
|
||||
clusterResourcesOutput["cluster-resources/pvs.json"] = pvs
|
||||
clusterResourcesOutput["cluster-resources/pvs-errors.json"], err = marshalNonNil(pvsErrors)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
//Persistent Volume Claims
|
||||
pvcs, pvcsErrors := pvcs(ctx, client, namespaceNames)
|
||||
for k, v := range pvcs {
|
||||
clusterResourcesOutput[path.Join("cluster-resources/pvcs", k)] = v
|
||||
}
|
||||
clusterResourcesOutput["cluster-resources/pvcs-errors.json"], err = marshalNonNil(pvcsErrors)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return clusterResourcesOutput, nil
|
||||
}
|
||||
|
||||
@@ -532,3 +550,39 @@ func convertToPolicyRule(status authorizationv1.SubjectRulesReviewStatus) []rbac
|
||||
|
||||
return ret
|
||||
}
|
||||
|
||||
func pvs(ctx context.Context, client *kubernetes.Clientset) ([]byte, []string) {
|
||||
pv, err := client.CoreV1().PersistentVolumes().List(ctx, metav1.ListOptions{})
|
||||
if err != nil {
|
||||
return nil, []string{err.Error()}
|
||||
}
|
||||
|
||||
b, err := json.MarshalIndent(pv.Items, "", " ")
|
||||
if err != nil {
|
||||
return nil, []string{err.Error()}
|
||||
}
|
||||
return b, nil
|
||||
}
|
||||
|
||||
func pvcs(ctx context.Context, client *kubernetes.Clientset, namespaces []string) (map[string][]byte, map[string]string) {
|
||||
pvcsByNamespace := make(map[string][]byte)
|
||||
errorsByNamespace := make(map[string]string)
|
||||
|
||||
for _, namespace := range namespaces {
|
||||
pvcs, err := client.CoreV1().PersistentVolumeClaims(namespace).List(ctx, metav1.ListOptions{})
|
||||
if err != nil {
|
||||
errorsByNamespace[namespace] = err.Error()
|
||||
continue
|
||||
}
|
||||
|
||||
b, err := json.MarshalIndent(pvcs.Items, "", " ")
|
||||
if err != nil {
|
||||
errorsByNamespace[namespace] = err.Error()
|
||||
continue
|
||||
}
|
||||
|
||||
pvcsByNamespace[namespace+".json"] = b
|
||||
}
|
||||
|
||||
return pvcsByNamespace, errorsByNamespace
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user