diff --git a/pkg/ui/console/client.go b/pkg/ui/console/client.go index 79200a369c52c1..f57d0dff6c0123 100644 --- a/pkg/ui/console/client.go +++ b/pkg/ui/console/client.go @@ -541,8 +541,13 @@ func (c Client) describePolicy(ctx context.Context, p *policy.Policy, selector s ui.ColorizedOutput(ui.ColorHeader, "Describe Policy %s output:\n\n", p.String()) t := &Table{writer: tablewriter.NewWriter(os.Stdout)} t.SetHeaders("Path", "Description") - pol := p.Filter(strings.ReplaceAll(selector, "//", "/")) - buildDescribePolicyTable(t, policy.Policies{&pol}, selector[:strings.LastIndexAny(selector, "/")]) + selector = strings.ReplaceAll(selector, "//", "/") + pol := p.Filter(selector) + if strings.Contains(selector, "/") { + selector = selector[:strings.LastIndexAny(selector, "/")] + } + + buildDescribePolicyTable(t, policy.Policies{&pol}, selector) t.Render() ui.ColorizedOutput(ui.ColorInfo, "To execute any policy use the path defined in the table above.\nFor example `cloudquery policy run %s`\n", buildPolicyPath(p.Name, getNestedPolicyExample(p.Policies[0], ""))) return nil