DSCResources/DSC_SqlWaitForAG/en-US/about_SqlWaitForAG.help.txt

.NAME
    SqlWaitForAG
 
.DESCRIPTION
    The SqlWaitForAG DSC resource will wait for a cluster role/group to be
    created. When the cluster group is found it will wait for the availability group to become available.
    When the availability group has been found the resource will wait the amount of time specified
    in the parameter RetryIntervalSec before returning.
 
    ## Requirements
 
    * Target machine must be running Windows Server 2012 or later.
    * Target machine must be running SQL Server Database Engine 2012 or later.
    * Target machine must have access to the Failover Cluster PowerShell module.
 
    ## Security Requirements
 
    * The account running this resource must have permission in the cluster to be able
      to run the cmdlet Get-ClusterGroup.
 
    ## Known issues
 
    All issues are not listed here, see https://github.com/dsccommunity/SqlServerDsc/issues?q=is%3Aissue+is%3Aopen+in%3Atitle+SqlWaitForAG.
 
.PARAMETER InstanceName
    Key - String
    The name of the SQL Server instance to be configured.
 
.PARAMETER ServerName
    Write - String
    The host name of the SQL Server to be configured. Default value is the current computer name.
 
.PARAMETER Name
    Key - String
    Name of the cluster role/group to look for (normally the same as the Availability Group name).
 
.PARAMETER RetryIntervalSec
    Write - UInt64
    The interval, in seconds, to check for the presence of the cluster role/group. Default value is 20 seconds. When the cluster role/group has been found the resource will wait for this amount of time once more before returning.
 
.PARAMETER RetryCount
    Write - UInt32
    Maximum number of retries until the resource will timeout and throw an error. Default values is 30 times.
 
.PARAMETER GroupExist
    Read - Boolean
    Returns $true if the cluster role/group exist, otherwise it returns $false. Used by Get.
 
.EXAMPLE 1
 
This example will wait for the cluster role/group 'AGTest1'.
 
Configuration Example
{
    param
    (
        [Parameter(Mandatory = $true)]
        [System.Management.Automation.PSCredential]
        $SqlAdministratorCredential
    )
 
    Import-DscResource -ModuleName 'SqlServerDsc'
 
    node localhost
    {
        SqlWaitForAG 'SQLConfigureAG-WaitAGTest1'
        {
            Name = 'AGTest1'
            RetryIntervalSec = 20
            RetryCount = 30
            InstanceName = 'MSSQLSERVER'
 
            PsDscRunAsCredential = $SqlAdministratorCredential
        }
    }
}
 
.EXAMPLE 2
 
This example will wait for both the cluster roles/groups 'AGTest1' and 'AGTest2'.
 
Configuration Example
{
    param
    (
        [Parameter(Mandatory = $true)]
        [System.Management.Automation.PSCredential]
        $SqlAdministratorCredential
    )
 
    Import-DscResource -ModuleName 'SqlServerDsc'
 
    node localhost
    {
        SqlWaitForAG 'SQLConfigureAG-WaitAGTest1'
        {
            Name = 'AGTest1'
            RetryIntervalSec = 20
            RetryCount = 30
            InstanceName = 'MSSQLSERVER'
 
            PsDscRunAsCredential = $SqlAdministratorCredential
        }
 
        SqlWaitForAG 'SQLConfigureAG-WaitAGTest2'
        {
            Name = 'AGTest2'
            RetryIntervalSec = 20
            RetryCount = 30
            InstanceName = 'MSSQLSERVER'
 
            PsDscRunAsCredential = $SqlAdministratorCredential
        }
    }
}