Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve scaler catalog to be more user-friendly #412

Closed
Tracked by #228
tomkerkhove opened this issue Mar 31, 2021 · 25 comments
Closed
Tracked by #228

Improve scaler catalog to be more user-friendly #412

tomkerkhove opened this issue Mar 31, 2021 · 25 comments
Assignees
Labels
documentation Improvements or additions to documentation enhancement New feature or request feature

Comments

@tomkerkhove
Copy link
Member

Over time, our scaler catalog has grown a lot over the last couple of releases where we have more than 30 of them today.

As a user, it's not that easy anymore to find the scalers you need and the navigation is not able to coop with it.

It would be good if we can:

  • Make the navigation be more user-friendly in this case
  • Integrate external scalers from the community to create a central place for all scalers (built-in or 3rd party)
  • Provide filtering on the current overview, examples are:
    • Categories (ie messaging, databases, CI/CD)
    • Cloud (Alibaba, AWS, Azure, etc.)
    • Built-in / External
    • Maintainer (ie KEDA, community, ...)
    • Support for (cluster) trigger authentication?
@tomkerkhove tomkerkhove added documentation Improvements or additions to documentation enhancement New feature or request labels Mar 31, 2021
@stale
Copy link

stale bot commented Oct 13, 2021

This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 7 days if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale All issues that are marked as stale due to inactivity label Oct 13, 2021
@stale stale bot removed the stale All issues that are marked as stale due to inactivity label Oct 14, 2021
@tomkerkhove tomkerkhove added this to the Documentation Improvements milestone Nov 12, 2021
@tomkerkhove tomkerkhove removed this from the Documentation Improvements milestone Aug 1, 2022
@chalin
Copy link
Contributor

chalin commented Aug 4, 2022

Do you consider this done or work-in-progress @tomkerkhove?
Should it be assigned to @thisisobate?

/cc @nate-double-u

@tomkerkhove
Copy link
Member Author

No because the filtering capabilities are not there yet.

I'm OK with assigning it to @thisisobate but I'm leaving it up to your team as I don't want to push work on your team so feel free to assign how you want to.

@tomkerkhove
Copy link
Member Author

And #845 & #857 are also related to this one

@tomkerkhove tomkerkhove moved this from Todo to In Progress in Documentation Improvements Aug 4, 2022
@thisisobate
Copy link
Contributor

Do we consider this as done? @tomkerkhove
We've fixed all related issues so I think we should close this one

@tomkerkhove
Copy link
Member Author

Not really, we are still missing this

  • Provide filtering on the current overview, examples are:

    • Categories (ie messaging, databases, CI/CD)
    • Cloud (Alibaba, AWS, Azure, etc.)
    • Built-in / External
    • Maintainer (ie KEDA, community, ...)

@thisisobate
Copy link
Contributor

I originally thought the search bar already solves the filtering capabilities but it seems I'm wrong

@tomkerkhove
Copy link
Member Author

No, the idea is to have something similar to this:
image

@thisisobate
Copy link
Contributor

@tomkerkhove I noticed that there are no "category" nor "cloud" label/tag in the scaler's metadata. This affects all the scaler docs for every version.

If you want to list these labels in the filter, then I would advise you open a PR that updates the docs metadata accordingly. For now, I will focus on listing just the "maintainer" label.

@tomkerkhove
Copy link
Member Author

We did not do this yet, because we were not sure about required format/approach.

What would be the best way to annotate scalers and can you provide a sample?

@thisisobate
Copy link
Contributor

so ideally, what is needed is to add your desired category in the front matter. For example, see how I added category = "database" to cassandra.md:

+++
title = "Cassandra"
availability = "v2.5+"
maintainer = "Community"
description = "Scale applications based on Cassandra query results."
category = "database"
go_file = "cassandra_scaler"
+++

### Trigger Specification

This specification describes the `cassandra` trigger that scales based on the outputs of a Cassandra query.

@tomkerkhove
Copy link
Member Author

Would these need to be pre-defined for the filtering to work or not?

@kedacore/keda-maintainers I'm fine with this, any objections?

@zroubalik
Copy link
Member

LGTM

@tomkerkhove
Copy link
Member Author

What about you @JorTurFer?

@thisisobate
Copy link
Contributor

Would these need to be pre-defined for the filtering to work or not?

Yes, it needs to be pre-defined for the filter to work properly. Like I mentioned, all that needs to be added are the "category" and "cloud" labels respectively. If there are other labels you might want to include in the filter, feel free to add it to the front matter.

I am already working on a PR that will make filtering work; all that is left is for the appropriate labels be included in the front matter

@JorTurFer
Copy link
Member

I see it as a good improvement!

@tomkerkhove
Copy link
Member Author

I have created #1401 to annotate things

@tomkerkhove
Copy link
Member Author

#1405 was created to add the categories

@tomkerkhove
Copy link
Member Author

#1405 is merged so you should be unblocked @thisisobate

@tomkerkhove
Copy link
Member Author

Would you mind documenting in https://github.com/kedacore/keda-docs/blob/main/README.md what it takes to introduce a new category? We'd prefer not to have to bother you for future ones

@thisisobate
Copy link
Contributor

thisisobate commented Jun 14, 2024

What are you referring to as a category? If you mean the category filter option, then introducing a new category is fairly automatic; all you need to do is add the new option to the frontmatter and it's shown on the UI by default. So for example, adding "runtime" as a new category like this:

+++
title = "Keda Runtime"
availability = "v2.5+"
maintainer = "Community"
description = "Scale applications based on Cassandra query results."
category = "runtime"
go_file = "keda_runtime"
+++

### Specification

This specification describes the .........

@thisisobate
Copy link
Contributor

Shall we go ahead and close this since it's now completed by #1400? @tomkerkhove

@tomkerkhove
Copy link
Member Author

No, let's clarify this first.

I should not have used "category" as a word but let's say filter. As of now, we don't have one to indicate "experimental" vs "stable". If we were to add this, what are the steps to take? Can you please document that in the README?

@thisisobate
Copy link
Contributor

ok...that makes sense.
sure, happy to do it

@tomkerkhove
Copy link
Member Author

Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request feature
Projects
Status: Done
Development

No branches or pull requests

5 participants