3

In the DXA installation script, it uses Staging and Live as target name, but at our Web 8 environment, we use Preview and Live. How can we make the installation script work for our environment?

Command we are running:

.\cms-import.ps1 -importType all-publications -noTopologyManager -cmsUrl "http://localhost:81/" 

Error:

[Error] Tridion.ContentManager.InvalidPropertyValueException: Invalid value for property 'CdTopologyTypeId'. Cd Topology Type with id 'StagingOnly' does not exist.

Thanks, Qiang

2 Answers 2

3

In DXA 1.7, Unzip the all-publications.zip, then in the path /all-publications\BusinessProcessTypes and edit the following files, 2-2548-4096.xml and 2-2551-4096.xml, changing this <tcm:CdTopologyTypeId>StagingLive</tcm:CdTopologyTypeId> to the name of your Topology Type. Do the same for the other file.

If you don't have a live target, then in the file 2-2551-4096.xml remove the following section:

<tcm:TargetType IsEditable="true">
          <tcm:Data>
            <tcm:Description>DXA Live</tcm:Description>
            <tcm:Title>DXA Live</tcm:Title>
            <tcm:Purpose>Live</tcm:Purpose>
            <tcm:Priority>Normal</tcm:Priority>
            <tcm:MinimalApprovalStatus xlink:type="simple" xlink:title="" xlink:href="tcm:0-0-0" />
          </tcm:Data>
          <tcm:Permissions>
            <tcm:PermissionInfo>
              <tcm:PermissionType ID="1" Title="" />
            </tcm:PermissionInfo>
            <tcm:Trustee xlink:type="simple" xlink:title="Site Manager" xlink:href="tcm:0-8-65568" description="Site Manager" ItemType="65568">
              <tcm:Permission Type="1" Setting="Allow" />
            </tcm:Trustee>
          </tcm:Permissions>
        </tcm:TargetType>

Then save the files, zip up the files again to the name all-publications.zip, and run the cms-import.ps1 script. You do not need to run the ttm-prepare.ps1 script.

After this, configure the (new) DXA Web publication in TopologyManager to be able to publish to the target.

For example,

Add-TtmWebsite -Id DxaSampleSite -CdEnvironmentId CDEnvStage

Add-TtmMapping -Id DxaStageMapping -CmEnvironmentId SDLWebcmsnd_landbdev2 -PublicationId tcm:0-34-1 -WebApplicationId DxaSampleSite_RootWebApp

Then you can publish the DXA site and could download the Visual Studio sample project from Jan Horsman at https://github.com/jhorsman/dxa-example-site-dotnet and start having fun.

3

DXA comes with two predefined Business Process Types:

  • DXA Development (for a single environment publishing setup)
  • DXA Staging/Live (for a dual environment publishing setup)

These two BPT refer to Topology Types with specific Identifiers in TTM.

  • StagingOnly
  • StagingLive

In order to be able to import the DXA BPTs, Topology Types with those identifiers must exist in Topology Manager. The ttm-prepare.ps1 PowerShell script takes care of creating those Topology Types (if they don't exist yet).

If you want to use different names for the environment purposes per se, you can choose to not use the DXA BPTs (maybe even delete them) and use your own BPTs instead.

However, you must have above mentioned Topology Types defined in order to import the DXA Items in CM.

BTW: the ttm-prepare.ps1 also takes care of Site Type configuration in Topology Manager (for the earlier mentioned Topology Types), so that the Site Wizard works OOTB on the DXA Site Type. If you choose to use your own BPTs and Topology Types, you are on your own for configuring all that.

2
  • Would it be possible to rename the existing BPTs to match the DXA ones, do the install, then rename them back? I haven't tried this, just thinking out loud.
    – Nuno Linhares
    Commented Sep 2, 2016 at 13:48
  • No, that won't help. The DXA Import Package contains the full BPT definitions (incl. the reference to Topology Type). If you name your BPTs after the DXA ones, the DXA Import will try to update them and then still fail on the missing Topology Type. Commented Sep 2, 2016 at 14:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.