github.com/kyma-project/kyma-environment-broker@v0.0.1/docs/user/05-50-configure-list-of-modules.md (about)

     1  # Configure list of modules
     2  
     3  By default, Kyma Environment Broker (KEB) applies the Kyma custom resource, including the default modules selected by Kyma, to a cluster.
     4  You can configure your custom list of modules by setting the **modules** object in the JSON schema.
     5  To do that, use the following two fields:
     6  - **default** (bool) - defines whether to use the default list of modules
     7  - **list** (array) - defines a custom list of modules
     8  
     9  API for module configuration is built on the **oneOf** feature from the JSON schema. If the **modules** object is passed to API, it must have only one valid option. Thus, to pass JSON API Validator, you must set only one field. See examples below.
    10  
    11  ## Correct API calls
    12  
    13  - In the default mode, the **modules** object is set to `default: true` and modules are pre-selected by Kyma. The same happens when the **modules** section is not set at all (mapped to nil) in the payload.
    14  
    15     ```
    16     "modules": {
    17         "default": true
    18     }
    19     ```
    20  
    21  - If you want to use your custom modules' list configuration, you must pass the **list** with the modules you want installed.
    22  
    23     ```
    24     "modules": {
    25         "list": [
    26             {
    27                 "name": "btp-operator",
    28                 "customResourcePolicy": "CreateAndDelete"
    29             },
    30             {
    31                 "name": "keda",
    32                 "channel": "fast",
    33             }
    34         ]
    35     }
    36     ```
    37  
    38  - The following calls result in Kyma runtime installation without any modules.
    39  
    40     ```
    41     "modules": {
    42         "list": []
    43     }
    44     ```
    45  
    46     ```
    47     "modules": {
    48         "default": false
    49     }
    50     ```
    51  
    52  ## Incorrect API calls
    53  
    54  - A call with the **modules** section empty fails due to using the **oneOf** feature in the JSON schema.
    55  
    56     ```
    57     "modules": {}
    58     ```
    59  
    60  - A call with the **modules** section with both parameters filled in fails due to using the **oneOf** feature in the JSON schema.
    61  
    62     ```
    63     "modules": {
    64         "default": false,
    65         "list": [
    66             {
    67                 "name": "btp-operator",
    68                 "customResourcePolicy": "CreateAndDelete"
    69             },
    70             {
    71                 "name": "keda",
    72                 "channel": "fast",
    73             }
    74         ]
    75     }
    76     ```