I am setting up Staging and live publishing targets using the same discovery service but but it throwing error while running script. 1. I have set up the topology type using the command

Add-TtmCdTopologyType -Id StagingAndLiveType -Name "Staging and Live" -EnvironmentPurposes @("Staging","Live") enter image description here 2. I am now trying to create two topology environment using the command

Add-TtmCdEnvironment -Id StagingEnv -EnvironmentPurpose Staging -DiscoveryEndpointUrl http://localhost:8082/discovery.svc -AuthenticationType OAuth -ClientId cmuser -ClientSecret XXXXXX

but its throwing error

enter image description here

If anybody can share some guidelines to set up multiple Targets ?

  • The error message is specifying that the DiscoveryEndpointUrl is not unique, that means it is already in use. Have you created 2 different discovery services for your for Staging and Live environment? Can you just hit Get-TtmCdTopology and check the result. May 10, 2016 at 18:39

2 Answers 2


For creating multiple environment first you have to create multiple instances of discovery service. What I understand from the error message is DiscoveryEndpointUrl is already in used by one environment.

So you have to create a new instance of discovery service first then try to add it.

  • I followed these steps- May 11, 2016 at 10:45
  • 1
    I have 1 instance of discovery service installed on 8082 port. I followed these steps- 1. Updated the ports of discovery and token service in quickinstall.ps1 script in contentdelivery\resources\quickinstall 2. Updated the port of discovery and tken service in cd_storage_config file in \roles\discovery\standalone\config path 3. Changes rule and oAuth tag to false in cd_ambient.xml file 4. Running the script again .\quickinstallStaging.ps1 -target-folder C:\SDL_WebServices -discovery-url "localhost:9082/discovery.svc" -enab le-discovery May 11, 2016 at 11:04
  • It says WARNING: Service 'SDLWebDiscoveryService' already exists in system. Service 'SDLWebDiscoveryService' already started. May 11, 2016 at 11:06
  • change the name of the discovery service. and change the port no also in the script and run it again. May 11, 2016 at 18:48
  • 1
    By the way it is not a good practice to stop the OAuth and Rules but you can do it just for practice May 11, 2016 at 18:52

Your problem is you cannot have two Windows Service with the same name.

You should change the $name="SDLWebDeployer" and $displayName="SDL Web Deployer" in your powershell script before installing the second Content Deployer.

You can use in Deployer2\bin folder installService.ps1.

If you have to delete some service you can use UninstallService.ps1 this script keeps your configuration files (does not delete).

I hope help you.

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.