ExtensionSettings [SPFSDK][VMROLE]

 

Applies To: Windows Azure Pack

The ExtensionSettings object contains the configuration of the resource extension, which includes the application profile and payload information.

Type Hierarchy

ResourceExtension [SPFSDK][VMROLE].ExtensionSettings

Syntax

{
    "SchemaVersion": "1.0.0.0",

    "ApplicationProfile": {
        "Name": "ApplicationProfile1",

        "ApplicationPayload": [
            {
                "ID": "49c1ccdb-9068-4b91-9409-0a7ca8a1d291",
                "RelativePath": "sharepointfiles"
            },
        ],

        "LinuxApplicationProfile": { <LinuxApplicationProfile> },
        "WindowsApplicationProfile": { <WindowsApplicationProfile> }
    }
}

Properties

Name

Type

Required

Default value

Description

SchemaVersion

String

Yes

None

The version of the extension setting schema, which is always 1.0.0.0.

ApplicationProfile

ApplicationProfile

Yes

None

The applications and in-guest configuration that you want to set for the virtual machine.

ApplicationProfile

Name

Type

Required

Default Value

Description

Name

String

Yes

None

The version of the extension setting schema, which is always 1.0.0.0.

ApplicationPayload

Array of ApplicationPayload

No

None

The array of applications and in-guest configuration that you want for the virtual machine.

LinuxApplicationProfile

ApplicationProfile.LinuxApplicationProfile [SPFSDK][VMROLE]

No

null

The applications to run on a Linux-based virtual machine.

WindowsApplicationProfile

ApplicationProfile.WindowsApplicationProfile [SPFSDK][VMROLE]

No

null

The applications to run on a Windows-based virtual machine.

ApplicationPayload

Name

Type

Required

Default Value

Description

ID

String

Yes

None

A unique identifier, such as a GUID, to identify the payload.

RelativePath

String

Yes

None

The path, relative to the DataPackage.Location path, of a file or folder.

Remarks

The following code example provides a sample ExtensionSettings object.

