Saturday 22 July 2023

Sitecore Publishing Service 7.0 Installation Guide

 About the Publishing Service module

The Publishing Service module is an optional replacement for the existing Sitecore publishing methods. This module increases publishing throughput, reduces the amount of time spent publishing large volumes of items, and offers greater data consistency and reliability. The module also improves the user experience and provides better visual feedback to the user on the state of the publishing system.


The Publishing Service does not use any of the features, pipelines, and settings in the current publishing system. It is an entirely new way of publishing Sitecore items and media.



Sitecore Publishing Service requirements

The prerequisites for the Sitecore Publishing Service 7.0 release are:

• .NET Runtime 6.0.10

• Windows Server Hosting (.NET 6.0)

Before you start the installation of the Sitecore Publishing Service, ensure you have all the prerequisites in place. Once you have met the requirements in your system, follow the steps below to install the Sitecore Publishing Service manually:


Step-1: Download the Sitecore Publishing Service package from the Sitecore Downloads page


Step-2: Extract the content of the archive(Sitecore Publishing Service 7.0.20 rev. 0020-net6.0.zip) to a folder of your choice. For example:

C:\inetpub\wwwroot\sitecorepublishing

Step-3: Create a new sitecoreruntime folder in the installation folder. For example:




C:\inetpub\wwwroot\sitecorepublishing\sitecoreruntime

Step-4: Copy the Sitecore license file to the sitecoreruntime folder

Step-5: Copy the item resource files from the CM Sitecore instance (for Sitecore 10.1 and higher). Copy dat-files for all databases except the Core preserving the
folder structure. 

For example, from C:\inetpub\wwwroot\sitecore\App_Data\items to C:\inetpub\wwwroot\sitecorepublishing\sitecoreruntime\items\sitecore and
C:\inetpub\wwwroot\sitecore\sitecore modules\items to
C:\inetpub\wwwroot\sitecorepublishing\sitecoreruntime\items\modules




Step-6: In IIS, create a new site pointing to the installation folder.

Setp-7: Start the IIS Manager and in the Connections panel, expand Sites. Right-click Sites and then click Add Website.






Step-8: In the Add Website dialog, fill in the required fields.


NOTE: If you add a custom host name, you must update your hosts file (C:\Windows\System32\drivers\etc\).

Step-9: In the IIS Manager, right-click the application pool for your created website, then click Basic Settings.

Step-10: In the Edit Application Pool dialog, in the .NET CLR version field, select >No Managed Code.



NOTE: The Application Pool user must have Read, Execute, and Write permissions to the site’s physical path.

Step-11: In the IIS Manager, right-click the application pool for the website that you created, and then click Advanced Settings.

Step-12: In the Advanced Settings dialog, in the IdleTime-out (minutes) field, enter 0.

Step-13: Configure the core, master, web, and service connection strings for the service along with any additional configuration values




SetConnectionString command

To set or change a connection in a configuration file, use the SetConnectionString command.

1. Core DB:
.\Sitecore.Framework.Publishing.Host.exe configuration SetConnectionString core 'Data Source=DESKTOP-5EUPI;Initial Catalog=sitecore103_Core;Integrated Security=False;User ID=sa;Password=Test@123;MultipleActiveResultSets=True'

2. Master DB:
.\Sitecore.Framework.Publishing.Host.exe configuration SetConnectionString master 'Data Source=DESKTOP-5EUPI;Initial Catalog=sitecore103_Master;Integrated Security=False;User ID=sa;Password=Test@123;MultipleActiveResultSets=True'

3. Web DB:
.\Sitecore.Framework.Publishing.Host.exe configuration SetConnectionString web 'Data Source=DESKTOP-5EUPI;Initial Catalog=sitecore103_Web;Integrated Security=False;User ID=sa;Password=Test@123;MultipleActiveResultSets=True'

NOTE: Depending on which Sitecore version you are using, consider disabling the multiple-link database mode described in the Sitecore Publishing Service Module installation guide available on the Sitecore download page.

Step-14: To upgrade the database schema, run the schema upgrade command from the extracted folder:

Sitecore.Framework.Publishing.Host.exe schema upgrade --force

Step-15: To access your website, enter http://<sitename>/api/publishing/operations/status in your browser. If you receive a value of { "status" : 0, “statusType”: “Ok” }, the application is installed correctly. If you receive any other value, check the application logs for further details.



The configuration of the Host Service has been completed. Now Install the Sitecore Publishing Service module on your Sitecore Instance. Once this is installed, from the Launchpad you will see the Publishing Icon. But before clicking on the Publishing Icon, you need to specify the link between the Host Service and the Publishing Module. To do so, create a new configuration file and name it z.PublishingService.config. In the config file, paste the setting for the link as shown below:



<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
    <sitecore>
        <settings>
            <setting name="PublishingService.UrlRoot" value="http://sitecore.publishing/"></setting>
            </settings>
        </sitecore>
</configuration>

Place this configuration file in the path ‘Website/App_Config/Include/‘. Reload your Sitecore Instance and click on the publishing icon to navigate to the Publishing Dashboard.





This is the Publishing Dashboard, where you see the Active, Queued, and Recent Jobs.
Active jobs – the publishing jobs that are currently being published. 
Queued jobs – the publishing jobs that are waiting to be published. 
Recent jobs – the most recent publishing jobs that have been processed.


If no errors are shown, then the module has been installed properly. This module will now override the default publishing manager.










Sitecore Publishing Service 7.0 Installation Guide

  About the Publishing Service module The Publishing Service module is an optional replacement for the existing Sitecore publishing methods....