diff --git a/README.md b/README.md index f874ca6..5c44df4 100644 --- a/README.md +++ b/README.md @@ -21,12 +21,22 @@ The **Skyline.DataMiner.CICD.Tools.GitHubToCatalogYaml** tool automates the crea | Variable: `CATALOGIDENTIFIER` | `Id` | If not specified in the existing YAML or as a variable, an identifier is generated automatically for each catalog entry. | | Owners | `Owners` | Customizable, with owner email, name, and URL settings. | -## Auto-Generated Catalog YAML File +## **Auto-Generated Catalog YAML File** -This tool not only extends an existing `catalog.yml` or `manifest.yml` but also generates an `auto-generated-catalog.yml` file in the `.githubtocatalog` directory. This secondary file is essential because: +**WARNING! DO NOT MODIFY THIS FILE.** -1. **Tracking Catalog IDs**: By committing and pushing `auto-generated-catalog.yml`, the tool can create a unique ID on the first run and reuse this ID on future runs. This avoids duplicate catalog records that can occur if new IDs are generated in every workflow run. -2. **Workflow Automation**: The `auto-generated-catalog.yml` is maintained separately to allow other processes to retrieve it as needed without modifying the primary catalog file in each update. +This tool generates an `auto-generated-catalog.yml` file in the `.githubtocatalog` directory, alongside extending any existing `catalog.yml` or `manifest.yml` file. This auto-generated file is critical for the following reasons: + +1. **Tracking Catalog IDs:** + Committing and pushing the `auto-generated-catalog.yml` allows the tool to create a unique Catalog ID on the first run and reuse it for future runs. This prevents duplicate catalog records, which can occur if new IDs are generated with each workflow run. + +2. **Workflow Automation:** + The `auto-generated-catalog.yml` is maintained separately, enabling other processes to access it without modifying the primary catalog file during updates. + +## **Primary Catalog YAML File** + +If you wish to make adjustments based on the `auto-generated-catalog.yml` file, you can do so by creating a `catalog.yml` file in the root of your repository. +This file does not have to contain all the fields, only the ones you wish to change will suffice. ## Inferring Catalog Item Type diff --git a/Skyline.DataMiner.CICD.Tools.GitHubToCatalogYaml/CatalogYaml.cs b/Skyline.DataMiner.CICD.Tools.GitHubToCatalogYaml/CatalogYaml.cs index 11c7488..060e4a5 100644 --- a/Skyline.DataMiner.CICD.Tools.GitHubToCatalogYaml/CatalogYaml.cs +++ b/Skyline.DataMiner.CICD.Tools.GitHubToCatalogYaml/CatalogYaml.cs @@ -53,7 +53,9 @@ public class CatalogYaml " Cannot contain newlines.\r\n" + " Cannot contain leading or trailing whitespace characters."; - private const string typeComment = "[Required]\r\n" + + private const string typeComment = "WARNING! DO NOT CHANGE THIS FILE.\r\n" + + "If you wish to make adjustments based on the `auto-generated-catalog.yml` file, you can do so by creating a `catalog.yml` file in the root of your repository.\r\n\r\n" + + "[Required]\r\n" + "Possible values for the Catalog item that can be deployed on a DataMiner System:\r\n" + " - automationscript: If the Catalog item is a general-purpose DataMiner Automation script.\r\n" + " - lifecycleserviceorchestration: If the Catalog item is a DataMiner Automation script designed to manage the life cycle of a service.\r\n" +