Configuring bundle availability for controllers

2 minute readScalabilityAutomation

Before you set up a controller, you must configure the availability pattern for bundles and specify the bundles that can be assigned to the controllers from the controller configuration screen.

Once you have configured bundle availability and set up a controller, users with the Configure permission can access the controller configuration screen to assign a different bundle to the controller.
CasC bundle validation is automatically performed when the bundle is added to the operations center. If problems are detected, error and warning messages are displayed on the Configuration as Code bundles screen. For more information, refer to Troubleshooting CasC for controllers.

To configure the bundle availability:

  1. Ensure you are signed in to the operations center as a user with the Administer permission.

  2. From the operations center dashboard, in the left pane, select Manage Jenkins.

  3. Select Configuration as Code bundles. For each bundle, the following attributes are displayed:

    • Bundle name: The bundle name. It matches the name of the directory containing the bundle in the filesystem.

    • Used by: The names of controllers assigned to the bundle.

    • Availability pattern: The full path to one or more controllers in the operations center that can use the bundle.

    • Save: When selected, the bundle uses the availability pattern defined in the UI and the availability pattern configured in the UI icon is displayed.

    • Clear: When selected, the bundle uses the availability pattern defined in the bundle.yaml file and the availability pattern configured in the bundle icon is displayed.

    • Available for: Controllers that can be assigned to the bundle based on the Availability pattern.

  4. Define the Availability pattern for the controller. This is the full path to the controllers that can use the bundle and specifies the bundles you can assign to a controller from the controller configuration screen. The availability pattern must be a regular expression and use the Java implementation of regular expression pattern matching.

    Table 1. Availability pattern examples
    Example scenario Example Availability pattern

    A controller with the name "casc-controller" created directly in the root of operations center.

    casc-controller

    A controller with the name "casc-controller" created inside the "folder1" folder.

    folder1/casc-controller

    Two controllers with the name "casc-controller-1" and "casc-controller-2", created directly in the root of operations center.

    casc-controller-\d

    Any controller.

    .*

    Any controller in the "folder1" folder.

    folder1/.*

    All Team controllers

    Teams/.*

    When defining the availability pattern, you have the following options:

    • Option 1 (default): Define the availability pattern in the bundle.yaml file and select Clear. The availability pattern configured in the bundle icon is displayed. For more information, refer to bundle.yaml.

    • Option 2: Define the availability pattern in the Availability pattern field and select Save. The availability pattern configured in the UI icon is displayed.

    • Option 3: Leave the Availability pattern field empty. Under Settings, select the Availability pattern checkbox and select Save. When the Availability pattern field is empty, the bundle can be used by any controller. This option provides more flexibility, but is less secure.

  5. Optionally, select a Default bundle to pre-select a bundle in the controller configuration screen when setting up a new controller.

    Selecting a Default bundle does not assign the bundle to a controller. When setting up a new controller, you must select Save or Apply from the controller configuration screen to assign the pre-selected bundle to the controller.