{
    "SchemaVersion": "1.0.0.0",

    "ApplicationProfile": {
        "Name": "ApplicationProfile1",

        "ApplicationPayload": [
            {
                "ID": "49c1ccdb-9068-4b91-9409-0a7ca8a1d291",
                "RelativePath": "sharepointfiles"
            }
        ],

        "LinuxApplicationProfile": {
            "RunOnceCommands": [
                "ifconfig"
            ]
        },

        "WindowsApplicationProfile": {
            "WindowsServerRolesAndFeatures": [
                "TFTP-Client"
            ],

            "SQLProfile": {
                "SQLDeployments": [
                    {
                        "DeploymentName": "SQL Deployment 1",
                        "InstanceName": "[Param.SQLInstance]",
                        "InstanceID": "[Param.SQLInstance]",
                        "EnableNamedPipes": false,
                        "EnableTCP": true,
                        "MediaSource": "c:\\SQLMediaPath\\sqlsetup.exe",
                        "ProductKey": "abcdefghijklmnopqrstuvwxyz",
                        "SQLAuthenticationType": "WindowsAuthentication",
                        "SQLSysAdminMemberList": "domain\\user",
                        "DeploymentTimeOutInSeconds": 3600,
                        "SQLConfigurationPayloadId": "61A33949-46CE-4d0f-921F-A0059DA9AD1F",
                        "SAPassword": "MySAPassword",

                        "SQLDeploymentCredential": "domain\\user:password",
                        "SQLAgentServiceCredential": "NT AUTHORITY\\System:",
                        "SQLServiceCredential": "NT AUTHORITY\\NetworkService:",
                        "SQLReportingServiceCredential": "domain\\user:password"
                    }
                ]
            },

            "ProvisioningScripts": [
                {
                    "AlwaysReboot": false,
                    "ApplicationPayloadId": "49c1ccdb-9068-4b91-9409-0a7ca8a1d291",
                    "DeploymentOrder": 1,
                    "ErrorPolicy": "FailOnMatch",
                    "ExecutableAndParams": {
                        "Executable": "cmd.exe",
                        "Parameters": "/q /c msiexec sharepoint.msi"
                    },
                    "ExitCodeRegex": "[1-9][0-9]*",
                    "MaxOutputSize": 1048576,
                    "RebootExitCodeRegex": "{1641}|{3010}|{3011}",
                    "RestartOnRetry": false,
                    "ScriptBlock": null,
                    "ScriptCredential": "domain\\user:password",
                    "ScriptType": "PreInstall",
                    "StandardErrorPath": "c:\\err.txt",
                    "StandardErrorRegex": ".+",
                    "StandardInput": null,
                    "StandardOutputPath": "c:\\out.txt",
                    "StandardOutputRegex": null,
                    "TimeoutInSeconds": 900,
                    "WorkingDirectory": null
                }
            ],
            "WebDeployApplications": [
                {
                    "DeploymentName": "WebDeploy App 1",

                    "ScriptCommands": [
                        {
                            "AlwaysReboot": false,
                            "ApplicationPayloadId": "366819c2-bf11-4c85-9555- 6293e2a3ce7b",
                            "ErrorPolicy": "FailOnMatch",
                            "ExecutableAndParams": {
                                "Executable": "cmd.exe",
                                "Parameters": "/q /c installwebdeploy.cmd"
                            },
                            "ExitCodeRegex": "[1-9][0-9]*",
                            "MaxOutputSize": 1048576,
                            "RebootExitCodeRegex": "{1641}|{3010}|{3011}",
                            "RestartOnRetry": false,
                            "ScriptBlock": null,
                            "ScriptCredential": "domain\\user:password",
                            "ScriptType": "PreInstall",
                            "StandardErrorPath": "c:\\err.txt",
                            "StandardErrorRegex": ".+",
                            "StandardInput": null,
                            "StandardOutputPath": "c:\\out.txt",
                            "StandardOutputRegex": null,
                            "TimeoutInSeconds": 900,
                            "WorkingDirectory": null
                        }
                    ],

                    "DeploymentName": "Deployment1",
                    "ApplicationPayloadId": "371ade4c-03a2-492d-9589-b399b940e44f",
                    "PackagePassword": "mypassword2",
                    "WebDeployParameters": [
                        {
                            "ParameterName": "CONNECTION_STRING",
                            "Value": "[Param.ConnectionString]"
                        }
                    ]
                }
            ],

            "SQLDacApplications": [
                {
                    "DeploymentName": "SQL App 1",

                    "ScriptCommands": [
                        {
                            "AlwaysReboot": false,
                            "ApplicationPayloadId": null,
                            "ErrorPolicy": "FailOnMatch",
                            "ExecutableAndParams": null,
                            "ExitCodeRegex": "[1-9][0-9]*",
                            "MaxOutputSize": 1048576,
                            "RebootExitCodeRegex": "{1641}|{3010}|{3011}",
                            "RestartOnRetry": false,
                            "ScriptBlock": "rem some script that needs to run before sqldac package is installed",
                            "ScriptCredential": {
                                "Password": "mypassword4",
                                "UserName": "dcmanagerlab\\esdcvsec4"
                            },
                            "ScriptType": "PreInstall",
                            "StandardErrorPath": "c:\\err.txt",
                            "StandardErrorRegex": ".+",
                            "StandardInput": null,
                            "StandardOutputPath": "c:\\out.txt",
                            "StandardOutputRegex": null,
                            "TimeoutInSeconds": 900,
                            "WorkingDirectory": null
                        }
                    ],

                    "SQLScriptCommands": [
                        {
                            "DatabaseName": "[Param.SharepointDB]",
                            "DeploymentOrder": 1,
                            "EncryptConnection": false,
                            "ExecutionTimeoutSeconds": 500,
                            "LoginTimeoutSeconds": 50,
                            "OutputFilePath": "c:\\sharepointDB.sql.log",
                            "SQLAuthenticationType": "WindowsAuthentication",
                            "SQLScriptApplicationPayloadId": "db04416b-d0a8-44d5-b0ee-d5739378a98d",
                            "ScriptCredential": "[Param.SQLScriptCommandCredential]",
                            "ScriptType": "PostInstall"
                        }
                    ],

                    "DeploymentName": "Deployment1",
                    "ApplicationPayloadId": "5b064b6a-d6d0-48f0-8979-9aafc676a9e5",
                    "BlockOnChanges": false,
                    "DacInstance": "[Param.SharepointDB]",
                    "IgnoreDataLoss": false,
                    "RollbackOnFailure": true,
                    "SQLAuthenticationType": "WindowsAuthentication",

                    "SQLDeploymentCredential": "[param.SQLDeploymentCredential]",

                    "SQLInstance": "[Param.SQLInstance]",
                    "SkipPolicyValidation": true,
                    "UninstallMode": "DropDatabase"
                }
            ],

            "ScriptApplications": [
                {
                    "DeploymentName": "ScriptDeployment1",

                    "ScriptCommands": [
                        {
                            "AlwaysReboot": false,
                            "ApplicationPayloadId": "366819c2-bf11-4c85-9555- 6293e2a3ce7b",
                            "ErrorPolicy": "FailOnMatch",
                            "ExecutableAndParams": {
                                "Executable": "cmd.exe",
                                "Parameters": "/q /c installwebdeploy.cmd"
                            },
                            "ExitCodeRegex": "[1-9][0-9]*",
                            "MaxOutputSize": 1048576,
                            "RebootExitCodeRegex": "{1641}|{3010}|{3011}",
                            "RestartOnRetry": false,
                            "ScriptBlock": null,
                            "ScriptCredential": "domain\\user:mypassword",
                            "ScriptType": "PreInstall",
                            "StandardErrorPath": "c:\err.txt",
                            "StandardErrorRegex": ".+",
                            "StandardInput": null,
                            "StandardOutputPath": "c:\out.txt",
                            "StandardOutputRegex": null,
                            "TimeoutInSeconds": 900,
                            "WorkingDirectory": null
                        }
                    ],

                    "EnvironmentVariables": [
                        {
                            "Name": "envvar1",
                            "Value": "foo",
                        },
                        {
                            "Name": "envvar2",
                            "Value": "bar",
                        },
                    ],

                    "AlwaysReboot": false,
                    "ApplicationPayloadId": "49c1ccdb-9068-4b91-9409-0a7ca8a1d291",
                    "ErrorPolicy": "FailOnMatch",
                    "ExecutableAndParams": {
                        "Executable": "cmd.exe",
                        "Parameters": "/q /c msiexec sharepoint.msi"
                    },
                    "ExitCodeRegex": "[1-9][0-9]*",
                    "MaxOutputSize": 1048576,
                    "RebootExitCodeRegex": "{1641}|{3010}|{3011}",
                    "ScriptBlock": null,
                    "ScriptCredential": "username:password",
                    "StandardErrorPath": "c:\err.txt",
                    "StandardErrorRegex": ".+",
                    "StandardInput": null,
                    "StandardOutputPath": "c:\out.txt",
                    "StandardOutputRegex": null,
                    "TimeoutInSeconds": 900,
                    "WorkingDirectory": null
                }
            ]
        }
    }
}

See Also

ResourceExtension [SPFSDK][VMROLE]
ApplicationProfile.LinuxApplicationProfile [SPFSDK][VMROLE]
ApplicationProfile.WindowsApplicationProfile [SPFSDK][VMROLE]
ResourceRequirements [SPFSDK][VMROLE]