Configure EXM for deployment on the Azure App Service

Last updated Thursday, August 17, 2017 in Email Experience Manager for Administrator, Developer
Keywords: Azure, Cloud, Configuration

The EXM module installation is fully integrated with Sitecore and supports the Sitecore configurations of XP0 and XP.

This topic describes how to:

Note

Depending on which environment you want to configure (XP0 or XP), after you have prepared to deploy EXM and injected the EXM module into the Sitecore XP .parameters.json file, you either Integrate an EXM deployment into a Sitecore XP0 environment or Populate the EXM module parameters for a Sitecore XP environment.

Prepare your system requirements

To install the Email Experience Manager (EXM) module as part of the Sitecore XP installation on the Azure App Service, you must have the following:

  • Sitecore XP 8.2 Update-5 or later
  • Email Experience Manager 3.5
  • Sitecore Azure Toolkit 1.1

Prepare to deploy EXM

To prepare to deploy the EXM module:

  1. Download the Web Deploy Packages (WDPs) for EXM.
  2. Upload the WDPs to a storage account.
  3. Locate the EXM template for your topology on GitHub.
  4. Inject the EXM module into the Sitecore XP .parameters.json file for your topology.

Inject EXM into the Sitecore XP .parameters.json file

To inject the EXM module into the Sitecore XP .parameters.json file for your topology:

  1. Go to Deploy a new Sitecore environment to the Azure App service, Download and configure section, and ensure you have a .parameters.json file for your Sitecore environment.
  2. Add the modules parameter to the .parameters.json file and configure the Bootloader module for a Sitecore deployment.

Integrate an EXM deployment into a Sitecore XP0 environment

To integrate an EXM deployment into a Sitecore XP0 environment deployment:

  1. In the .parameters.json file, add the following snippet to the modules parameter:
    {... ,
    "modules": {
    "value": {
    "items": [
    ... ,
    {
    "name" : "EXM",
    "templateLink" : "<url of EXM azuredeploy.json for XP0 
    configuration>",
    "parameters" : {
    /*
    "templateLinkAccessToken": "<access token for the nested 
    templates>",
    */
    "singleExmMsDeployPackageUrl": "<WDP URL for 
    single.scwdp.zip>",
    "exmSampleNewsletterMsDeployPackageUrl": "<WDP URL for Sample 
    Newsletter>",
    "exmSampleNewsletterFileMsDeployPackageUrl": "<WDP URL for 
    Sample Newsletter files>",
    "cryptographicKey": "<Cryptographic key hex string>",
    "authenticationKey": "<UI authentication key string>"
    }
    }
    ]
    }
    }
    }
  2. Populate the parameters for the EXM module as follows:

    Parameter

    Description

    templateLink

    The URL of the EXM azuredeploy.json file on GitHub or a storage account that includes any access token.

    singleExmMsDeployPackageUrl

    The URL of a single.scwdp.zip package for EXM.

    exmSampleNewsletterMsDeployPackageUrl

    The URL of a Sample Newsletter package for EXM.

    exmSampleNewsletterFileMsDeployPackageUrl

    The URL of a Sample Newsletter Files package for EXM.

    cryptographicKey

    The cryptographic key has a hexadecimal value that starts with 0x and has a minimum length of 34 characters.

    authenticationKey

    The authentication key for the REST API services has a string value and a minimum length of 16 characters.

    (optional) templateLinkAccessToken

    The access token is for the nested infrastructure and application templates.

  3. Go to Deploy a new Sitecore environment to the Azure App Service, Invoke the deployment section, and run your Sitecore deployment as usual.

Populate the EXM module parameters for a Sitecore XP environment

To integrate your EXM deployment into the Sitecore XP environment deployment:

  1. In the .parameters.json file, add the following snippet to the modules parameter:
    {... ,
    "modules": {
    "value": {
    "items": [
    ... ,
    {
    "name" : "EXM",
    "templateLink" : "<url of EXM azuredeploy.json for XP 
    Environment configuration>",
    "parameters" : {
    "templateLinkAccessToken": "<access token for the nested 
    templates>",
    "cmExmMsDeployPackageUrl": "<URL>",
    "cdExmContentDeliveryMsDeployPackageUrl": "<URL>",
    "prcExmAnalyticsProcessingMsDeployPackageUrl": "<URL>",
    "repExmReportingMsDeployPackageUrl": "<URL>",
    "ddsExmMsDeployPackageUrl": "<URL>",
    "ddsExmEmailProcessingMsDeployPackageUrl": "<URL>",
    "exmSampleNewsletterMsDeployPackageUrl": "<URL>",
    "exmSampleNewsletterFileMsDeployPackageUrl": "<URL>",
    "bootLoaderMsDeployPackageUrl": "<URL>",
    "cryptographicKey": "<HEX String>",
    "authenticationKey": "<String>",
    "internalApiKey": "<String>"
    }
    }
    ]
    }
    }
    }
  2. Populate the parameters for the EXM module as follows:

    Parameter

    Description

    templateLink

    The URL of the EXM azuredeploy.json file on GitHub or a storage account that includes any access token.

    cmExmMsDeployPackageUrl

    The URL of the cm .scwdp.zip (Content Management) package for EXM.

    cdExmContentDeliveryMsDeployPackageUrl

    The URL of the cd.scwdp.zip (Content Delivery) package for EXM.

    prcExmAnalyticsProcessingMsDeployPackageUrl

    The URL of the prc.scwdp.zip (Processing) package for EXM.

    repExmReportingMsDeployPackageUrl

    The URL of the rep.scwdp.zip (Reporting) package for EXM.

    ddsExmMsDeployPackageUrl

    The URL of the cm2.scwdp.zip package for the Sitecore Experience Platform. You can download the package for cm2 role from the Sitecore Experience Platform download page.

    ddsExmEmailProcessingMsDeployPackageUrl

    The URL of the dds.scwdp.zip (Email Processing) package for EXM.

    exmSampleNewsletterMsDeployPackageUrl

    The URL of the Sample Newsletter package for EXM.

    exmSampleNewsletterFileMsDeployPackageUrl

    The URL of the Sample Newsletter Files package for EXM.

    bootLoaderMsDeployPackageUrl

    The URL of the Bootloader wdp.zip package. See Configure the Bootloader module for a Sitecore deployment for more information.

    cryptographicKey

    The cryptographic key has a hexadecimal value starting with 0x and a minimum length of 34 characters.

    authenticationKey

    The authentication key for the REST API services has a string value and a minimum length of 16 characters.

    internalApiKey

    The internal API key is an authentication key for service-to-service communication. It has a string value and a minimum length of 16 characters.

    (optional) templateLinkAccessToken

    The access token is for the nested infrastructure and application templates.

  3. Go to Deploy a new Sitecore environment to the Azure App Service, Invoke the deployment section, and run your Sitecore deployment as usual.