Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,5 @@ titles-generated/
.vscode
.cache/
.vscode/
linkchecker-out.csv
linkchecker-out.html
6 changes: 6 additions & 0 deletions .htmltest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,10 @@ OutputDir: .cache/htmltest
IgnoreDirectoryMissingTrailingSlash: true
IgnoreSSLVerify: true
IgnoreURLs: # List URLS that are not published, false positives, websites refusing crawlers
# Unauthorized (403)
- https://docs.redhat.com/en/documentation/red_hat_developer_hub
- https://developers.redhat.com
- https://docs.github.com/
- https://entra.microsoft.com
- https://openai.com/api/
- https://platform.openai.com/docs/overview
14 changes: 14 additions & 0 deletions .linkcheckerrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
; Run linkchecker with the configuration file:
; linkchecker -f .linkcheckerrc titles-generated/main/

[filtering]
checkextern=True
ignore=
brand.css
lang.css
http://creativecommons.org/licenses/by-sa/3.0/
https://access.redhat.com/downloads/content/480/

[output]
fileoutput=html,csv
log=failures
1 change: 1 addition & 0 deletions .vale-styles/config/vocabularies/RHDH/accept.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
scaffolder
Empty file.
2 changes: 2 additions & 0 deletions .vale.ini
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ MinAlertLevel = suggestion
# Styles to download:
Packages = RedHat

Vocab = RHDH

# Display alerts on AsciiDoc files:
[*.adoc]
# Apply these styles:
Expand Down
212 changes: 102 additions & 110 deletions artifacts/attributes.adoc

Large diffs are not rendered by default.

11 changes: 5 additions & 6 deletions artifacts/rhdh-plugins-reference/argocd/argocd-plugin-admin.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ annotations:
...
# The label that Argo CD uses to fetch all the applications. The format to be used is label.key=label.value. For example, rht-gitops.com/janus-argocd=quarkus-app.

argocd/app-selector: '${ARGOCD_LABEL_SELECTOR}'
argocd/app-selector: '${ARGOCD_LABEL_SELECTOR}'
----

* (Optional) Add the following annotation to the entity’s `catalog-info.yaml` file to switch between Argo CD instances as shown in the following example:
Expand All @@ -49,7 +49,7 @@ annotations:
...
# The Argo CD instance name used in `app-config.yaml`.

argocd/instance-name: '${ARGOCD_INSTANCE}'
argocd/instance-name: '${ARGOCD_INSTANCE}'
----

+
Expand Down Expand Up @@ -81,7 +81,7 @@ The optional Argo CD Rollouts feature enhances Kubernetes by providing advanced

.Prerequisites

* The Backstage Kubernetes plugin (`@backstage/plugin-kubernetes`) is installed and configured.
* The Backstage Kubernetes plugin (`@backstage/plugin-kubernetes`) is installed and configured.

** To install and configure Kubernetes plugin in Backstage, see link:https://backstage.io/docs/features/kubernetes/installation/[Installaltion] and link:https://backstage.io/docs/features/kubernetes/configuration/[Configuration] guide.

Expand Down Expand Up @@ -213,7 +213,7 @@ If using the label selector annotation (backstage.io/kubernetes-label-selector),

. Open {Product} interface and navigate to the entity you configured.

. Select the *CD* tab and then select the *GitOps application*. The side panel opens.
. Select the *CD* tab and then select the *GitOps application*. The side panel opens.

. In the *Resources* table of the side panel, verify that the following resources are displayed:

Expand All @@ -231,6 +231,5 @@ If using the label selector annotation (backstage.io/kubernetes-label-selector),
[role="_additional-resources"]
.Additional resources

* The package path, scope, and name of the {company-name} ArgoCD plugin has changed since 1.2. For more information, see link:{release-notes-book-url}#removed-functionality-rhidp-4293[Breaking Changes] in the _{release-notes-book-title}_.

* For more information on installing dynamic plugins, see link:{installing-and-viewing-plugins-book-url}[{installing-and-viewing-plugins-book-title}].
* link:{installing-and-viewing-plugins-book-link}[{installing-and-viewing-plugins-book-title}]
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ You can use the Argo CD plugin to visualize the Continuous Delivery (CD) workflo

. Select the *Catalog* tab and choose the component that you want to use.

. Select the *CD* tab to view insights into deployments managed by Argo CD.
. Select the *CD* tab to view insights into deployments managed by Argo CD.

+
image::rhdh-plugins-reference/argocd.png[CD tab Argo CD]
Expand All @@ -33,4 +33,4 @@ image::rhdh-plugins-reference/deployment_summary.png[Deployment summary]
[role="_additional-resources"]
.Additional resources

