Created
July 13, 2017 04:25
-
-
Save blacktambourine/5b3ec8e56ba8cae651fad5ef81d80e78 to your computer and use it in GitHub Desktop.
Powershell to speed up Sitecore statup times
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# SCRIPT CONFIG | |
# Set disable features to "true" for faster startup times, "false" re-enables them. | |
$disableFeatures= "true" | |
# Set the webroot of your Sitecore Website. | |
$sitecoreWebroot= "D:\inetpub\wwwroot\CoC\Website\" | |
# folder to backup these configs | |
$backupFolder= $sitecoreWebroot + "_zConfig\" | |
#END SCRIPT CONFIG | |
Write-Host "STARTING SpeedUp.PS1" | |
Write-Host "webroot: " $sitecoreWebroot | |
Write-Host "disableFeatures: " $disableFeatures | |
Write-Host "backupFolder: " $backupFolder | |
# Check that "aSpeedup.config" exists, throw exception if not as Sitecore needs this when removing these other configs | |
$aSpeedupConfig= $sitecoreWebroot + "App_Config\Include\aSpeedup.Config" | |
if (-not (Test-Path $aSpeedupConfig)) | |
{ | |
throw [System.IO.FileNotFoundException] "aSpeedup.Config not found. Please download and add to your 'App_Config\Include' folder" | |
} | |
#CREATE BACKUP FOLDERS | |
# Create Backup folder if it doesn't exist | |
If(!(test-path $backupFolder)) | |
{ | |
Write-Host "backupFolder does not exist, creating folder: " $backupFolder | |
New-Item -ItemType Directory -Force -Path $backupFolder | |
} | |
# Create "App_Config\Include\" folder if it doesn't exist | |
$appFolderBackup = $backupFolder + "App_Config\Include\" | |
If(!(test-path $appFolderBackup)) | |
{ | |
New-Item -ItemType Directory -Force -Path $appFolderBackup | |
} | |
#END CREATE BACKUP FOLDERS | |
#IF DISABLE CONFIGS | |
# CES Configs | |
$cesFolder= "App_Config\Include\CES\" | |
$cesConfigs= $sitecoreWebroot + $cesFolder | |
$cesBackup= $appFolderBackup | |
If ($disableFeatures -eq "true") | |
{ | |
move-item $cesConfigs $cesBackup | |
Write-Host "CES has been disabled" | |
} | |
# Content Testing Configs | |
$ContentTestingFolder= "App_Config\Include\ContentTesting\" | |
$ContentTestingConfigs= $sitecoreWebroot + $ContentTestingFolder | |
$ContentTestingBackup= $appFolderBackup | |
If ($disableFeatures -eq "true") | |
{ | |
move-item $ContentTestingConfigs $ContentTestingBackup | |
Write-Host "ContentTesting has been disabled" | |
} | |
# FXM Configs | |
$fxmFolder= "App_Config\Include\FXM\" | |
$fxmConfigs= $sitecoreWebroot + $fxmFolder | |
$fxmBackup= $appFolderBackup | |
If ($disableFeatures -eq "true") | |
{ | |
move-item $fxmConfigs $fxmBackup | |
Write-Host "fxm has been disabled" | |
} | |
# List Management Configs | |
$lmFolder= "App_Config\Include\ListManagement\" | |
$lmConfigs= $sitecoreWebroot + $lmFolder | |
$lmBackup= $appFolderBackup | |
If ($disableFeatures -eq "true") | |
{ | |
move-item $lmConfigs $lmBackup | |
Write-Host "list management has been disabled" | |
} | |
# Marketing Configs | |
$mFolder= "App_Config\Include\Marketing\" | |
$mConfigs= $sitecoreWebroot + $mFolder | |
$mBackup= $appFolderBackup | |
If ($disableFeatures -eq "true") | |
{ | |
move-item $mConfigs $mBackup | |
Write-Host "Marketing has been disabled" | |
} | |
# Social Configs | |
$sFolder= "App_Config\Include\Social\" | |
$sConfigs= $sitecoreWebroot + $sFolder | |
$sBackup= $appFolderBackup | |
If ($disableFeatures -eq "true") | |
{ | |
move-item $sConfigs $sBackup | |
Write-Host "Social has been disabled" | |
} | |
$rootConfigFolder= "App_Config\Include\" | |
# Commerce Configs | |
$commConfigs= $sitecoreWebroot + $rootConfigFolder + "Sitecore.Commerce.*" | |
$commBackup= $appFolderBackup | |
If ($disableFeatures -eq "true") | |
{ | |
move-item $commConfigs $commBackup | |
Write-Host "Commerce has been disabled" | |
} | |
# Experience Editor Configs | |
$eeConfigs= $sitecoreWebroot + $rootConfigFolder + "Sitecore.ExperienceEditor.*" | |
$eeBackup= $appFolderBackup | |
If ($disableFeatures -eq "true") | |
{ | |
move-item $eeConfigs $eeBackup | |
Write-Host "Experience Editor has been disabled" | |
} | |
# Experience Explorer Configs | |
$eexConfigs= $sitecoreWebroot + $rootConfigFolder + "Sitecore.ExperienceExplorer.*" | |
$eexBackup= $appFolderBackup | |
If ($disableFeatures -eq "true") | |
{ | |
move-item $eexConfigs $eexBackup | |
Write-Host "Experience Explorer has been disabled" | |
} | |
# Path Analyzer Configs | |
$paConfigs= $sitecoreWebroot + $rootConfigFolder + "Sitecore.PathAnalyzer.*" | |
$paBackup= $appFolderBackup | |
If ($disableFeatures -eq "true") | |
{ | |
move-item $paConfigs $paBackup | |
Write-Host "Path Analyzer has been disabled" | |
} | |
# Misc Configs | |
$zzzConfigs= $sitecoreWebroot + $rootConfigFolder + "Sitecore.MvcSimulator.config" | |
$zzzBackup= $appFolderBackup | |
If ($disableFeatures -eq "true") | |
{ | |
move-item $zzzConfigs $zzzBackup | |
Write-Host "MvcSimulator has been disabled" | |
} | |
$zzzConfigs= $sitecoreWebroot + $rootConfigFolder + "Sitecore.Processing.config" | |
$zzzBackup= $appFolderBackup | |
If ($disableFeatures -eq "true") | |
{ | |
move-item $zzzConfigs $zzzBackup | |
Write-Host "Processing has been disabled" | |
} | |
$zzzConfigs= $sitecoreWebroot + $rootConfigFolder + "Sitecore.WebDAV.config" | |
$zzzBackup= $appFolderBackup | |
If ($disableFeatures -eq "true") | |
{ | |
move-item $zzzConfigs $zzzBackup | |
Write-Host "WebDAV has been disabled" | |
} | |
#END IF DISABLE CONFIGS | |
#ELSE IF ENABLE Configs | |
#move everything in the backup folder back to the webroot | |
If ($disableFeatures -eq "false") | |
{ | |
Write-Host ($backupFolder + $cesFolder) ($sitecoreWebroot + $rootConfigFolder) | |
move-item ($backupFolder + $cesFolder) ($sitecoreWebroot + $rootConfigFolder) | |
move-item ($backupFolder + $ContentTestingFolder) ($sitecoreWebroot + $rootConfigFolder) | |
move-item ($backupFolder + $fxmFolder) ($sitecoreWebroot + $rootConfigFolder) | |
move-item ($backupFolder + $lmFolder) ($sitecoreWebroot + $rootConfigFolder) | |
move-item ($backupFolder + $mFolder) ($sitecoreWebroot + $rootConfigFolder) | |
move-item ($backupFolder + $sFolder) ($sitecoreWebroot + $rootConfigFolder) | |
move-item ($backupFolder + $rootConfigFolder + "*.*") ($sitecoreWebroot + $rootConfigFolder) | |
Write-Host "All features have been re-enabled." | |
} | |
#END ELSE IF ENABLE Configs | |
Write-Host "SpeedUp.PS1 is DONE!" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment