DSCResources/MSFT_xSPSearchServiceApp/MSFT_xSPSearchServiceApp.schema.mof

/*
**Description**
 
This resource is responsible for provisioning the search service application.
The current version lets you specify the database name and server, as well as the application pool.
If the application pool is changed the DSC resource will set it back as per what is set in the resource.
The database name parameter is used as the prefix for all search databases (so you will end up with one for the admin database which matches the name, and then "_analyticsreportingstore", "_crawlstore" and "_linkstore" databases as well).
 
**Example**
 
    xSPSearchServiceApp SearchServiceApp
    {
        Name = "Search Service Application"
        DatabaseName = "SP_Search"
        ApplicationPool = "SharePoint Service Applications"
        PsDscRunAsCredential = $InstallAccount
    }
*/
[ClassVersion("1.0.0.0"), FriendlyName("xSPSearchServiceApp")]
class MSFT_xSPSearchServiceApp : OMI_BaseResource
{
    [Key, Description("The name of the search service application")] string Name;
    [Required, Description("The application pool that it should run in")] string ApplicationPool;
    [Write, Description("The name of the database (noting that some search databases will use this as a prefix)")] string DatabaseName;
    [Write, Description("The server that host the databases for this service application")] string DatabaseServer;
    [Write, Description("The default content access account for this search service app"), EmbeddedInstance("MSFT_Credential")] String DefaultContentAccessAccount;
    [Write, Description("POWERSHELL 4 ONLY: The account to run this resource as, use PsDscRunAsAccount if using PowerShell 5"), EmbeddedInstance("MSFT_Credential")] String InstallAccount;
};