* For more information on installing dynamic plugins, see link:{installing-and-viewing-plugins-book-url}[{installing-and-viewing-plugins-book-title}].
* {installing-and-viewing-plugins-book-link}[{installing-and-viewing-plugins-book-title}]
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ You can use the Argo CD plugin to visualize the Continuous Delivery (CD) workflo

. Select the *Catalog* tab and choose the component that you want to use.

. Select the *CD* tab to view insights into deployments managed by Argo CD.
. Select the *CD* tab to view insights into deployments managed by Argo CD.

+
image::rhdh-plugins-reference/argocd.png[CD tab Argo CD]
Expand All @@ -31,4 +31,4 @@ image::rhdh-plugins-reference/deployment_summary.png[Deployment summary]
[role="_additional-resources"]
.Additional resources

* For more information on installing dynamic plugins, see link:{installing-and-viewing-plugins-book-url}[{installing-and-viewing-plugins-book-title}].
* {installing-and-viewing-plugins-book-link}[{installing-and-viewing-plugins-book-title}]
Original file line number Diff line number Diff line change
Expand Up @@ -160,13 +160,13 @@ The Keycloak backend plugin supports link:https://opentelemetry.io/[OpenTelemetr

=== Labels

All counters include the `taskInstanceId` label, which uniquely identifies each scheduled fetch task. You can use this label to trace failures back to individual task executions.
All counters include the `taskInstanceId` label, which uniquely identifies each scheduled fetch task. You can use this label to trace failures back to individual task executions.

Users can enter queries in the Prometheus UI or Grafana to explore and manipulate metric data.
Users can enter queries in the Prometheus UI or Grafana to explore and manipulate metric data.

In the following examples, a Prometheus Query Language (PromQL) expression returns the number of backend failures.

.Example to get the number of backend failures associated with a `taskInstanceId`
.Example to get the number of backend failures associated with a `taskInstanceId`
[source,subs="+attributes,+quotes"]
----
backend_keycloak_fetch_data_batch_failure_count_total{taskInstanceId="df040f82-2e80-44bd-83b0-06a984ca05ba"} 1
Expand All @@ -188,7 +188,7 @@ Additionally, the results can be visualized using Grafana.

// === Use Case Example

// Imagine your Keycloak instance is under-provisioned (e.g., low CPU/RAM limits), and the plugin is configured to send many parallel API requests.
// Imagine your Keycloak instance is under-provisioned (e.g., low CPU/RAM limits), and the plugin is configured to send many parallel API requests.
// This could cause request timeouts or throttling. The metrics described above can help detect such behavior early, allowing administrators to:

// - Tune the plugin configuration (e.g., reduce parallelism)
Expand All @@ -199,7 +199,7 @@ Additionally, the results can be visualized using Grafana.

You can export metrics using any OpenTelemetry-compatible backend, such as *Prometheus*.

See the link:https://backstage.io/docs/tutorials/setup-opentelemetry[Backstage OpenTelemetry setup guide] for integration instructions.
See the link:https://backstage.io/docs/tutorials/setup-opentelemetry//[Backstage OpenTelemetry setup guide] for integration instructions.

== Limitations

Expand All @@ -211,4 +211,4 @@ If you have self-signed or corporate certificate issues, you can set the followi
[NOTE]
====
The solution of setting the environment variable is not recommended.
====
====
23 changes: 13 additions & 10 deletions assemblies/assembly-audit-log.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
= Audit logs in {product}
:context: assembly-audit-log

Audit logs are a chronological set of records documenting the user activities, system events, and data changes that affect your {product} users, administrators, or components. Administrators can view {product-short} audit logs in the {ocp-short} web console to monitor scaffolder events, changes to the RBAC system, and changes to the Catalog database. Audit logs include the following information:
Audit logs are a chronological set of records documenting the user activities, system events, and data changes that affect your {product} users, administrators, or components.
Administrators can view {product-short} audit logs in the {ocp-short} web console to monitor scaffolder events, changes to the RBAC system, and changes to the Catalog database.
Audit logs include the following information:

* Name of the audited event
* Actor that triggered the audited event, for example, terminal, port, IP address, or hostname
Expand All @@ -13,7 +15,8 @@ Audit logs are a chronological set of records documenting the user activities, s
You can use the information in the audit log to achieve the following goals:

Enhance security::
Trace activities, including those initiated by automated systems and software templates, back to their source. Know when software templates are executed, as well as the details of application and component installations, updates, configuration changes, and removals.
Trace activities, including those initiated by automated systems and software templates, back to their source.
Know when software templates are executed, and the details of application and component installations, updates, configuration changes, and removals.

Automate compliance::
Use streamlined processes to view log data for specified points in time for auditing purposes or continuous compliance maintenance.
Expand All @@ -23,16 +26,16 @@ Use access records and activity details to fix issues with software templates or

