DSCResources/MSFT_SPFarm/MSFT_SPFarm.schema.mof

[ClassVersion("1.0.0.0"), FriendlyName("SPFarm")]
class MSFT_SPFarm : OMI_BaseResource
{
    [Key, Description("Specifies the resource is a single instance, the value must be 'Yes'"), ValueMap{"Yes"}, Values{"Yes"}] String IsSingleInstance;
    [Write, Description("Present to create/join the farm. Absent is currently not supported"), ValueMap{"Present","Absent"}, Values{"Present","Absent"}] String Ensure;
    [Required, Description("Name of the configuration database")] String FarmConfigDatabaseName;
    [Required, Description("Server that will host the configuration and admin content databases")] String DatabaseServer;
    [Required, Description("The account to use as the main farm account"), EmbeddedInstance("MSFT_Credential")] String FarmAccount;
    [Required, Description("The passphrase to use to allow servers to join this farm"), EmbeddedInstance("MSFT_Credential")] String Passphrase;
    [Required, Description("The name of the admin content database")] String AdminContentDatabaseName;
    [Required, Description("Should the central admin site run on this specific server?")] Boolean RunCentralAdmin;
    [Write, Description("Vanity URL for Central Administration")] String CentralAdministrationUrl;
    [Write, Description("What port will Central Admin be provisioned to - default is 9999")] Uint32 CentralAdministrationPort;
    [Write, Description("The authentication provider of the CentralAdministration web application"), ValueMap{"NTLM","Kerberos"}, Values{"NTLM","Kerberos"}] String CentralAdministrationAuth;
    [Write, Description("SharePoint 2016 & 2019 only - the MinRole role to enroll this server as"), ValueMap{"Application","ApplicationWithSearch","Custom","DistributedCache","Search","SingleServerFarm","WebFrontEnd","WebFrontEndWithDistributedCache"}, Values{"Application","ApplicationWithSearch","Custom","DistributedCache","Search","SingleServerFarm","WebFrontEnd","WebFrontEndWithDistributedCache"}] String ServerRole;
    [Write, Description("Specifies the state of the Developer Dashboard ('OnDemand' is SP2013 only)"), ValueMap{"Off","On","OnDemand"}, Values{"Off","On","OnDemand"}] String DeveloperDashboard;
    [Write, Description("Specifies the application credential key on the local server. Only supported for SP2019."), EmbeddedInstance("MSFT_Credential")] String ApplicationCredentialKey;
    [Write, Description("POWERSHELL 4 ONLY: The account to run this resource as, use PsDscRunAsCredential if using PowerShell 5"), EmbeddedInstance("MSFT_Credential")] String InstallAccount;
    [Write, Description("Should SQL Server authentication be used to connect to the database?")] Boolean UseSQLAuthentication;
    [Write, Description("If using SQL authentication, the SQL login to use to connect to the instance"), EmbeddedInstance("MSFT_Credential")] String DatabaseCredentials;
};