Saturday, December 28, 2019

Install and Setup Sitecore Rocks


                                        Install and Setup Sitecore Rocks

Install Sitecore Rocks:

1.      Open Visual Studio as Admin, Navigate to Tools à Extensions and Updates.

2.      Extensions and Updates Window go to Online, Search for Sitecore Rocks, Click Download.



3.      Click Install


4.      Restart Visual Studio



Setup Sitecore Rocks:

1.      Open Visual Studio, go to Sitecore à Click Sitecore Explorer


2.      Right Click Connections

3.      Enter Host Name, Location of your Website, User Name, Password of your sitecore instance

4.      Click Yes in Information Dialog Box
5.      Update Server Components, Click Update All.
6.      Expand your Connections in Sitecore Explorer, Expand your Website.


Monday, November 18, 2019

How to install Sitecore Package Faster

installing large Sitecore package can create a problem sometimes. so follow these below steps to make it faster(recommended in Development and Test VM's).

1. \App_Config\Sitecore\ContentSearch\
2. Open Sitecore.ContentSearch.config
3. Disable by commenting the ContentSearch event handler in "packageinstall:items:ended"


<event name="packageinstall:items:ended">
        <handler type="Sitecore.ContentSearch.Events.PackagingEventHandler, Sitecore.ContentSearch" method="OnPackageInstallItemsEndHandler" />
      </event>

<event name="packageinstall:items:ended:remote">
        <handler type="Sitecore.ContentSearch.Events.PackagingEventHandler, Sitecore.ContentSearch" method="OnPackageInstallItemsEndHandler" />
      </event>

4. Install the Package.
5. Index content.
6. Rollback the config back to its original.

Wednesday, July 24, 2019

Uninstalling Sitecore eCommerce

1. Restart your system.
2.Copy and save the below script as "uninstall-commerce-sitecore.ps1"

#define parameters
Param(
[string]$Prefix = 'XXXX',
[string]$CommerceOpsSiteName = 'CommerceOps_Sc9',
[string]$CommerceShopsSiteName = 'CommerceShops_Sc9',
[string]$CommerceAuthoringSiteName = 'CommerceAuthoring_Sc9',
[string]$CommerceMinionsSiteName = 'CommerceMinions_Sc9',
[string]$SitecoreBizFxSiteName = 'SitecoreBizFx',
[string]$SitecoreIdentityServerSiteName = 'SitecoreIdentityServer',
[string]$SolrService = 'Solr',
[string]$PathToSolr = 'C:\Solr\Solr-6.6.2',
[string]$SqlServer = 'XXXXXXX',
[string]$SqlAccount = 'sa',
[string]$SqlPassword = 'XXXXXXX'
)
#Write-TaskHeader function modified from SIF
Function Write-TaskHeader {
    param(
        [Parameter(Mandatory=$true)]
        [string]$TaskName,
        [Parameter(Mandatory=$true)]
        [string]$TaskType
    )

    function StringFormat {
        param(
            [int]$length,
            [string]$value,
            [string]$prefix = '',
            [string]$postfix = '',
            [switch]$padright
        )

        # wraps string in spaces so we reduce length by two
        $length = $length - 2 #- $postfix.Length - $prefix.Length
        if($value.Length -gt $length){
            # Reduce to length - 4 for elipsis
            $value = $value.Substring(0, $length - 4) + '...'
        }

        $value = " $value "
        if($padright){
            $value = $value.PadRight($length, '*')
        } else {
            $value = $value.PadLeft($length, '*')
        }

        return $prefix + $value + $postfix
    }

    $actualWidth = (Get-Host).UI.RawUI.BufferSize.Width
    $width = $actualWidth - ($actualWidth % 2)
    $half = $width / 2

    $leftString = StringFormat -length $half -value $TaskName -prefix '[' -postfix ':'
    $rightString = StringFormat -length $half -value $TaskType -postfix ']' -padright

    $message = ($leftString + $rightString)
    Write-Host ''
    Write-Host $message -ForegroundColor 'Red'
}

Function Remove-Service{
[CmdletBinding()]
param(
[string]$serviceName
)
if(Get-Service "My Service" -ErrorAction SilentlyContinue){
sc.exe delete $serviceName
}
}

Function Remove-Website{
[CmdletBinding()]
param(
[string]$siteName
)

$appCmd = "C:\windows\system32\inetsrv\appcmd.exe"
& $appCmd delete site $siteName
}

Function Remove-AppPool{
[CmdletBinding()]
param(
[string]$appPoolName
)

$appCmd = "C:\windows\system32\inetsrv\appcmd.exe"
& $appCmd delete apppool $appPoolName
}

#Stop Solr Service
Write-TaskHeader -TaskName "Solr Services" -TaskType "Stop"
Write-Host "Stopping solr service"
Stop-Service $SolrService -Force -ErrorAction stop
Write-Host "Solr service stopped successfully"

#Delete solr cores
Write-TaskHeader -TaskName "Solr Services" -TaskType "Delete Cores"
Write-Host "Deleting Solr Cores"
$pathToCores = "$pathToSolr\server\solr\$Prefix*"
Remove-Item $pathToCores -recurse -force -ErrorAction stop
Write-Host "Solr Cores deleted successfully"

#Remove Sites and App Pools from IIS
Write-TaskHeader -TaskName "Internet Information Services" -TaskType "Remove Websites"


Write-Host "Deleting Website $CommerceOpsSiteName"
Remove-Website -siteName $CommerceOpsSiteName -ErrorAction stop
Write-Host "Websites deleted"

Write-Host "Deleting Website $CommerceShopsSiteName"
Remove-Website -siteName $CommerceShopsSiteName -ErrorAction stop
Write-Host "Websites deleted"

Write-Host "Deleting Website $CommerceAuthoringSiteName"
Remove-Website -siteName $CommerceAuthoringSiteName -ErrorAction stop
Write-Host "Websites deleted"

Write-Host "Deleting Website $CommerceMinionsSiteName "
Remove-Website -siteName $CommerceMinionsSiteName  -ErrorAction stop
Write-Host "Websites deleted"

Write-Host "Deleting Website $SitecoreBizFxSiteName"
Remove-Website -siteName $SitecoreBizFxSiteName -ErrorAction stop
Write-Host "Websites deleted"

Write-Host "Deleting Website $SitecoreIdentityServerSiteName"
Remove-Website -siteName $SitecoreIdentityServerSiteName -ErrorAction stop
Write-Host "Websites deleted"



Remove-AppPool -appPoolName $CommerceOpsSiteName -ErrorAction stop
Write-Host "Application pools deleted"
Remove-AppPool -appPoolName $CommerceShopsSiteName -ErrorAction stop
Write-Host "Application pools deleted"
Remove-AppPool -appPoolName $CommerceAuthoringSiteName -ErrorAction stop
Write-Host "Application pools deleted"
Remove-AppPool -appPoolName $CommerceMinionsSiteName -ErrorAction stop
Write-Host "Application pools deleted"
Remove-AppPool -appPoolName $SitecoreBizFxSiteName -ErrorAction stop
Write-Host "Application pools deleted"
Remove-AppPool -appPoolName $SitecoreIdentityServerSiteName -ErrorAction stop


Remove-Item C:\inetpub\wwwroot\$CommerceOpsSiteName -recurse -force -ErrorAction stop
Write-Host "Websites removed from wwwroot"
Remove-Item C:\inetpub\wwwroot\$CommerceShopsSiteName -recurse -force -ErrorAction stop
Write-Host "Websites removed from wwwroot"
Remove-Item C:\inetpub\wwwroot\$CommerceAuthoringSiteName -recurse -force -ErrorAction stop
Write-Host "Websites removed from wwwroot"
Remove-Item C:\inetpub\wwwroot\$CommerceMinionsSiteName -recurse -force -ErrorAction stop
Write-Host "Websites removed from wwwroot"
Remove-Item C:\inetpub\wwwroot\$SitecoreBizFxSiteName -recurse -force -ErrorAction stop
Write-Host "Websites removed from wwwroot"
Remove-Item C:\inetpub\wwwroot\$SitecoreIdentityServerSiteName -recurse -force -ErrorAction stop
Write-Host "Websites removed from wwwroot"


Write-TaskHeader -TaskName "SQL Server" -TaskType "Drop Databases"
#Drop databases from SQL
Write-Host "Dropping databases from SQL server"
push-location
import-module sqlps

Write-Host $("Dropping database SitecoreCommerce9_Global")
$commerceDbPrefix = $("DROP DATABASE IF EXISTS [SitecoreCommerce9_Global]")
Write-Host $("Query: $($commerceDbPrefix)")
invoke-sqlcmd -ServerInstance $SqlServer -U $SqlAccount -P $SqlPassword -Query $commerceDbPrefix -ErrorAction stop

Write-Host $("Dropping database [SitecoreCommerce9_SharedEnvironments]")
$sharedDbPrefix = $("DROP DATABASE IF EXISTS [SitecoreCommerce9_SharedEnvironments]")
Write-Host $("Query: $($sharedDbPrefix)")
invoke-sqlcmd -ServerInstance $SqlServer -U $SqlAccount -P $SqlPassword -Query $sharedDbPrefix -ErrorAction stop


Write-Host "Databases dropped successfully"
pop-location

3. Change the Parameter values

[string]$Prefix = 'XXXX',
[string]$CommerceOpsSiteName = 'CommerceOps_Sc9',
[string]$CommerceShopsSiteName = 'CommerceShops_Sc9',
[string]$CommerceAuthoringSiteName = 'CommerceAuthoring_Sc9',
[string]$CommerceMinionsSiteName = 'CommerceMinions_Sc9',
[string]$SitecoreBizFxSiteName = 'SitecoreBizFx',
[string]$SitecoreIdentityServerSiteName = 'SitecoreIdentityServer',
[string]$SolrService = 'Solr',
[string]$PathToSolr = 'C:\Solr\Solr-6.6.2',
[string]$SqlServer = 'XXXXXXX',
[string]$SqlAccount = 'sa',
[string]$SqlPassword = 'XXXXXXX'

4. Save and Close the power shell script.
5. Run power shell as administrator.
6. navigate to the path of uninstall script.
7. run the uninstallation script.

Saturday, February 23, 2019

Installing Solr

Installing Solr:

• .Net Framework 4.6
• Web Deploy  - https://www.microsoft.com/en-us/download/details.aspx?id=43717
• SOLR 6.6.2 - http://archive.apache.org/dist/lucene/solr/6.6.1/solr-6.6.2.zip
• Java 8
• Non-Sucking Service Manager NSSM - https://nssm.cc/download

1. install the ones below if not yet
• Web Deploy
• Java 8.0
• Set the Java_Home Variable
2. create a new folder C:\Sitecore\Install
3. install SOLR 6.6.2
• copy the solr-6.6.2.zip to C:\Sitecore
• Extract the Zip
• Run Command Prompt as administrator

• Check solr working or not by using http://localhost:8983/


4. Now SOLR 6.6.2 run as a window service
• download NSSM and install it
• Extract to C:\Sitecore
• Run Command Prompt as administrator


• Check whether Solr_6.6.2 window service is running


5. set up HTTPS for SOLR 6.6.2
• download this PowerShell file solrssl.ps1 and put it into C:\Sitecore\Install\
• update the key tool path to your local path in solrssl.ps1 file



• Run Windows PowerShell as administrator


• in case if you got the error, open Windows PowerShell (run as administrator)
• Set-ExecutionPolicy -Scope CurrentUser Unrestricted

• Remove Comment from these 4 lines in solr.in.cmd file(C:\sitecore\solr-6.6.2\bin).

• Restart Solr_6.6.2 service
• open a browser, navigate to https://localhost:8983/