AzureDevOpsDscNative.AzDoGroupEntitlement.dsc.adaptedResource.json

{
  "$schema": "https://aka.ms/dsc/schemas/v3/bundled/adaptedresource/manifest.json",
  "type": "AzureDevOpsDscNative/AzDoGroupEntitlement",
  "kind": "resource",
  "version": "1.1.0",
  "capabilities": [
    "set",
    "test",
    "get"
  ],
  "description": "DSC resource for managing Azure DevOps group licensing rules.",
  "author": "ZanattaMichael",
  "requireAdapter": "Microsoft.Adapter/PowerShell",
  "path": "AzureDevOpsDscNative.psd1",
  "schema": {
    "embedded": {
      "additionalProperties": false,
      "type": "object",
      "description": "DSC resource for managing Azure DevOps group licensing rules.",
      "title": "AzureDevOpsDscNative/AzDoGroupEntitlement",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "Ensure": {
          "type": "string",
          "enum": [
            "Present",
            "Absent"
          ],
          "title": "Ensure",
          "description": "The Ensure property."
        },
        "LookupResult": {
          "type": "object",
          "title": "LookupResult",
          "readOnly": true,
          "description": "The LookupResult property."
        },
        "GroupDisplayName": {
          "type": "string",
          "title": "GroupDisplayName",
          "description": "The display name or principal name of the group the rule applies to."
        },
        "AccountLicenseType": {
          "type": "string",
          "title": "AccountLicenseType",
          "description": "The access level the rule assigns, for example 'express' (Basic), 'stakeholder' or 'advanced'."
        },
        "GroupOrigin": {
          "type": "string",
          "enum": [
            "aad",
            "vsts"
          ],
          "title": "GroupOrigin",
          "description": "The identity origin: 'aad' for a Microsoft Entra group, 'vsts' for an Azure DevOps group. Defaults to 'aad'."
        },
        "GroupOriginId": {
          "type": "string",
          "title": "GroupOriginId",
          "description": "The Entra object id of the group. Supplying it makes creation unambiguous when several groups share a display name."
        }
      },
      "required": [
        "GroupDisplayName"
      ]
    }
  }
}