The {product-very-short} container image preinstalls a set of dynamic plugins to enhance functionality. However, due to mandatory configuration requirements, the image disables most of the plugins.
You can enable and configure the plugins in the {product-very-short} container image. This includes how to manage the default configuration, set necessary environment variables, and ensure the proper functionality of the plugins within your application.
Note that as of 1.10, the latest version of the dynamic-plugins.default.yaml file exists in the plugin catalog index container image.
If you need a copy, you can do this:
unpack () {
if [[ ! $1 ]]; then
echo "Usage: unpack reg/org/container:tagorsha [file(s)-to-unpack-pattern]"
echo "Example: unpack quay.io/rhdh/plugin-catalog-index:1.10 dynamic-plugins.default.yaml"
else
local FILES=""
if [[ $2 ]]; then FILES="$2"; fi
local IMAGE="$1"
local DIR="${IMAGE//:/_}"
DIR="/tmp/${DIR//\//-}"
rm -fr "$DIR"; mkdir -p "$DIR"; container_id=$(podman create "${IMAGE}")
podman export $container_id -o /tmp/image.tar && tar xf /tmp/image.tar -C "${DIR}/" $FILES; podman rm $container_id; rm -f /tmp/image.tar
echo "Unpacked $IMAGE into $DIR"
cd $DIR;
if [[ $FILES ]]; then ls -la $FILES; else tree -d -L 3 -I "usr|root|buildinfo"; fi
fi
}
unpack registry.access.redhat.com/rhdh/plugin-catalog-index:1.10 dynamic-plugins.default.yaml
# or for a pre-GA CI container:
unpack quay.io/rhdh/plugin-catalog-index:1.10 dynamic-plugins.default.yamlOtherwise, you can use an oci:// plugin reference, and the special {{inherit}} tag will fetch the latest compatible plugin - including its default configuration - for your current {product-very-short} version.
-
You have deployed the {product-very-short} application, and have access to the logs of the
install-dynamic-pluginsinit container. -
You have the necessary permissions to change plugin configurations and access the application environment.
-
You have identified and set the required environment variables referenced by the plugin’s default configuration. You must define these environment variables in the Helm Chart or Operator configuration.
-
Start your {product-very-short} application and access the logs of the
install-dynamic-pluginsinit container within the {product-very-short} pod. -
Identify the {dynamic-plugins-reference-book-link}#red-hat-supported-plugins[Red Hat supported plugins] that the system disables by default.
-
If configuration beyond simply enabling the plugin is required, copy the package configuration from the
dynamic-plugins.default.yamlfile you extracted above. For plugins which require no configuration, you can simply reference the plugin and set it todisabled:falseas in the example below. -
To use the latest compatible plugin version, use the special tag
{{inherit}}; this will also load the default configuration, which you can then override. -
Open the plugin configuration file (Custom Resource or ConfigMap) and locate the plugin entry you want to enable.
The location of the plugin configuration file varies based on the deployment method. For more details, see {installing-and-viewing-plugins-book-link}[{installing-and-viewing-plugins-book-title}].
-
Change the
disabledfield tofalseand add the package name as follows:
plugins:
- package: oci://registry.access.redhat.com/rhdh/backstage-community-plugin-analytics-provider-segment:{{inherit}}
disabled: falseor using the deprecated wrapper syntax:
plugins:
- package: './dynamic-plugins/dist/backstage-community-plugin-analytics-provider-segment'
disabled: falseFor more information about how to configure dynamic plugins in {product-short}, see {configuring-dynamic-plugins-book-link}[{configuring-dynamic-plugins-book-title}].
-
Restart the {product-very-short} application and verify that the plugin is successfully activated and configured.
-
Verify the application logs for confirmation and ensure the plugin is functioning as expected.