Loading...
Area: Episerver DXC Service
Applies to versions: Not applicable

Code packages

This topic describes how to create code packages when deploying through the Deployment API for Episerver Digital Experience Service.

Code package naming convention

The first step to use the API is to bundle your web application into a code package. Use the following conventions when you name a code package (a package containing web app binaries, configuration and so on).

<app name>.<package type>.app.<version>.nupkg
  • App name. Optional.
  • Package types. Values are:
    • cms (primary web app)
    • commerce (commerce manager)
  • Version. You can specify in different ways such as using a "date format" or a version number.

Examples

cms.app.1.0.0.nupkg
customer.cms.app.1.0.0.nupkg ("customer" being the "app name")
commerce.app.20190311103000.nupkg (version defined in a date/time format)

Code package content

The package should contain the web app-related files, which normally exists at the path D:\Home\Site on the actual Azure Web App.

Only folders and files related to the code are allowed (that is, wwwroot, applicationHost.xdt), except for a metadata file (optional) that should follow the package name.

Sample folder structure

  • myapp.cms.app.1.0.0.nupkg
    • wwwroot
      • App_Data
        • jobs
          • continuous
            • WebJob
              • Run.cmd
              • ...
              • ...
              • ...
      • Web.config
      • Web.Integration.config
      • Web.Preproduction.config
      • Web.Production.config
    • applicationHost.xdt
    • applicationHost.Preproduction.xdt
    • applicationHost.Production.xdt
    • myapp.cms.app.nuspec (optional)

Transforms in any target environment needs to be a part of the initial code package.

You can download an Alloy package example here: alloy.cms.app.1.2.1.nupkg

Creating a code package using MSBuild

You can create a package by deploying to a folder and zipping this folder.

Example using MSBuild:

msbuild /p:Configuration=Release;DeployOnBuild=True;DeployDefaultTarget=WebPublish;WebPublishMethod=FileSystem;PublishProvider=FileSystem;LastUsedBuildConfiguration=Release;ExcludeApp_Data=False;publishUrl=..\SitePackageContent\wwwroot;DeleteExistingFiles=False

You can zip this folder (SitePackageContent in the example) as cms.app.1.0.0.nupkg  to make it a deployment package that you can use in DXC.

Last updated: Oct 17, 2019