/Nuke.WebDeploy

WebDeploy AddIn for NUKE Build

Primary LanguageC#MIT LicenseMIT

Nuke.WebDeploy

Build Status

Built with Nuke

NuGet MyGet

This plugin provides Microsoft WebDeploy functionality for the NUKE Build system. It relies on the Microsoft.Web.Deployment NuGet package and therefore only supports builds on Windows. The functionality is quite limited right now, allowing only to deploy to an IIS or Azure app. Contributions are welcome!

The code is based on Cake.WebDeploy.

Link to documentation.

CI Builds

All builds are available on MyGet:

https://www.myget.org/F/dangl/api/v2
https://www.myget.org/F/dangl/api/v3/index.json

Example

Target Deploy => _ => _
    .DependsOn(Publish)
    .Requires(() => WebDeployUsername)
    .Requires(() => WebDeployPassword)
    .Requires(() => WebDeployPublishUrl)
    .Requires(() => WebDeploySiteName)
    .Executes(() =>
    {
        WebDeploy(s => s
                    .SetSourcePath(OutputDirectory)
                    .SetUsername(WebDeployUsername)
                    .SetPassword(WebDeployPassword)
                    .SetEnableAppOfflineRule(true)
                    .SetPublishUrl(WebDeployPublishUrl)
                    .SetSiteName(WebDeploySiteName)
                    .SetWrapAppOffline(true));
    });

The PublishUrl should include the site parameter, e.g.:

https://appname.scm.azurewebsites.net:443/msdeploy.axd?site=appname

License

This project is available under the MIT license.