[NOTE]
====
Audit logs are not forwarded to the internal log store by default because this does not provide secure storage. You are responsible for ensuring that the system to which you forward audit logs is compliant with your organizational and governmental regulations, and is properly secured.
Audit logs are not forwarded to the internal log store by default because this does not provide secure storage.
You are responsible for ensuring that the system to which you forward audit logs is compliant with your organizational and governmental regulations, and is properly secured.
====

[role="_additional-resources"]
.Additional resources

* For more information about logging in {ocp-short}, see link:https://docs.openshift.com/container-platform/latest/observability/logging/cluster-logging.html[About Logging]
include::modules/observe/con-audit-log-config.adoc[leveloffset=+1]

include::modules/observe/con-audit-log-config.adoc[]
include::modules/observe/proc-forward-audit-log-splunk.adoc[leveloffset=+1]

include::modules/observe/proc-forward-audit-log-splunk.adoc[leveloffset=+2]
include::modules/observe/proc-audit-log-view.adoc[leveloffset=+1]

include::modules/observe/proc-audit-log-view.adoc[]
[role="_additional-resources"]
.Additional resources
* {ocp-docs-link}/observability/logging/cluster-logging.html[About Logging in {ocp-brand-name}]
9 changes: 4 additions & 5 deletions assemblies/assembly-configuring-techdocs.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,6 @@ You can use a CI/CD pipeline with the repository that has a dedicated job to gen

After you configure {odf-name} to store the files that TechDocs generates, you can configure the TechDocs plugin to use the {odf-name} for cloud storage.

[role="_additional-resources"]
.Additional resources

* For more information, see link:{configuring-dynamic-plugins-book-url}[{configuring-dynamic-plugins-book-title}].

//configuring storage
include::modules/customizing-techdocs/con-techdocs-configure-storage.adoc[leveloffset=+1]

Expand All @@ -39,3 +34,7 @@ include::modules/customizing-techdocs/ref-techdocs-example-config-plugin-operato
//configuring CI/CD
include::modules/customizing-techdocs/con-techdocs-config-cicd.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources

* {configuring-dynamic-plugins-book-link}[{configuring-dynamic-plugins-book-title}]
20 changes: 11 additions & 9 deletions assemblies/assembly-configuring-templates.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,14 @@
[id="{context}"]
= About Software Templates

Software Templates in {product} provide a streamlined way to create software components and publish them to different version control repositories like Git. Platform engineers create and maintain Software Templates in {product}.
Software Templates in {product} provide a streamlined way to create software components and publish them to different version control repositories such as Git.
Platform engineers create and maintain Software Templates in {product}.

You can configure Software Templates to create software components, and publish these components to Git repositories. Once the components are published to Git repositories, register these components in the Software Catalog.
You can configure Software Templates to create software components, and publish these components to Git repositories.
Once the components are published to Git repositories, register these components in the Software Catalog.

A template is a form composed of different UI fields that is defined in a YAML file. Software Templates include _actions_, which are steps that are executed in sequential order and can be executed conditionally.

* See link:https://developers.redhat.com/articles/2025/03/17/10-tips-better-backstage-software-templates#[10 tips for better Backstage Software Templates].
A template is a form composed of different UI fields that is defined in a YAML file.
Software Templates include _actions_, which are steps that are executed in sequential order and can be executed conditionally.

