Merge pull request #8865 from fcorti/fcorti-roadmap-001
Updated roadmap page in the public documentation.
This commit is contained in:
+55
-74
@@ -41,8 +41,8 @@ If you have specific questions about the roadmap, please create an
|
||||
|
||||
The Backstage roadmap lays out both [“what’s next”](#whats-next) and
|
||||
[“future work”](#future-work). With "next" we mean features planned for release
|
||||
within the ongoing quarter starting in July until September 2021 included. With
|
||||
"future" we mean features in the radar, but not yet scheduled.
|
||||
within the ongoing quarter from January through March 2022. With "future" we
|
||||
mean features in the radar, but not yet scheduled.
|
||||
|
||||
The long-term roadmap (12 - 36 months) is not detailed in the public roadmap.
|
||||
Third-party contributions are also not currently included in the roadmap. Let us
|
||||
@@ -61,92 +61,57 @@ The feature set below is planned for the ongoing quarter, and grouped by theme.
|
||||
The list order doesn’t necessarily reflect priority, and the development/release
|
||||
cycle will vary based on maintainer schedules.
|
||||
|
||||
### Backstage Core
|
||||
### Backstage 1.0 (and following versions)
|
||||
|
||||
The following features are planned for release:
|
||||
During the first quarter of 2022, we plan to finalize and release version 1.0 of
|
||||
the Backstage platform (defined by the Core,
|
||||
[Catalog](https://backstage.io/docs/features/software-catalog/software-catalog-overview),
|
||||
[Scaffolder](https://backstage.io/docs/features/software-templates/software-templates-index)
|
||||
and [TechDocs](https://backstage.io/docs/features/techdocs/techdocs-overview)).
|
||||
Included as part of this milestone:
|
||||
|
||||
- **Improved responsiveness:** Check out the
|
||||
[RFC here](https://github.com/backstage/backstage/issues/6318) for further
|
||||
details on how to improve the responsiveness for Backstage's UI.
|
||||
- Deciding on the cadence of minor/weekly/daily releases to provide clarity on
|
||||
the frequency and expectations for future versions of the platform and its
|
||||
defining modules.
|
||||
- Establish the support model to set the expectations from the adopters in their
|
||||
respective use cases.
|
||||
|
||||
### Software Templates
|
||||
### Backstage Security Audit
|
||||
|
||||
The following features are planned for release::
|
||||
This initiative is the first of a broader Security Strategy for Backstage. The
|
||||
purpose of the Security Audit is to involve third-party companies in auditing
|
||||
the platform and highlighting potential vulnerabilities. The benefit for the
|
||||
adopters is clear: We want Backstage to be as secure as possible, and we want to
|
||||
make it reliable through a specific initiative. This initiative in particular is
|
||||
done together, and with the support of, the
|
||||
[Cloud Native Computing Foundation (CNCF)](https://www.cncf.io/).
|
||||
|
||||
- **Re-creation/resubmission in case of failure:** Speed up productivity by
|
||||
allowing developers to relaunch a project after a failure or any unexpected
|
||||
problem. In the current version, this task requires retyping and a full
|
||||
re-creation from scratch.
|
||||
- **Performance and usability improvements for contributors:** Reach a relevant
|
||||
improvement in templating's performance through the replacement of
|
||||
[handlebars](https://handlebarsjs.com/). Other replacements will be considered
|
||||
as part of this task (possibly
|
||||
[cookiecutter](https://cookiecutter.readthedocs.io/)) for easier software
|
||||
template creation, allowing more contributors to reach their goals without
|
||||
having to learn new tooling.
|
||||
- **Improved extensibility through inclusion:** Make software templates more
|
||||
maintainable and extensible by adding `$include` support for parameters.
|
||||
- **Authenticated job creation:** Created jobs will be able to run with an
|
||||
authenticated user with all actions tracked for future consumption and
|
||||
evidence. Track users creating jobs and make “jobs created by me” reporting
|
||||
available.
|
||||
### Moving to Incubation in CNCF
|
||||
|
||||
### Software Catalog
|
||||
|
||||
The following features are planned for release:
|
||||
|
||||
- **Request For Comments (RFC) for composability improvements (routing):**
|
||||
Enable plugins to be auto-added and make plugin installation and upgrades
|
||||
easier for all Backstage users. This includes information card layouts, entity
|
||||
pages containing content and hooking the external header, considering the
|
||||
support of a separate deployment, and configuration for plugins.
|
||||
- **Removing duplicated entities in catalog:** As any adopter knows, a software
|
||||
catalog can contain thousands or more entities and it is very important to
|
||||
avoid duplications in naming to prevent failures. With this development task,
|
||||
two entities with the same name won't be allowed as described
|
||||
[here](https://github.com/backstage/backstage/issues/4760).
|
||||
- **Connecting identity to ownership to prepare for role-based access control
|
||||
([RBAC](https://en.wikipedia.org/wiki/Role-based_access_control)):** This is a
|
||||
first step to supporting RBAC for the software catalog (see the
|
||||
[future work section](#future-work) for further details). Provide each entity
|
||||
within the software catalog with a recognized owner.
|
||||
- **Catalog performance improvements through improved caching:** Fix the
|
||||
performance gaps in the catalog processor, which currently doesn’t have a
|
||||
strong caching mechanism. The current version often requires fetching a
|
||||
relevant amount of data, especially at scale.
|
||||
The progress of the request can be seen
|
||||
[here](https://github.com/cncf/toc/pull/717).
|
||||
|
||||
## Future work
|
||||
|
||||
The following feature list doesn’t represent a commitment to develop and the
|
||||
list order doesn’t reflect any priority or importance. But these features are on
|
||||
The following feature list doesn’t represent a commitment to develop, and the
|
||||
list order doesn’t reflect any priority or importance, but these features are on
|
||||
the maintainers’ radar, with clear interest expressed by the community.
|
||||
|
||||
- **Backend Services:** To better scale and maintain the Backstage instances, a
|
||||
backend layer of services is planned to be introduced as part of the software
|
||||
architecture. This layer of backend services will help in decoupling the
|
||||
various modules (e.g. Catalog and Scaffolder) from the frontend experience.
|
||||
- **Security Plan (and Strategy):** The purpose of the Security Strategy is to
|
||||
move another step along the path to maturing the platform, setting the
|
||||
expectations of any adopters from a security standpoint.
|
||||
- **Search GA:**.
|
||||
- **[GraphQL](https://graphql.org/) support:** Introduce the ability to query
|
||||
Backstage backend services with a standard query language for APIs.
|
||||
- **Telemetry:** To efficiently generate logging and metrics in such a way that
|
||||
adopters can get insights so that Backstage can be monitored and improved.
|
||||
- **Improved UX design:** Provide a better Backstage user experience through
|
||||
visual guidelines and templates, especially navigation across plug-ins and
|
||||
portal functionalities.
|
||||
- **Catalog composability (routing):** Follow up development after the RFC
|
||||
planned for the ongoing quarter (see [what’s next](#whats-next) for further
|
||||
details).
|
||||
- **Catalog-import improvements:** Provide a faster (scalability) and better
|
||||
(more features like move/rename) way to import entities into the Software
|
||||
Catalog. Importing items in the Software Catalog is crucial for creating a
|
||||
Backstage proof-of-concept or testing/planning for broader organizational
|
||||
adoption. This enhancement better supports getting developers to use Backstage
|
||||
with less effort and customization.
|
||||
- **Catalog improvements:** Add pagination and sourcing to Software Catalog.
|
||||
- **[GraphQL](https://graphql.org/) support:** Introduce the ability to query
|
||||
Backstage backend services with a standard query language for APIs.
|
||||
- **Software templates performance improvements through decoupling a separate
|
||||
worker:** Improve performance through decoupling resource-consuming services
|
||||
and making them asynchronous. In the current version, project auto-creation
|
||||
through the Software Templating system can consume a lot of resources and
|
||||
bottleneck many concurrent projects created simultaneously.
|
||||
- **API discovery and documentation:** Add better support for the
|
||||
[gRPC](https://grpc.io/).
|
||||
- **TechDocs GA release:** Work toward enhancements necessary to get TechDocs to
|
||||
general availability. Check out the
|
||||
[milestone here](https://github.com/backstage/backstage/milestone/30) for
|
||||
further details.
|
||||
|
||||
## Completed milestones
|
||||
|
||||
@@ -177,3 +142,19 @@ Read more about the completed (and released) features for reference.
|
||||
- Support auth providers: Google, Okta, GitHub, GitLab,
|
||||
[auth0](https://github.com/backstage/backstage/pull/1611),
|
||||
[AWS](https://github.com/backstage/backstage/pull/1990)
|
||||
|
||||
- [Donate Backstage to the CNCF 🎉](https://backstage.io/blog/2020/09/23/backstage-cncf-sandbox)
|
||||
- [TechDocs v1](https://backstage.io/blog/2020/09/08/announcing-tech-docs)
|
||||
- [Plugin marketplace](https://backstage.io/plugins)
|
||||
- [Improved and move documentation to backstage.io](https://backstage.io/docs/overview/what-is-backstage)
|
||||
- [Backstage Software Catalog (alpha)](https://backstage.io/blog/2020/06/22/backstage-service-catalog-alpha)
|
||||
- [Backstage Software Templates (beta)](https://backstage.io/blog/2021/07/26/software-templates-are-now-in-beta)
|
||||
- [Make it possible to add custom auth providers](https://backstage.io/blog/2020/07/01/how-to-enable-authentication-in-backstage-using-passport)
|
||||
- [TechDocs v0](https://github.com/backstage/backstage/milestone/15)
|
||||
- CI plugins: CircleCI, Jenkins, GitHub Actions and TravisCI
|
||||
- [Service API documentation](https://github.com/backstage/backstage/pull/1737)
|
||||
- Backstage Software Catalog can read from: GitHub, GitLab,
|
||||
[Bitbucket](https://github.com/backstage/backstage/pull/1938)
|
||||
- Support auth providers: Google, Okta, GitHub, GitLab,
|
||||
[auth0](https://github.com/backstage/backstage/pull/1611),
|
||||
[AWS](https://github.com/backstage/backstage/pull/1990)
|
||||
|
||||
Reference in New Issue
Block a user