Prepare to Perform with Backstage Software Templates
1
Ryan Jarvinen
ryanj@redhat.com
Agenda
2
Let’s build an app!
This shouldn’t be too hard…
3
I’ll just grab my editor and compiler…
This shouldn’t be too hard…
4
…and Podman (ok, probably Docker)
…and a container registry
…and a place to run containers
Hello [Cruel] World
5
…and CD to deploy it
…and a LOT of YAML
…and a place to store the code (and the YAML)
…and don’t forget to shift security “left”
Hello [Cruel] World
6
7
Just one more YAML?
This shouldn’t be too hard…
8
🫠
Found this posted at a tech conference:
9
Developers are under pressure: And their productivity is slowing down.
�Organizations are looking for a platform to reduce toil and increase productivity.
10
39%
76%
37%
Increasing workload / demand from other teams lead to increased overhead.1
More than three-quarters of organizations say the cognitive load is so high that it is a source low productivity.1
Adapting to the pressures of digital transformation is third biggest challenge.1
35%
Learning skills to adapt to new technologies and approaches 1
What's Next in OpenShift Q2CY2023
Pillars of an Internal Development Platform (IDP)
11
80%
Onboarding
Code Time
Build Time
Run Time
Internal Developer Platform (IDP)
An Internal Developer Platform (IDP) is built by a platform team to build golden paths and enable developer self-service.
An IDP consists of many different techs and tools, glued together in a way that lowers cognitive load on developers without abstracting away context and underlying technologies.
Following best practices, platform teams treat their platform as a product and build it based on user research, maintain and continuously improve it.
What is
Backstage?
Introducing…
13
13
An open platform for building developer portals
Allowing developers to focus on coding, rather than navigating to all the different tools
Lowering the cognitive load and unlocking productivity
Happy developers make happy code!
Adopters of Backstage
Backstage Core Features
Search
Find the right information across your entire Backstage ecosystem
Tech Docs
Easily create, maintain, and find technical documentation using a “docs as code” approach
Software Templates (Golden Path Templates)
Quickly spin up new projects and standardize your tooling with your organization’s best practices
Plugins
Extend functionality and provide customization
Centralized Software Catalog
Keep track of application ownership and metadata for all the software in your organization (services, websites, libraries, data pipelines, etc.)
Plugins Enhance Developer Portals
MANY MORE
125+ community plugins, some examples:
Red Hat Developer Hub
18
an enterprise-grade, open developer platform for building developer portals,
containing a supported and opinionated framework
developers.redhat.com/rhdh
Red Hat Developer Hub - Enterprise IDP based on Backstage
Backstage OSS community
RHDH based on CNCF project backstage.io
developers.redhat.com/rhdh
Backstage Software Templates
Introducing…
20
https://backstage.io/docs/features/software-templates/
Q: What is a
“Golden Path”?
21
Golden Path: <undefined>
22
Template Example 1
github.com/developer-hub-books/rhdh-book1-templates
23
Template Attributes
34
35
Template step actions:
41
Continuous Developer Flow
Outer
loop
Inner
loop
Pull/Merge Request
Production
Build / Package
Code
Push
Debug
Code Review
Build
Deploy
Security
Tests
Compliance
Inner loop
Outer loop
Developer
Test
50
Search
Empowering engineering to deliver business value faster.
Multi Cluster View with OCM
Authentication & Authorization with Keycloak
Container Image Registry for Quay
Application Topology for Kubernetes
Pipelines with Tekton
GitOps with Argo CD
Dev Preview
GA
Self-service with guardrails for cloud-native development.
Best practices with GitOps and automation.
Real-time view of application and infrastructure health and security.
Single pane of glass to increase engineering productivity.
Includes supported
plugin bundle
Red Hat Developer Hub - supported when deployed on
Integrates with industry standards and technologies
through a broad ecosystem of community plugins.
Based on Backstage, an open source
platform for building developer portals.
MANY MORE
Managed Red Hat OpenShift services
Customer-managed Red Hat OpenShift
Managed Kubernetes Services
Authentication and Authorization with Keycloak
GitOps with Argo CD
Pipelines with Tekton
Application Topology for Kubernetes
Container Image Registry for Quay
Multi Cluster View with�Open Cluster Manager (OCM)
Template Example 2
Further down the path
https://github.com/developer-hub-books/rhdh-book1-templates
https://github.com/developer-hub-books/rhdh-book1-templates/blob/main/custom-component-patch/template.yaml
58
Template step actions:
64
67
69
Trusted Application Pipeline�Template output example
70
Summary
Red Hat Developer Hub
74
75
ONLY one more YAML?
?
Backstage helps answer two very important questions:
Summary
Backstage plugins help provide a real-time view of application & infrastructure health & security
Summary
Backstage Software Templates provide:
RHDH Template Library:
https://bit.ly/ibm4091
red.ht/software-templates
80
red.ht/backstage-book
developers.redhat.com/rhdh
Q&A
83
84
Thank You!
Ryan Jarvinen
ryanj@redhat.com