include::modules/customizing-templates/proc-creating-templates.adoc[leveloffset=+1]
include::modules/customizing-templates/ref-creating-templates.adoc[leveloffset=+1]
Expand All @@ -20,7 +21,8 @@ include::modules/customizing-templates/proc-versioning-software-templates.adoc[l

[role="_additional-resources"]
.Additional resources
* link:{authentication-book-url}#assembly-auth-provider-github[Enabling the GitHub authentication provider]
* link:https://backstage.io/docs/features/software-templates/writing-templates[Backstage documentation - Writing Templates]
* link:https://backstage.io/docs/features/software-templates/builtin-actions[Backstage documentation - Builtin actions]
* link:https://backstage.io/docs/features/software-templates/writing-custom-actions[Backstage documentation - Writing Custom Actions]
* link:https://developers.redhat.com/articles/2025/03/17/10-tips-better-backstage-software-templates#[10 tips for better {backstage} Software Templates]
* {authentication-book-link}#assembly-auth-provider-github[Enabling the GitHub authentication provider]
* link:https://backstage.io/docs/features/software-templates/writing-templates/[{backstage} documentation - Writing Templates]
* link:https://backstage.io/docs/features/software-templates/builtin-actions/[{backstage} documentation - Built-in actions]
* link:https://backstage.io/docs/features/software-templates/writing-custom-actions/[{backstage} documentation - Writing Custom Actions]
2 changes: 1 addition & 1 deletion assemblies/assembly-customizing-the-tech-radar-page.adoc
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[id='proc-customizing-the-tech-radar-page_{context}']
= Customizing the Tech Radar page in {product}

In {product}, the Tech Radar page is provided by the `tech-radar` dynamic plugin, which is disabled by default. For information about enabling dynamic plugins in {product} see link:{configuring-dynamic-plugins-book-url}[{configuring-dynamic-plugins-book-title}].
In {product}, the Tech Radar page is provided by the `tech-radar` dynamic plugin, which is disabled by default. For information about enabling dynamic plugins in {product} see {configuring-dynamic-plugins-book-link}[{configuring-dynamic-plugins-book-title}].

In {product}, you can configure Learning Paths by passing the data into the `{my-app-config-file}` file as a proxy. The base Tech Radar URL must include the `/developer-hub/tech-radar` proxy.

Expand Down
4 changes: 2 additions & 2 deletions assemblies/assembly-disabling-telemetry-data-collection.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@

To disable telemetry data collection, you must disable the `analytics-provider-segment` plugin either using the Helm Chart or the {product} Operator configuration.

As an administrator, you can disable the telemetry data collection feature based on your needs. For example, in an air-gapped environment, you can disable this feature to avoid needless outbound requests affecting the responsiveness of the {product-very-short} application. For more details, see the link:{telemetry-data-collection-book-url}#proc-disabling-telemetry-using-operator_title-telemetry[Disabling telemetry data collection in {product-very-short}] section.
As an administrator, you can disable the telemetry data collection feature based on your needs. For example, in an air-gapped environment, you can disable this feature to avoid needless outbound requests affecting the responsiveness of the {product-very-short} application.

include::modules/analytics/proc-disabling-telemetry-using-operator.adoc[leveloffset=+1]

include::modules/analytics/proc-disabling-telemetry-using-helm.adoc[leveloffset=+1]
include::modules/analytics/proc-disabling-telemetry-using-helm.adoc[leveloffset=+1]
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
[id="assembly-install-rhdh-airgapped-environment-k8s-helm_{context}"]
= Installing {product} on a supported Kubernetes platform in an air-gapped environment with the Helm chart

If you are using a supported Kubernetes platform in a fully disconnected or partially disconnected environment, you can install {product} by using the Helm chart. Supported Kubernetes platforms include the following:
If you are using a supported Kubernetes platform in a fully disconnected or partially disconnected environment, you can install {product} by using the Helm chart.
Supported Kubernetes platforms include the following:

* {aks-brand-name}
* {eks-brand-name}
* {gke-brand-name}

[role="_additional-resources"]
.Additional resources
* link:https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.5/html/installing_red_hat_developer_hub_on_microsoft_azure_kubernetes_service/proc-rhdh-deploy-aks-helm_title-install-rhdh-aks[Deploying {product-short} on {aks-short} with the Helm chart].
* link:https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.5/html/installing_red_hat_developer_hub_on_amazon_elastic_kubernetes_service/proc-rhdh-deploy-eks-helm_title-install-rhdh-eksp[Installing {product-short} on {eks-short} with the Helm chart],
* link:https://docs.redhat.com/en/documentation/red_hat_developer_hub/1.5/html/installing_red_hat_developer_hub_on_google_kubernetes_engine/proc-rhdh-deploy-gke-helm_title-install-rhdh-gke[Installing {product-short} on {gke-short} with the Helm chart].

include::modules/installation/proc-install-rhdh-airgapped-full-k8s-helm.adoc[leveloffset=+1]

include::modules/installation/proc-install-rhdh-airgapped-partial-k8s-helm.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources
* {installing-on-aks-book-link}#proc-rhdh-deploy-aks-helm_title-install-rhdh-aks[Deploying {product-short} on {aks-short} with the Helm chart]
* {installing-on-eks-book-link}#proc-rhdh-deploy-eks-helm_title-install-rhdh-eks[Installing {product-short} on {eks-short} with the Helm chart]
* {installing-on-gke-book-link}#proc-rhdh-deploy-gke-helm_title-install-rhdh-gke[Installing {product-short} on {gke-short} with the Helm chart]
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ You can install {product} in a fully disconnected or partially disconnected envi

[role="_additional-resources"]
.Additional resources
* For more information about registry authentication, see https://access.redhat.com/RegistryAuthentication[{company-name} Container Registry Authentication].
* For more information about registry authentication, see link:https://access.redhat.com/articles/RegistryAuthentication[{company-name} Container Registry Authentication].

include::modules/installation/proc-install-rhdh-helm-airgapped-full.adoc[leveloffset=+1]

include::modules/installation/proc-install-rhdh-helm-airgapped-partial.adoc[leveloffset=+1]
include::modules/installation/proc-install-rhdh-helm-airgapped-partial.adoc[leveloffset=+1]
Loading