{
  "$schema": "https://json-schema.org/schema",
  "$id": "Configuration",
  "title": "",
  "type": "object",
  "properties": {
    "project": {
      "type": "string",
      "description": "The project that the target should be added to.",
      "$default": {
        "$source": "projectName"
      },
      "x-dropdown": "projects",
      "x-prompt": "Which project should a target be created for?"
    },
    "user": {
      "type": "object",
      "description": "User information to use when authoring deployment commit",
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the user",
          "default": "GitHub Actions"
        },
        "email": {
          "type": "string",
          "description": "Email of the user",
          "default": ""
        }
      }
    },
    "targetName": {
      "type": "string",
      "description": "The name of the target to add.",
      "default": "deploy"
    },
    "preview": {
      "type": "boolean",
      "description": "Configure the deploy target for PR preview deployments. The executor auto-detects pull request context at runtime, so the same `deploy` target publishes a normal release outside of PRs and a `pr/<N>` preview when running in a PR.",
      "default": false
    },
    "previewUrl": {
      "type": "string",
      "description": "Base URL where previews will be hosted (used to build the PR comment link). Only applied when `preview` is true."
    },
    "addCleanupTarget": {
      "type": "boolean",
      "description": "Also add a `cleanup-previews` target that removes stale PR preview deployments.",
      "default": false
    }
  },
  "required": ["project"]
}
