{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/plagiarize-yaml/latest.json",
  "title": "Plagiarize configuration",
  "description": "plagiarize.yaml configuration schema",
  "x-lintel": {
    "source": "https://www.schemastore.org/plagiarize.json",
    "sourceSha256": "090019dd98a1687587e2e8fe9b5f598c6f99b9d6151ba541d031d2ad25806517",
    "fileMatch": [
      "plagiarize.yaml",
      "plagiarize.json"
    ],
    "parsers": [
      "json",
      "yaml"
    ]
  },
  "type": "object",
  "properties": {
    "repo": {
      "required": [
        "url"
      ],
      "type": "object",
      "description": "Configuration for strings, files, and file paths to replace in target file",
      "properties": {
        "url": {
          "description": "Git url of project to plagiarize",
          "type": "string"
        },
        "checkout": {
          "description": "Branch, tag, or commit to checkout from project to be plagiarized",
          "type": "string"
        }
      }
    },
    "strings": {
      "type": "object",
      "description": "Strings to find in target project and be replaced with plagiarized project's values",
      "properties": {
        "project": {
          "type": "string"
        }
      },
      "required": [
        "project"
      ],
      "additionalProperties": {
        "type": [
          "string",
          "integer",
          "boolean"
        ]
      }
    },
    "vars": {
      "type": "object",
      "description": "Variables available to be used for finding and replacing by variable name. For example `$var_name: hello` would replace string '$var_name' with 'hello' in target project",
      "additionalProperties": {
        "type": [
          "string",
          "integer",
          "boolean"
        ]
      }
    }
  },
  "required": [
    "repo",
    "strings"
  ],
  "id": "https://json.schemastore.org/plagiarize"
}
