func billingAccounts()

in cmd/cloudshell_open/billing.go [38:57]


func billingAccounts() ([]cloudbilling.BillingAccount, error) {
	var out []cloudbilling.BillingAccount

	client, err := cloudbilling.NewService(context.TODO())
	if err != nil {
		return nil, fmt.Errorf("failed to initialize cloud billing client: %w", err)
	}
	billingAccounts, err := client.BillingAccounts.List().Context(context.TODO()).Do()
	if err != nil {
		return nil, fmt.Errorf("failed to query billing accounts: %w", err)
	}

	for _, p := range billingAccounts.BillingAccounts {
		if p.Open {
			out = append(out, *p)
		}
	}

	return out, nil
}