[This is preliminary documentation and is subject to change. Blank topics are included as placeholders.]

Publishes a new Microsoft Communications Server 2010 topology that was created and saved using Topology Builder.


Publish-CsTopology -FileName <String> [-BackupFileName <String>] [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-GlobalCatalog <Fqdn>] [-GlobalSettingsDomainController <Fqdn>] [-Report <String>] [-SkipPrepareCheck <$true | $false>] [-WhatIf [<SwitchParameter>]]
Publish-CsTopology -Document <XElement> [-BackupFileName <String>] [-Confirm [<SwitchParameter>]] [-Force <SwitchParameter>] [-GlobalCatalog <Fqdn>] [-GlobalSettingsDomainController <Fqdn>] [-Report <String>] [-SkipPrepareCheck <$true | $false>] [-WhatIf [<SwitchParameter>]]


Parameter Required Type Description




Full path to the XML file containing the new topology information (that is, the file you saved using Topology Builder). For example:




If set to True ($True) Publish-CsTopology will skip its initial preparation check.



System.XML.Linq.XElement object

Enables you to publish an XML element rather than an XML file. This XML element must be configured as a System.XML.Linq.XElement object.




Full path to the backup file automatically created when you run Publish-CsTopology. If this parameter is not specified then Publish-CsTopology will create a backup file in your Temp folder (%temp%) similar to this: Publish-CsTopology-Backup-[2010_10_01][08_30_00]. In that file name 2010_10_01 represents the date that publication took place: year (2010), month (10), and day (01). In addition, 08_30_00 represents the time of date when publication took place: hour (08), minutes (30), and seconds (00).




Fully qualified domain name of a global catalog server in your domain. This parameter is not required if you are running Enable-CsTopology on a computer with an account in your domain.




Fully qualified domain name of a domain controller where global settings are stored. If global settings are stored in the System container in Active Directory then this parameter must point to the root domain controller. If global settings are stored in the Configuration container then any domain controller can be used and this parameter can be omitted.



Switch Parameter

Suppresses the display of any non-fatal error message that might arise when running the command.




Enables you to specify a file path for the log file created when the cmdlet runs. For example: -Report "C:\Logs\Publish_Topology.xml" –FileName "C:\Topologies\New_sites.html".



Switch Parameter

Describes what would happen if you executed the command without actually executing the command.



Switch Parameter

Prompts you for confirmation before executing the command.

Detailed Description

After you have installed Microsoft Communications Server “14” you will eventually need to make changes to the Communications Server infrastructure; for example, you might need to add a new site, delete an existing Registrar pool, add an additional Archiving Server, and so on. These infrastructure changes must be made using the Communications Server Topology Builder. After you have made the changes in Topology Builder you can then publish and enable those changes using that same tool. These latter two steps are very important: although you can make as many modifications as you want using the Topology Builder, those modifications do not actually take effect, and your Communications Server infrastructure will not actually change, until the modifications have been published and the new topology has been enabled.

When changes are published, the new information (for example, a new site or a new server role) is written to the Central Management Database. However, these new (or the newly-modified) objects do not immediately join your topology; that occurs only when the updated topology has been enabled. If you select the Publish option in Topology Builder both of these steps will take place: the changes will be published (written the Central Management Database) and then the new topology will be enabled.

There might be times, however, when you would prefer to publish your changes and enable your topology as separate steps; doing so gives you an opportunity to confirm that deployment has succeeded before you bring the new entities into the topology. To separately publish and then enable topology changes, you must do the following:

In Topology Builder, save the modified topology as an XML file (using the Save As option).

Use the cmdlet Publish-CsTopology to publish that XML file. Publishing the XML file writes the changes to the Central Management Database.

Use the cmdlet Enable-CsTopology to cause the published changes to take effect.

Return Types

Publish-CsTopology publishes instances of the Microsoft.Rtc.Management.Deploy.Internal.DefaultTopology object.


-------------------------- Example 1 --------------------------

Copy Code
Publish-CsTopology -FileName "C:\Topologies\New_sites.xml"

The command shown in Example 1 publishes the topology file C:\Topologies\New_sites.xml. After the file has been published, you must then run the Enable-CsTopology cmdlet in order to have the changes take effect.