loading table of contents...

3.14.3.5. Publishall

The publishall tool is used in two cases: One, to quickly initialize a Master Live Server with the current contents of the Content Management Server, usually in a quality assurance or continuous integration environment; and two, to populate a new Master Live Server in case the original Master Live Server database has been corrupted and is not recoverable from a consistent backup. Before starting the publishall tool, you must create an empty database schema, configure it in the Master Live Server, (re)start the server and wait until it is completely initialized. You can then publish all content that is marked as published to the new server as follows:

cm publishall [ -a [ -cq <query> ] ] [ -t <threads> ]
  <cmsiorurl> <cmsuser> <cmspwd>
  <masteriorurl> <masteruser> <masterpwd>

Example 3.26. Usage of publishall


The parameters have the following meanings:

Parameter Description
-a If given, publish all contents on the CMS (by default, except /Home). Otherwise, only publish contents already marked as published (that is, which were previously published to a lost or damaged MLS).
-cq <query> If given together with -a, publish all contents matching the given query. Note that there must not be any links from published contents to non-published contents, which for performance reasons is not checked by the publishall tool. default: "NOT BELOW PATH '/Home'"
-t <threads> Use the given number of threads for creating content on the master live server. Multiple threads may increase throughput in the presence of network and database latency. Default: 1
cmsiorurl The IOR URL of the Content Management Server
cmsuser The user on the Content Management Server to be used for reading (typically admin)
cmspwd The password on the Content Management Server
masteriorurl The IOR URL of the Master Live Server
masteruser The user on the Master Live Server to be used for writing (typically admin)
masterpwd The password on the Master Live Server

Table 3.38. Parameters of the publishall utility


When there are rights rules for live groups to be published, required groups of the built-in user management will be automatically created, but the subgroup relationships must be established separately. This is in line with the normal behavior of the publisher.

During operation of the cm publishall tool, no changes should be made on the Content Management Server.

Even in a multi-site environment, the tool publishes all content to the Master Live Server. Afterwards, you may destroy unneeded parts of the repository with cm multisitecleanup as described in Section 3.11.4.5, “Splitting Content to Multiple Targets”.

Replication Live Servers that have been connected to the replaced Master Live Server cannot be connected to the new Master Live Server. They must be rebuilt, too.

The cm publishall tool will reset the publication date and the publisher user of all contents in the content management environment, and the creation date of all contents in the live environment. The original information about publication dates is irretrievably lost when the cm publishall tool is used. Your business logic should therefore not rely too much on such metadata.