More iteration on Search Feature documentation.
Signed-off-by: Eric Peterson <ericpeterson@spotify.com>
This commit is contained in:
@@ -24,14 +24,13 @@ Backstage ecosystem.
|
||||
|
||||
## Project roadmap
|
||||
|
||||
| Version | Description |
|
||||
| ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Backstage Search Pre-Alpha ✅ | Search Frontend letting you search through the entities of the software catalog. [See Pre-Alpha Use Cases.](#backstage-search-pre-alpha) |
|
||||
| [Backstage Search Alpha ⌛][alpha] | Basic “out-of-the-box” in-memory indexing process of entities, and their metadata, registered to the Software Catalog. [See Alpha Use Cases](#backstage-search-alpha). |
|
||||
| [Backstage Search Beta ⌛][beta] | At least one production-ready search engine that supports the same use-cases as in the alpha. [See Beta Use Cases](#backstage-search-beta). |
|
||||
| [Backstage Search GA ⌛][ga] | A stable Search API for plugin developers to add search to their plugins, and app integrators to expose that to their users. [See GA Use Cases](#backstage-search-ga). |
|
||||
| Version | Description |
|
||||
| -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| Backstage Search Pre-Alpha ✅ | Search Frontend letting you search through the entities of the software catalog. [See Pre-Alpha Use Cases.](#backstage-search-pre-alpha) |
|
||||
| Backstage Search Alpha ✅ | Basic “out-of-the-box” in-memory indexing process of entities, and their metadata, registered to the Software Catalog. [See Alpha Use Cases](#backstage-search-alpha). |
|
||||
| [Backstage Search Beta ⌛][beta] | At least one production-ready search engine that supports the same use-cases as in the alpha. [See Beta Use Cases](#backstage-search-beta). |
|
||||
| [Backstage Search GA ⌛][ga] | A stable Search API for plugin developers to add search to their plugins, and app integrators to expose that to their users. [See GA Use Cases](#backstage-search-ga). |
|
||||
|
||||
[alpha]: https://github.com/backstage/backstage/milestone/26
|
||||
[beta]: https://github.com/backstage/backstage/milestone/27
|
||||
[ga]: https://github.com/backstage/backstage/milestone/28
|
||||
|
||||
@@ -39,6 +38,9 @@ Backstage ecosystem.
|
||||
|
||||
#### Backstage Search Pre-Alpha
|
||||
|
||||
The pre-alpha is intended to solve for the following user stories, but will get
|
||||
there by means of a front-end only, non-extensible MVP.
|
||||
|
||||
- As a software engineer I should be able to navigate to a search page and
|
||||
search for entities registered in the Software Catalog.
|
||||
- As a software engineer I should be able to use the search input field in the
|
||||
@@ -52,26 +54,46 @@ Backstage ecosystem.
|
||||
|
||||
#### Backstage Search Alpha
|
||||
|
||||
- As a software engineer I should be able to get a match of a search on all
|
||||
entity metadata (e.g. owner, name, description, kind).
|
||||
- As an integrator I should not have to plug in any search engine, instead I can
|
||||
use the out of the box in-memory indexing process to index entities and their
|
||||
metadata registered in the Software Catalog.
|
||||
We will consider Backstage Search to be in alpha when the above use-cases are
|
||||
met, but built on top of a flexible, extensible platform.
|
||||
|
||||
- As an integrator, I should be able to provide all of the pre-alpha experiences
|
||||
to my users if I choose, but also be able to customize the experience using a
|
||||
composable set of components.
|
||||
- As a plugin developer, I should have a standard way to expose my plugin's data
|
||||
to Backstage Search.
|
||||
- As an integrator, I should still be able to expose everything in the Software
|
||||
Catalog in search, but it should be possible to customize what is searchable.
|
||||
- As an integrator, although I should be able to customize all of the above, it
|
||||
should be possible to have the pre-alpha user experiences covered without
|
||||
having to set up and configure a search engine.
|
||||
|
||||
#### Backstage Search Beta
|
||||
|
||||
- As an integrator I should be able to spin up an instance of ElasticSearch.
|
||||
- As an integrator I should be able to define a ElasticSearch cluster in my
|
||||
app_config.yaml where my data gets indexed to.
|
||||
We will consider Backstage Search to be in a beta phase when the above use-cases
|
||||
are met, and can be deployed using a production-ready search engine.
|
||||
|
||||
more to come...
|
||||
- As an integrator, I should be able to power my Backstage Search experience
|
||||
(including querying and indexing) using a production-ready search engine like
|
||||
ElasticSearch.
|
||||
- As an integrator, I should be able to configure the connection to my search
|
||||
engine in `app_config.yaml`.
|
||||
- As an integrator, I should be able to tune the queries sent to my chosen
|
||||
search engine according to my organization's needs, but a sensible default
|
||||
query should be in place so that I am not required to do so.
|
||||
|
||||
#### Backstage Search GA
|
||||
|
||||
- As a contributor I should be able to integrate plugin data to the indexing
|
||||
process of Backstage Search by using the standardized API.
|
||||
- As a software engineer I should be able to search for all content (for
|
||||
example, entities, metadata, documentation) in Backstage search.
|
||||
We will consider Backstage Search to be generally available (GA) when the above
|
||||
use-cases are met, and an ecosystem of search-enabled plugins are available and
|
||||
stable.
|
||||
|
||||
- As a plugin developer, there should be at least one example of a Backstage
|
||||
plugin that integrates with search that I can use as inspiration for my own
|
||||
plugin's search capabilities (for example, the TechDocs plugin).
|
||||
- As an app integrator, there should be plenty of examples and documentation on
|
||||
how to customize and extend search in my Backstage instance to meet my
|
||||
organization's needs.
|
||||
|
||||
more to come...
|
||||
|
||||
@@ -82,12 +104,19 @@ the search engines are used.
|
||||
|
||||
| Search Engine | Support Status |
|
||||
| ------------- | -------------- |
|
||||
| Basic (lunr) | Not yet ❌ |
|
||||
| Basic (lunr) | ✅ |
|
||||
| ElasticSearch | Not yet ❌ |
|
||||
|
||||
[Reach out to us](#feedback) if you want to chat about support for more search
|
||||
engines.
|
||||
|
||||
## Plugins Integrated with Search
|
||||
|
||||
| Plugin | Support Status |
|
||||
| -------- | -------------- |
|
||||
| Catalog | ✅ |
|
||||
| TechDocs | Not yet ❌ |
|
||||
|
||||
## Tech Stack
|
||||
|
||||
| Stack | Location |
|
||||
|
||||
Reference in New Issue
Block a user