github.com/GoogleCloudPlatform/testgrid@v0.0.174/cmd/config_merger/README.md (about)

     1  # Config Merger
     2  This component validates and combines two or more [config proto] files into a single TestGrid
     3  configuration (also a config proto). This config is used by basically every other component in TestGrid.
     4  
     5  ## Local development
     6  See also [common tips](/cmd/README.md) for running locally.
     7  
     8  ```bash
     9    --config-list=/tmp/testgrid/my-config-list.yaml \  # See 'Configuration List' below for details.
    10    # --confirm \
    11  ```
    12  
    13  ## Configuration List
    14  The config merger requires a YAML file containing:
    15  - a list of the configurations its trying to merge
    16  - a location to put the final configuration
    17  
    18  The `--config-list` flag should point to a file like this:
    19  
    20  ```yaml
    21  target: "gs://path/to/write/config"         # Final result goes here
    22  sources:
    23  - name: "red"                               # Used in renaming
    24    location: "gs://example/red-team/config"  
    25    contact: "red-admin@example.com"          # Used for cross-team communication, not yet by config_merger
    26  - name: "blue"
    27    location: "gs://example/blue-team/config"
    28    contact: "blue.team.contact@example.com"
    29  ```
    30  
    31  ### Renaming
    32  Test Groups, Dashboards, and Dashboard Groups may be renamed to prevent
    33  duplicates in the final config. In this case, the `name` in the config list
    34  is added as a prefix, giving precedence by alphabetical order.
    35  
    36  For example, if both configurations in the example above contain a dashboard 
    37  named `"foo"`, the red dashboard will be renamed to `"red-foo"`.
    38  
    39  [config proto]: /pb/config/config.proto