File cleanup
This commit is contained in:
159
intune/App Installs/Install-Docker-Desktop.ps1
Normal file
159
intune/App Installs/Install-Docker-Desktop.ps1
Normal file
@@ -0,0 +1,159 @@
|
||||
set-executionpolicy -scope CurrentUser -executionPolicy Bypass -Force
|
||||
If (-NOT ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator))
|
||||
{
|
||||
# Relaunch as an elevated process:
|
||||
Start-Process powershell.exe "-File",('"{0}"' -f $MyInvocation.MyCommand.Path) -Verb RunAs
|
||||
exit
|
||||
}
|
||||
|
||||
$ProgressPreference = 'SilentlyContinue'
|
||||
|
||||
Function GenerateFolder($path) {
|
||||
$global:foldPath = $null
|
||||
foreach($foldername in $path.split("\")) {
|
||||
$global:foldPath += ($foldername+"\")
|
||||
if (!(Test-Path $global:foldPath)){
|
||||
New-Item -ItemType Directory -Path $global:foldPath
|
||||
# Write-Host "$global:foldPath Folder Created Successfully"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function getStatus
|
||||
{
|
||||
try {
|
||||
# First we create the request.
|
||||
$HTTP_Request = [System.Net.WebRequest]::Create('http://localhost')
|
||||
|
||||
# We then get a response from the site.
|
||||
$HTTP_Response = $HTTP_Request.GetResponse()
|
||||
|
||||
# We then get the HTTP code as an integer.
|
||||
return [int]$HTTP_Response.StatusCode
|
||||
} catch [System.Net.WebException] {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
GenerateFolder "~/AppData/Roaming/Docker/"
|
||||
|
||||
Write-Host "Checking if Hyper-V is enabled."
|
||||
$hyperv = Get-WindowsOptionalFeature -FeatureName Microsoft-Hyper-V-All -Online
|
||||
|
||||
# Check if Hyper-V is enabled
|
||||
if($hyperv.State -eq "Enabled") {
|
||||
Write-Host "Hyper-V is enabled."
|
||||
|
||||
$wsl = Get-WindowsOptionalFeature -FeatureName Microsoft-Windows-Subsystem-Linux -Online
|
||||
|
||||
if($wsl.State -eq "Enabled") {
|
||||
|
||||
Write-Host "WSL is enabled."
|
||||
|
||||
if ([Environment]::Is64BitOperatingSystem)
|
||||
{
|
||||
Write-Host "System is x64. Need to update Linux kernel..."
|
||||
if (-not (Test-Path wsl_update_x64.msi))
|
||||
{
|
||||
Write-Host "Downloading Linux kernel update package..."
|
||||
Invoke-WebRequest -OutFile wsl_update_x64.msi https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
|
||||
}
|
||||
Write-Host "Installing Linux kernel update package..."
|
||||
Start-Process msiexec.exe -Wait -ArgumentList '/I wsl_update_x64.msi /quiet'
|
||||
Write-Host "Linux kernel update package installed."
|
||||
}
|
||||
|
||||
Write-Host "WSL is enabled. Setting it to WSL2"
|
||||
wsl --set-default-version 2
|
||||
|
||||
# disable distro install
|
||||
# no need to install distro as docker runs on its own distro
|
||||
<#
|
||||
if (-not (Test-Path Ubuntu.zip))
|
||||
{
|
||||
Write-Host "Downloading wsl-ubuntu-1804..."
|
||||
Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1804 -OutFile Ubuntu.zip -UseBasicParsing
|
||||
Expand-Archive Ubuntu.zip 'C:\Ubuntu'
|
||||
|
||||
Write-Host "A pop up widow will open shortly..."
|
||||
Write-Host "Once prompted provide user name, password and confirm password..."
|
||||
Write-Host "This does not have to be your windows user name and password. You can provide any of your prefered username and a password."
|
||||
Write-Host "Onec the Linux prompt is shown type exit and press enter."
|
||||
|
||||
Start-Process c:\Ubuntu\ubuntu1804.exe -Wait
|
||||
}
|
||||
|
||||
wsl -l -v
|
||||
wsl --set-version Ubuntu-18.04 2
|
||||
wsl -l -v
|
||||
#>
|
||||
|
||||
if (-not (Test-Path DockerInstaller.exe))
|
||||
{
|
||||
Write-Host "Installing Docker."
|
||||
|
||||
|
||||
Write-Host "Downloading the Docker exe"
|
||||
Invoke-WebRequest -Uri https://desktop.docker.com/win/stable/Docker%20Desktop%20Installer.exe -OutFile DockerInstaller.exe -UseBasicParsing
|
||||
Write-Host "Download Completed"
|
||||
|
||||
start-process .\DockerInstaller.exe "install --quiet" -Wait -NoNewWindow
|
||||
cd "C:\Program Files\Docker\Docker\"
|
||||
Write-Host "Installing Docker..."
|
||||
$ProgressPreference = 'SilentlyContinue'
|
||||
& '.\Docker Desktop.exe'
|
||||
$env:Path += ";C:\Program Files\Docker\Docker\Resources\bin"
|
||||
$env:Path += ";C:\Program Files\Docker\Docker\Resources"
|
||||
Write-Host "Docker Installed successfully"
|
||||
Write-Host "You must reboot the sytem to continue. After reboot re-run the script."
|
||||
Restart-Computer -Confirm
|
||||
}
|
||||
Write-Host "Starting docker..."
|
||||
$ErrorActionPreference = 'SilentlyContinue';
|
||||
do { $var1 = docker ps 2>$null } while (-Not $var1)
|
||||
$ErrorActionPreference = 'Stop';
|
||||
$env:Path += ";C:\Program Files\Docker\Docker\Resources\bin"
|
||||
$env:Path += ";C:\Program Files\Docker\Docker\Resources"
|
||||
Write-Host "Docker Started successfully"
|
||||
|
||||
|
||||
}
|
||||
else {
|
||||
Write-Host "WSL is disabled."
|
||||
Write-Host "Enabling WSL2 feature now"
|
||||
|
||||
& cmd /c 'dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart'
|
||||
& cmd /c 'dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart'
|
||||
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
|
||||
Start-Sleep 30
|
||||
Write-Host "WSL is enabled now reboot the system and re-run the script to continue the installation."
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
} else {
|
||||
Write-Host "Hyper-V is disabled."
|
||||
Write-Host "Enabling Hyper-V feature now"
|
||||
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
|
||||
Start-Sleep 30
|
||||
Write-Host "Hyper-V is enabled now reboot the system and re-run the script to continue the installation."
|
||||
}
|
||||
|
||||
|
||||
|
||||
<#
|
||||
REFERENCES USED FOR WRITING THIS SCRIPT
|
||||
|
||||
https://adamtheautomator.com/windows-subsystem-for-linux/#:~:text=To%20start%20using%20WSL%2C%20open,exe%20provides%20when%20starting%20up.
|
||||
https://superuser.com/questions/1271682/is-there-a-way-of-installing-ubuntu-windows-subsystem-for-linux-on-win10-v170
|
||||
https://stackoverflow.com/questions/61396435/how-do-i-check-the-os-architecture32-or-64-bit-using-powershell
|
||||
https://renenyffenegger.ch/notes/Windows/Subsystem-for-Linux/index
|
||||
https://docs.docker.com/docker-for-windows/wsl/
|
||||
https://docs.microsoft.com/en-us/windows/wsl/install-win10
|
||||
https://superuser.com/questions/1271682/is-there-a-way-of-installing-ubuntu-windows-subsystem-for-linux-on-win10-v170
|
||||
|
||||
https://wiki.ubuntu.com/WSL
|
||||
|
||||
https://winaero.com/export-import-wsl-linux-distro-windows-10/
|
||||
#>
|
||||
@@ -0,0 +1,246 @@
|
||||
# ------------------------------------------------------------------------------------------------------------ #
|
||||
# Author(s) : Peter Klapwijk - www.inthecloud247.com #
|
||||
# Version : 1.0 #
|
||||
# #
|
||||
# Description : Create a Scheduled task to connect drive mapping(s). Task runs on network change. #
|
||||
# #
|
||||
# Changes : v1.0 - Initial version #
|
||||
# #
|
||||
# This script is provide "As-Is" without any warranties #
|
||||
# #
|
||||
#------------------------------------------------------------------------------------------------------------- #
|
||||
|
||||
# Microsoft Intune Management Extension might start a 32-bit PowerShell instance. If so, restart as 64-bit PowerShell
|
||||
If ($ENV:PROCESSOR_ARCHITEW6432 -eq "AMD64") {
|
||||
Try {
|
||||
&"$ENV:WINDIR\SysNative\WindowsPowershell\v1.0\PowerShell.exe" -File $PSCOMMANDPATH
|
||||
}
|
||||
Catch {
|
||||
Throw "Failed to start $PSCOMMANDPATH"
|
||||
}
|
||||
Exit
|
||||
}
|
||||
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# Variables
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
$CompanyName = "CareCentrix"
|
||||
$TaskScriptName = "DriveMappingsv1.0_ScriptRunFromTaskScheduler.vbs"
|
||||
$TaskScriptName2 = "DriveMappingsv1.0_ScriptRunFromTaskScheduler.ps1"
|
||||
$TaskScriptFolder = "C:\Program Files\Common Files\$CompanyName\DriveMappings"
|
||||
$ScriptSourceDirectory = ".\"
|
||||
|
||||
#region Functions
|
||||
Function CleanUpAndExit() {
|
||||
Param(
|
||||
[Parameter(Mandatory=$True)][String]$ErrorLevel
|
||||
)
|
||||
|
||||
# Write results to registry for Intune Detection
|
||||
$Key = "HKEY_LOCAL_MACHINE\Software\$CompanyName\DriveMappings\v1.0"
|
||||
$NOW = Get-Date -Format "yyyyMMdd-hhmmss"
|
||||
|
||||
If ($ErrorLevel -eq "0") {
|
||||
[microsoft.win32.registry]::SetValue($Key, "Scheduled", $NOW)
|
||||
} else {
|
||||
[microsoft.win32.registry]::SetValue($Key, "Failure", $NOW)
|
||||
[microsoft.win32.registry]::SetValue($Key, "Error Code", $Errorlevel)
|
||||
}
|
||||
|
||||
# Exit Script with the specified ErrorLevel
|
||||
Stop-Transcript | Out-Null
|
||||
EXIT $ErrorLevel
|
||||
}
|
||||
|
||||
#endregion Functions
|
||||
|
||||
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# Start Transcript
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
$Transcript = "C:\programdata\Microsoft\IntuneManagementExtension\Logs\$($(Split-Path $PSCommandPath -Leaf).ToLower().Replace(".ps1",".log"))"
|
||||
Start-Transcript -Path $Transcript | Out-Null
|
||||
|
||||
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# Create local copy of the script to be run from the Task Scheduler
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
if (!(Test-Path -path $TaskScriptFolder)) {
|
||||
# Target Folder does not yet exist
|
||||
Write-Host "Creating Folder '$TaskScriptFolder' ..."
|
||||
New-Item $TaskScriptFolder -Type Directory | Out-Null
|
||||
}
|
||||
|
||||
try {
|
||||
Write-Host "Source folder to copy script from: '$ScriptSourceDirectory'"
|
||||
Copy-Item "$ScriptSourceDirectory\$TaskScriptName" -Destination "$TaskScriptFolder" -ErrorAction Stop | Out-Null
|
||||
Write-Host "Created local copy of the script '$TaskScriptName' in folder: '$TaskScriptFolder'"
|
||||
} catch {
|
||||
Write-Host "ERROR creating local copy of the script '$TaskScriptName' in folder: '$TaskScriptFolder'"
|
||||
CleanUpAndExit -ErrorLevel 1
|
||||
}
|
||||
|
||||
try {
|
||||
Write-Host "Source folder to copy script from: '$ScriptSourceDirectory'"
|
||||
Copy-Item "$ScriptSourceDirectory\$TaskScriptName2" -Destination "$TaskScriptFolder" -ErrorAction Stop | Out-Null
|
||||
Write-Host "Created local copy of the script '$TaskScriptName2' in folder: '$TaskScriptFolder'"
|
||||
} catch {
|
||||
Write-Host "ERROR creating local copy of the script '$TaskScriptName2' in folder: '$TaskScriptFolder'"
|
||||
CleanUpAndExit -ErrorLevel 1
|
||||
}
|
||||
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# Create Scheduled Task to run At Logon
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# General parameters
|
||||
$TaskName = "Drive mappings"
|
||||
$TaskDescription = "Connect drive mappings"
|
||||
$TaskSettings = New-ScheduledTaskSettingsSet -Compatibility Win8 -MultipleInstances IgnoreNew -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries -Hidden -StartWhenAvailable
|
||||
# Define the triggers of the scheduled task
|
||||
# Configure a trigger to run the script when a network change is detected
|
||||
$class = cimclass MSFT_TaskEventTrigger root/Microsoft/Windows/TaskScheduler
|
||||
$trigger = $class | New-CimInstance -ClientOnly
|
||||
$trigger
|
||||
$trigger.Enabled = $true
|
||||
$trigger.Subscription = '<QueryList><Query Id="0" Path="Microsoft-Windows-NetworkProfile/Operational"><Select Path="Microsoft-Windows-NetworkProfile/Operational">*[System[Provider[@Name=''Microsoft-Windows-NetworkProfile''] and EventID=10000]]</Select></Query></QueryList>'
|
||||
# Define the action of the Scheduled task
|
||||
$TaskAction = New-ScheduledTaskAction -Execute "powershell.exe" -Argument "`"$TaskScriptFolder\$TaskScriptName2`""
|
||||
#Define the principal
|
||||
$TaskPrincipal = New-ScheduledTaskPrincipal -GroupId "S-1-5-32-545"
|
||||
# Register the Scheduled task
|
||||
Register-ScheduledTask -Action $TaskAction -Trigger $Trigger -Settings $TaskSettings -TaskPath $CompanyName -TaskName $TaskName -Description $TaskDescription -Principal $TaskPrincipal -Force
|
||||
|
||||
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# Check End State
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
try {
|
||||
Get-ScheduledTask -TaskName $TaskName -ErrorAction Stop | Out-Null
|
||||
write-host "SUCCESS: Task is Scheduled."
|
||||
CleanUpAndExit -ErrorLevel 0
|
||||
} catch {
|
||||
write-host "ERROR: Scheduled Task could not be found."
|
||||
CleanUpAndExit -ErrorLevel 2
|
||||
}
|
||||
|
||||
# SIG # Begin signature block
|
||||
# MIIWKAYJKoZIhvcNAQcCoIIWGTCCFhUCAQExCzAJBgUrDgMCGgUAMGkGCisGAQQB
|
||||
# gjcCAQSgWzBZMDQGCisGAQQBgjcCAR4wJgIDAQAABBAfzDtgWUsITrck0sYpfvNR
|
||||
# AgEAAgEAAgEAAgEAAgEAMCEwCQYFKw4DAhoFAAQUys1bykPJUlvLsGv/XWKelbN6
|
||||
# CSmgghNzMIIFuTCCBKGgAwIBAgITEwAF2WJyfRrDOWPSpAAAAAXZYjANBgkqhkiG
|
||||
# 9w0BAQsFADBnMRMwEQYKCZImiZPyLGQBGRYDY29tMRswGQYKCZImiZPyLGQBGRYL
|
||||
# Y2FyZWNlbnRyaXgxEzARBgoJkiaJk/IsZAEZFgNjY3gxHjAcBgNVBAMTFUNDWCBE
|
||||
# b21haW4gSXNzdWluZyBDQTAeFw0yMzAzMTYxNDE0MzRaFw0yODAzMTQxNDE0MzRa
|
||||
# MIGUMRMwEQYKCZImiZPyLGQBGRYDY29tMRswGQYKCZImiZPyLGQBGRYLY2FyZWNl
|
||||
# bnRyaXgxEzARBgoJkiaJk/IsZAEZFgNjY3gxGTAXBgNVBAsTEFNlcnZlcmxlc3Mg
|
||||
# U2l0ZXMxFzAVBgNVBAsTDldvcmsgRnJvbSBIb21lMRcwFQYDVQQDEw5BbWFzb24s
|
||||
# IEFuZHJldzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMLCjBaNvPFh
|
||||
# rtISwkR9DTn3Wx6YlH/AjKFLH+6MEbKdwWWUPyWQ6XUcMug/PbAvKuSMmEodBN+h
|
||||
# r2pFKPT/YXGZGCWisJMlkR7nQrdnzb6oGiWxhoS7ElD6YUqTriVBxBOj8Dx494Lc
|
||||
# /P76Jshby0ral37gJsd2nRL8Yw9TzzJP2H6aFuwJ9T/W8vdibYWef4jUxfgTJ+sA
|
||||
# rePJONZwRTYkZHfCCQTQgGvaBv6RJ3WMWSzCLewnm6cAqu7rgeknmNfC2/gasBg2
|
||||
# UPXyITK6edSx1XfXTfUr5TbJpi+cWOKuixUqOmNYJaRf/4jlTvnsDCKtBRtMA6WT
|
||||
# gYGrNx59RFUCAwEAAaOCAi4wggIqMD0GCSsGAQQBgjcVBwQwMC4GJisGAQQBgjcV
|
||||
# CIe8uiGEwuM0zYklgq6SOoSJ8HiBD4flphKDp98YAgFkAgEDMBMGA1UdJQQMMAoG
|
||||
# CCsGAQUFBwMDMA4GA1UdDwEB/wQEAwIHgDAbBgkrBgEEAYI3FQoEDjAMMAoGCCsG
|
||||
# AQUFBwMDMB0GA1UdDgQWBBRpLREEN8ouqVAjy36kDfV4M4YSTzAfBgNVHSMEGDAW
|
||||
# gBSWx7Rvmiz0f0ZAwCpnHof4LRWcKTBaBgNVHR8EUzBRME+gTaBLhklodHRwOi8v
|
||||
# cGtpLmNjeC5jYXJlY2VudHJpeC5jb20vY2VydGVucm9sbC9DQ1glMjBEb21haW4l
|
||||
# MjBJc3N1aW5nJTIwQ0EuY3JsMIGBBggrBgEFBQcBAQR1MHMwcQYIKwYBBQUHMAKG
|
||||
# ZWh0dHA6Ly9wa2kuY2N4LmNhcmVjZW50cml4LmNvbS9jZXJ0ZW5yb2xsL1BQS0kw
|
||||
# MDQuY2N4LmNhcmVjZW50cml4LmNvbV9DQ1glMjBEb21haW4lMjBJc3N1aW5nJTIw
|
||||
# Q0EuY3J0MDgGA1UdEQQxMC+gLQYKKwYBBAGCNxQCA6AfDB1hbmRyZXcuYW1hc29u
|
||||
# QGNhcmVjZW50cml4LmNvbTBNBgkrBgEEAYI3GQIEQDA+oDwGCisGAQQBgjcZAgGg
|
||||
# LgQsUy0xLTUtMjEtMTE3OTk0ODU1LTE2OTk3ODc3LTM1ODA5NTM0MzgtODI0MDkw
|
||||
# DQYJKoZIhvcNAQELBQADggEBAFDwW1McWcyvVDe+vYaKdi3raEkRXlDAUnyblXzw
|
||||
# juBRARJS/G4SdIT7sWYMefvRDjY6LF+aaJKpBtp/VlIveUaeNZ+wpai7bwXYtxKb
|
||||
# ZF6dnKFhnSzzmApi09ep3jkD/WADgy6jZ4k5i6GZvqHN3r9s5Wc7/AP45pcgOLXF
|
||||
# n7yVa+5nlHJ/I4orxGvJuj0H/wOhoH3ESaUJuWXo6ANcfnCsP8ETWfBlm9jrW0tG
|
||||
# MST88T1GuP8vvL651uacOKYjy5LMIm4zFwjhEtg/fSfXIIybsOUkzrt1FB1OEkiL
|
||||
# pimivoRafSa2zfZNx2/jws0Q3KVSADB5NI3MHvJiBdGQz1owgga3MIIFn6ADAgEC
|
||||
# AhMTAAAAAquNE9NCf3mRAAAAAAACMA0GCSqGSIb3DQEBCwUAMCsxKTAnBgNVBAMT
|
||||
# IENhcmVDZW50cml4IENvcnBvcmF0ZSBSb290IENBIElJMB4XDTE2MDMwMzE5MDQw
|
||||
# OFoXDTM2MDMwMzE3NDgxMFowLDEqMCgGA1UEAxMhQ2FyZUNlbnRyaXggQ29ycG9y
|
||||
# YXRlIFBvbGljeSBDQSBJMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
|
||||
# mih9mZKxa2GGpc3RxX6Y8zQlP8lRsZ05KtC+RkIEJAs9ucIbEvWCTExjqG2Wmt9w
|
||||
# 0Ph6+ZOxafEa0awsMzvRa2upsBs6rEqhvuWKySoXxtSJE/eJyYqAqwa6qmIeFZYA
|
||||
# mE6ewprnyO+1r9HSbW+OHWAe7LMWnGLCdX/ls3yB9p9ax/DGR/3xX+XBrEreevOF
|
||||
# srAUDzcgHpi4vAh4j1TQdvH2AtZ47AsHirakZI1vBrygf9uLPWSxKwyMy9xebiZl
|
||||
# mKc4WPR51aYXwt8nsUy6MnjTjOvFJto+dHakWQngEW/dYDy3JUh5LIkuYDJvIm5v
|
||||
# MQyug7Yh02CZs4+1NMVsPQIDAQABo4ID0TCCA80wEAYJKwYBBAGCNxUBBAMCAQAw
|
||||
# HQYDVR0OBBYEFMP+zZMzw1VnJs8h5P18DA4SsUN0MIGpBgNVHSAEgaEwgZ4wgZsG
|
||||
# IiqGSIb3FAG+QJN6s3DjBYGPDoGSSILqTYLehhyF1N84AmQwdTA6BggrBgEFBQcC
|
||||
# AjAuHiwATABlAGcAYQBsACAAUABvAGwAaQBjAHkAIABTAHQAYQB0AGUAbQBlAG4A
|
||||
# dDA3BggrBgEFBQcCARYraHR0cDovL3BraS5jY3guY2FyZWNlbnRyaXguY29tL3Br
|
||||
# aS9jcHMudHh0ADAZBgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMAQTALBgNVHQ8EBAMC
|
||||
# AYYwEgYDVR0TAQH/BAgwBgEB/wIBATAfBgNVHSMEGDAWgBSrs2vcHt1Q/sf0tn+I
|
||||
# DWEvItiT3TCCAUcGA1UdHwSCAT4wggE6MIIBNqCCATKgggEuhoHTbGRhcDovLy9D
|
||||
# Tj1DYXJlQ2VudHJpeCUyMENvcnBvcmF0ZSUyMFJvb3QlMjBDQSUyMElJLENOPVBQ
|
||||
# S0kwMDEsQ049Q0RQLENOPVB1YmxpYyUyMEtleSUyMFNlcnZpY2VzLENOPVNlcnZp
|
||||
# Y2VzLENOPUNvbmZpZ3VyYXRpb24sREM9Q2FyZUNlbnRyaXgsREM9Q29tP2NlcnRp
|
||||
# ZmljYXRlUmV2b2NhdGlvbkxpc3Q/YmFzZT9vYmplY3RDbGFzcz1jUkxEaXN0cmli
|
||||
# dXRpb25Qb2ludIZWaHR0cDovL3BraS5jY3guY2FyZWNlbnRyaXguY29tL2NlcnRl
|
||||
# bnJvbGwvQ2FyZUNlbnRyaXglMjBDb3Jwb3JhdGUlMjBSb290JTIwQ0ElMjBJSS5j
|
||||
# cmwwggFEBggrBgEFBQcBAQSCATYwggEyMIHLBggrBgEFBQcwAoaBvmxkYXA6Ly8v
|
||||
# Q049Q2FyZUNlbnRyaXglMjBDb3Jwb3JhdGUlMjBSb290JTIwQ0ElMjBJSSxDTj1B
|
||||
# SUEsQ049UHVibGljJTIwS2V5JTIwU2VydmljZXMsQ049U2VydmljZXMsQ049Q29u
|
||||
# ZmlndXJhdGlvbixEQz1DYXJlQ2VudHJpeCxEQz1Db20/Y0FDZXJ0aWZpY2F0ZT9i
|
||||
# YXNlP29iamVjdENsYXNzPWNlcnRpZmljYXRpb25BdXRob3JpdHkwYgYIKwYBBQUH
|
||||
# MAKGVmh0dHA6Ly9wa2kuY2N4LmNhcmVjZW50cml4LmNvbS9jZXJ0ZW5yb2xsL0Nh
|
||||
# cmVDZW50cml4JTIwQ29ycG9yYXRlJTIwUm9vdCUyMENBJTIwSUkuY3J0MA0GCSqG
|
||||
# SIb3DQEBCwUAA4IBAQBGcGvwx7dsRpHryqeJKG9U60dL6WA3fWHw5laVScvL8TPD
|
||||
# gh0Jb4fTtkV+pSxfszlPlWzzgHWlUvL/t7QNSLNjeE6eS+17QRxi37sGqBT0xfk3
|
||||
# iwXK9ydqLz4MUlBL0XBJdM1fd/DLruowgMKaIks7getYzPM6WfJ6ghdk8DWYBdsX
|
||||
# YwZRw3TU3KD0hS3aAoF41/jZ1OdimXDZpE7xPhcf1eNYyZiGttwidGh0MEouFcuD
|
||||
# 78Lc/7C0F8F/CyL1IWeaMsqWjksup71owXcTdEqrL0+hOI846KomZXT/6gRsSqJl
|
||||
# SNf+0/10R7eBWAmNk0ey2kTFGa2fAeCKCBTblcmUMIIG9zCCBd+gAwIBAgITNAAA
|
||||
# AATg0fZdj7qTuwAAAAAABDANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDEyFDYXJl
|
||||
# Q2VudHJpeCBDb3Jwb3JhdGUgUG9saWN5IENBIEkwHhcNMTYwMzE3MjAyNzU3WhcN
|
||||
# MzYwMzAzMTc0ODEwWjBnMRMwEQYKCZImiZPyLGQBGRYDY29tMRswGQYKCZImiZPy
|
||||
# LGQBGRYLY2FyZWNlbnRyaXgxEzARBgoJkiaJk/IsZAEZFgNjY3gxHjAcBgNVBAMT
|
||||
# FUNDWCBEb21haW4gSXNzdWluZyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
|
||||
# AQoCggEBAJXYrY06ABvry0Gx0t04eEl/UUvtb9yJ5Il+pUIjx5MuR0ya13sEk85J
|
||||
# p+L4hf1zVf3EniLJDLVn38j3BGxyIJQKkUmsE05JQ2oV1I5Q5bnHesBJSPs/ccRi
|
||||
# BGAhKxGyx7rMUn5zV/tBzhuDzmLNoWdEeUanbkS38IXOEjlbr/O7PjznCGB0B/8O
|
||||
# WDE8hBqbceIL3E7Sk/8chcDK24sMTq/5u7NBjGAa7q7R2Qa+WtcqeG1tuNbZiqMk
|
||||
# wUnIBNy4FVcRIFpEl0AM9zOavGoAUV2o2xCR9yQ3pzhLaUhQr/ozQX1sV+RWCkz8
|
||||
# WeROkqEkFXoA28vLXRs2KGFo/gD3H4kCAwEAAaOCA9UwggPRMBAGCSsGAQQBgjcV
|
||||
# AQQDAgEAMB0GA1UdDgQWBBSWx7Rvmiz0f0ZAwCpnHof4LRWcKTCBqQYDVR0gBIGh
|
||||
# MIGeMIGbBiIqhkiG9xQBvkCTerNw4wWBjw6BkkiC6k2C3oYchdTfOAJkMHUwOgYI
|
||||
# KwYBBQUHAgIwLh4sAEwAZQBnAGEAbAAgAFAAbwBsAGkAYwB5ACAAUwB0AGEAdABl
|
||||
# AG0AZQBuAHQwNwYIKwYBBQUHAgEWK2h0dHA6Ly9wa2kuY2N4LmNhcmVjZW50cml4
|
||||
# LmNvbS9wa2kvY3BzLnR4dAAwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYD
|
||||
# VR0PBAQDAgGGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHwYDVR0jBBgwFoAUw/7NkzPD
|
||||
# VWcmzyHk/XwMDhKxQ3QwggFJBgNVHR8EggFAMIIBPDCCATigggE0oIIBMIaB1Gxk
|
||||
# YXA6Ly8vQ049Q2FyZUNlbnRyaXglMjBDb3Jwb3JhdGUlMjBQb2xpY3klMjBDQSUy
|
||||
# MEksQ049UFBLSTAwMixDTj1DRFAsQ049UHVibGljJTIwS2V5JTIwU2VydmljZXMs
|
||||
# Q049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixEQz1DYXJlQ2VudHJpeCxEQz1j
|
||||
# b20/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdD9iYXNlP29iamVjdENsYXNzPWNS
|
||||
# TERpc3RyaWJ1dGlvblBvaW50hldodHRwOi8vcGtpLmNjeC5jYXJlY2VudHJpeC5j
|
||||
# b20vY2VydGVucm9sbC9DYXJlQ2VudHJpeCUyMENvcnBvcmF0ZSUyMFBvbGljeSUy
|
||||
# MENBJTIwSS5jcmwwggFGBggrBgEFBQcBAQSCATgwggE0MIHMBggrBgEFBQcwAoaB
|
||||
# v2xkYXA6Ly8vQ049Q2FyZUNlbnRyaXglMjBDb3Jwb3JhdGUlMjBQb2xpY3klMjBD
|
||||
# QSUyMEksQ049QUlBLENOPVB1YmxpYyUyMEtleSUyMFNlcnZpY2VzLENOPVNlcnZp
|
||||
# Y2VzLENOPUNvbmZpZ3VyYXRpb24sREM9Q2FyZUNlbnRyaXgsREM9Y29tP2NBQ2Vy
|
||||
# dGlmaWNhdGU/YmFzZT9vYmplY3RDbGFzcz1jZXJ0aWZpY2F0aW9uQXV0aG9yaXR5
|
||||
# MGMGCCsGAQUFBzAChldodHRwOi8vcGtpLmNjeC5jYXJlY2VudHJpeC5jb20vY2Vy
|
||||
# dGVucm9sbC9DYXJlQ2VudHJpeCUyMENvcnBvcmF0ZSUyMFBvbGljeSUyMENBJTIw
|
||||
# SS5jcnQwDQYJKoZIhvcNAQELBQADggEBABdT37EVfHA6MyrYGsYRqcCEqPTAnO3G
|
||||
# z8u8XDKea4TWA9pEoziLFWD89TJZSYvaUDIdLCwi1/UPyVNpLBrjKhX68FqOZejD
|
||||
# i2wfaVGXIX/5vT2o4uttXSmIUn+zNx+k2n84u3CwVv0PrO+/8RBdH2Vgm1m+aho7
|
||||
# G31tgK/63HX9RsJ0gVHLj090dO4GaaSU+0MeeXyouGj933H5r6mYr84uaXyBgs6V
|
||||
# T1YRWYOGByq6HkS0Y0nYEkwxYeOJO6QxydZdtQN2DL1OPjkTVz20IJ46c8XBEDvo
|
||||
# Gz2FD2qZw+H4h7mK1DJWPgdpaHLRJFM5lBUmfUVMzed37fE9d7UNhEQxggIfMIIC
|
||||
# GwIBATB+MGcxEzARBgoJkiaJk/IsZAEZFgNjb20xGzAZBgoJkiaJk/IsZAEZFgtj
|
||||
# YXJlY2VudHJpeDETMBEGCgmSJomT8ixkARkWA2NjeDEeMBwGA1UEAxMVQ0NYIERv
|
||||
# bWFpbiBJc3N1aW5nIENBAhMTAAXZYnJ9GsM5Y9KkAAAABdliMAkGBSsOAwIaBQCg
|
||||
# eDAYBgorBgEEAYI3AgEMMQowCKACgAChAoAAMBkGCSqGSIb3DQEJAzEMBgorBgEE
|
||||
# AYI3AgEEMBwGCisGAQQBgjcCAQsxDjAMBgorBgEEAYI3AgEVMCMGCSqGSIb3DQEJ
|
||||
# BDEWBBQQjwIEel8sIz8q9Yg9axjlDa2YkTANBgkqhkiG9w0BAQEFAASCAQAPvviq
|
||||
# GJZYzD47MLIGRepgimkB6pFxPS9zaF7QhxGKntZa3W3jcXDEF0g5COE8uoaoHcKv
|
||||
# QmrnRD18CODOlOZTR6xzLss3iTQ4AWsRYCnpT13gA//OndGvjEAKSrASJQMs+g5o
|
||||
# TXLoVLjFX2+xC5im7S3h2LGZYSA2jej5aB0TCSD3z+hK6eXke2olEOtqs3GFHfGG
|
||||
# 7jFROrIa4S9kvm3B7kIRyBPGIaBooMnNvVHmHO1mmqb0tdvzbdstFR+3NcHU4ewZ
|
||||
# mYZ7K5EbsWMc0F5fPH/wof1UvWGBIVy9rwT+jMm5At0lJ0E0XFL0QKY93WK3bCp+
|
||||
# TU6LXTL0T+HGZ0Mr
|
||||
# SIG # End signature block
|
||||
@@ -0,0 +1,429 @@
|
||||
# ------------------------------------------------------------------------------------------------------------ #
|
||||
# Author(s) : Peter Klapwijk - www.inthecloud247.com #
|
||||
# Version : 1.0 #
|
||||
# #
|
||||
# Description : Script that runs on network change and connects drive mapping(s) #
|
||||
# #
|
||||
# Changes : v1.0 - Initial version #
|
||||
# #
|
||||
# This script is provide "As-Is" without any warranties #
|
||||
# #
|
||||
#------------------------------------------------------------------------------------------------------------- #
|
||||
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# Functions
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
Function CleanUpAndExit() {
|
||||
Param(
|
||||
[Parameter(Mandatory=$True)][String]$ErrorLevel
|
||||
)
|
||||
|
||||
# Write results to log file
|
||||
$NOW = Get-Date -Format "yyyyMMdd-hhmmss"
|
||||
|
||||
If ($ErrorLevel -eq "0") {
|
||||
Write-Host "Drive mappings connected successfully at $NOW"
|
||||
} else {
|
||||
Write-Host "Connecting drive mappings failed at $NOW with error $Errorlevel"
|
||||
}
|
||||
|
||||
# Exit Script with the specified ErrorLevel
|
||||
Stop-Transcript | Out-Null
|
||||
EXIT $ErrorLevel
|
||||
}
|
||||
|
||||
function Test-DCConnection
|
||||
{
|
||||
$DCConnection = Test-Connection ldap.ccx.carecentrix.com -Count 1
|
||||
return ($DCConnection -ne $null)
|
||||
}
|
||||
|
||||
function Test-DriveMappingG
|
||||
{
|
||||
$DriveMappingG = Get-PSDrive -Name "G" -erroraction 'silentlycontinue'
|
||||
return ($DriveMappingG -ne $null)
|
||||
}
|
||||
|
||||
function Test-DriveMappingO
|
||||
{
|
||||
$DriveMappingO = Get-PSDrive -Name "O" -erroraction 'silentlycontinue'
|
||||
return ($DriveMappingO -ne $null)
|
||||
}
|
||||
|
||||
function Test-DriveMappingR
|
||||
{
|
||||
$DriveMappingR = Get-PSDrive -Name "R" -erroraction 'silentlycontinue'
|
||||
return ($DriveMappingR -ne $null)
|
||||
}
|
||||
function Test-DriveMappingW
|
||||
{
|
||||
$DriveMappingW = Get-PSDrive -Name "W" -erroraction 'silentlycontinue'
|
||||
return ($DriveMappingW -ne $null)
|
||||
}
|
||||
function Test-DriveMappingY
|
||||
{
|
||||
$DriveMappingW = Get-PSDrive -Name "Y" -erroraction 'silentlycontinue'
|
||||
return ($DriveMappingY -ne $null)
|
||||
}
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# Start Transcript
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
$Transcript = "C:\programdata\Microsoft\IntuneManagementExtension\Logs\$($(Split-Path $PSCommandPath -Leaf).ToLower().Replace(".ps1",".log"))"
|
||||
Start-Transcript -Path $Transcript | Out-Null
|
||||
|
||||
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# Check domain connectivity
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
|
||||
if (Test-DCConnection -eq $True){
|
||||
Write-Host "STATUS: Domain connection OK"
|
||||
}
|
||||
else {
|
||||
Write-Host "STATUS: No connection with the domain. Unable to connect drive mappings!"
|
||||
CleanUpAndExit -ErrorLevel 1
|
||||
}
|
||||
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# Get User AD Information
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
|
||||
#$userinfo = Get-ADUser -Identity $env:username -Server ccx.carecentrix.com -Properties HomeDirectory
|
||||
|
||||
$username = $env:username
|
||||
$filter = "SamAccountName=$username"
|
||||
$searcher = [DirectoryServices.DirectorySearcher]::new($ad,$filter)
|
||||
$user = $searcher.FindOne()
|
||||
$userinfo = $user.Properties
|
||||
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# Add drive mapping(s)
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# Standard Mappings
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
|
||||
if (Test-DriveMappingG -eq $True){
|
||||
Write-Host "A drive with the name 'G' already exists"
|
||||
}
|
||||
else {
|
||||
New-PSDrive -Name "G" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares" -Persist -Scope Global
|
||||
Write-Host "Drive G: is connected"
|
||||
}
|
||||
if (Test-DriveMappingY -eq $True){
|
||||
Write-Host "A drive with the name 'Y' already exists"
|
||||
}
|
||||
else {
|
||||
New-PSDrive -Name "Y" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\apps\ebins_legacy" -Persist -Scope Global
|
||||
Write-Host "Drive Y: is connected"
|
||||
}
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# Dept Specific Mappings
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
|
||||
|
||||
|
||||
|
||||
if (Test-DriveMappingO -eq $True){
|
||||
Write-Host "A drive with the name 'O' already exists"
|
||||
}
|
||||
else {
|
||||
switch ($userinfo.DistinguishedName) {
|
||||
($userinfo.DistinguishedName -like "*AZPH*"){
|
||||
New-PSDrive -Name "O" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\ccx\AZPH" -Persist -Scope Global
|
||||
Write-Host "Drive O: is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*FLT2*"){
|
||||
New-PSDrive -Name "O" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\ccx\FLTA" -Persist -Scope Global
|
||||
Write-Host "Drive O: is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*FLTA*"){
|
||||
New-PSDrive -Name "O" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\ccx\FLTA" -Persist -Scope Global
|
||||
Write-Host "Drive O: is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*KSOP*"){
|
||||
New-PSDrive -Name "O" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\ccx\KSOP" -Persist -Scope Global
|
||||
Write-Host "Drive O: is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*CTHA*"){
|
||||
New-PSDrive -Name "O" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\ccx\CTHA" -Persist -Scope Global
|
||||
Write-Host "Drive O: is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*CTST*"){
|
||||
New-PSDrive -Name "O" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\ccx\CTHA" -Persist -Scope Global
|
||||
Write-Host "Drive O: is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*NYME*"){
|
||||
New-PSDrive -Name "O" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\ccx\NYME" -Persist -Scope Global
|
||||
Write-Host "Drive O: is connected"
|
||||
break}
|
||||
default {
|
||||
New-PSDrive -Name "O" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\ccx" -Persist -Scope Global
|
||||
Write-Host "Drive O: is connected"
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (Test-DriveMappingR -eq $True){
|
||||
Write-Host "A drive with the name 'R' already exists"
|
||||
}
|
||||
else {
|
||||
switch ($userinfo.DistinguishedName) {
|
||||
($userinfo.DistinguishedName -like "*AZPH*"){
|
||||
New-PSDrive -Name "R" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\AZPH" -Persist -Scope Global
|
||||
Write-Host "Drive R is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*FLT2*"){
|
||||
New-PSDrive -Name "R" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\FLTA" -Persist -Scope Global
|
||||
Write-Host "Drive R is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*FLTA*"){
|
||||
New-PSDrive -Name "R" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\FLTA" -Persist -Scope Global
|
||||
Write-Host "Drive R is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*KSOP*"){
|
||||
New-PSDrive -Name "R" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\KSOP" -Persist -Scope Global
|
||||
Write-Host "Drive R is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*CTHA*"){
|
||||
New-PSDrive -Name "R" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\CTHA" -Persist -Scope Global
|
||||
Write-Host "Drive R is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*CTST*"){
|
||||
New-PSDrive -Name "R" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\CTHA" -Persist -Scope Global
|
||||
Write-Host "Drive R is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*NYME*"){
|
||||
New-PSDrive -Name "R" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\NYME" -Persist -Scope Global
|
||||
Write-Host "Drive R is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*NMAL*"){
|
||||
New-PSDrive -Name "R" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\NMAL" -Persist -Scope Global
|
||||
Write-Host "Drive R is connected"
|
||||
break}
|
||||
default {
|
||||
New-PSDrive -Name "R" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts" -Persist -Scope Global
|
||||
Write-Host "Drive R is connected"
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (Test-DriveMappingW -eq $True){
|
||||
Write-Host "A drive with the name 'W' already exists"
|
||||
}
|
||||
else {
|
||||
switch ($userinfo.DistinguishedName) {
|
||||
($userinfo.DistinguishedName -like "*AZPH*"){
|
||||
New-PSDrive -Name "W" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\AZPH" -Persist -Scope Global
|
||||
Write-Host "Drive W is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*FLT2*"){
|
||||
New-PSDrive -Name "W" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\FLTA" -Persist -Scope Global
|
||||
Write-Host "Drive W is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*FLTA*"){
|
||||
New-PSDrive -Name "W" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\FLTA" -Persist -Scope Global
|
||||
Write-Host "Drive W is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*KSOP*"){
|
||||
New-PSDrive -Name "W" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\KSOP" -Persist -Scope Global
|
||||
Write-Host "Drive W is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*CTHA*"){
|
||||
New-PSDrive -Name "W" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\CTHA" -Persist -Scope Global
|
||||
Write-Host "Drive W is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*CTST*"){
|
||||
New-PSDrive -Name "W" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\CTHA" -Persist -Scope Global
|
||||
Write-Host "Drive W is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*NYME*"){
|
||||
New-PSDrive -Name "W" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\NYME" -Persist -Scope Global
|
||||
Write-Host "Drive W is connected"
|
||||
break}
|
||||
($userinfo.DistinguishedName -like "*NMAL*"){
|
||||
New-PSDrive -Name "W" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts\NMAL" -Persist -Scope Global
|
||||
Write-Host "Drive W is connected"
|
||||
break}
|
||||
default {
|
||||
New-PSDrive -Name "W" -PSProvider FileSystem -Root "\\ccx.carecentrix.com\shares\Depts" -Persist -Scope Global
|
||||
Write-Host "Drive W is connected"
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
# Check end state
|
||||
# ------------------------------------------------------------------------------------------------------- #
|
||||
if (Test-DriveMappingG -eq $True){
|
||||
Write-Host "STATUS: G: drive connected"
|
||||
}
|
||||
else {
|
||||
Write-Host "STATUS: G: drive not connected, unknown error"
|
||||
CleanUpAndExit -ErrorLevel 2
|
||||
}
|
||||
if (Test-DriveMappingY -eq $True){
|
||||
Write-Host "STATUS: Y: drive connected"
|
||||
}
|
||||
else {
|
||||
Write-Host "STATUS: Y: drive not connected, unknown error"
|
||||
CleanUpAndExit -ErrorLevel 2
|
||||
}
|
||||
if (Test-DriveMappingO -eq $True){
|
||||
Write-Host "STATUS: O: drive connected"
|
||||
}
|
||||
else {
|
||||
Write-Host "STATUS: O: drive not connected, unknown error"
|
||||
CleanUpAndExit -ErrorLevel 2
|
||||
}
|
||||
|
||||
if (Test-DriveMappingP -eq $True){
|
||||
Write-Host "STATUS: P: drive connected"
|
||||
CleanUpAndExit -ErrorLevel 0
|
||||
}
|
||||
else {
|
||||
Write-Host "STATUS: P: drive not connected, unknown error"
|
||||
CleanUpAndExit -ErrorLevel 2
|
||||
}
|
||||
if (Test-DriveMappingR -eq $True){
|
||||
Write-Host "STATUS: R: drive connected"
|
||||
CleanUpAndExit -ErrorLevel 0
|
||||
}
|
||||
else {
|
||||
Write-Host "STATUS: R: drive not connected, unknown error"
|
||||
CleanUpAndExit -ErrorLevel 2
|
||||
}
|
||||
if (Test-DriveMappingW -eq $True){
|
||||
Write-Host "STATUS: W: drive connected"
|
||||
CleanUpAndExit -ErrorLevel 0
|
||||
}
|
||||
else {
|
||||
Write-Host "STATUS: W: drive not connected, unknown error"
|
||||
CleanUpAndExit -ErrorLevel 2
|
||||
}
|
||||
|
||||
# SIG # Begin signature block
|
||||
# MIIWKAYJKoZIhvcNAQcCoIIWGTCCFhUCAQExCzAJBgUrDgMCGgUAMGkGCisGAQQB
|
||||
# gjcCAQSgWzBZMDQGCisGAQQBgjcCAR4wJgIDAQAABBAfzDtgWUsITrck0sYpfvNR
|
||||
# AgEAAgEAAgEAAgEAAgEAMCEwCQYFKw4DAhoFAAQUXds1YbXTOMQCeX+MxCkjU5+u
|
||||
# 5I6gghNzMIIFuTCCBKGgAwIBAgITEwAF2WJyfRrDOWPSpAAAAAXZYjANBgkqhkiG
|
||||
# 9w0BAQsFADBnMRMwEQYKCZImiZPyLGQBGRYDY29tMRswGQYKCZImiZPyLGQBGRYL
|
||||
# Y2FyZWNlbnRyaXgxEzARBgoJkiaJk/IsZAEZFgNjY3gxHjAcBgNVBAMTFUNDWCBE
|
||||
# b21haW4gSXNzdWluZyBDQTAeFw0yMzAzMTYxNDE0MzRaFw0yODAzMTQxNDE0MzRa
|
||||
# MIGUMRMwEQYKCZImiZPyLGQBGRYDY29tMRswGQYKCZImiZPyLGQBGRYLY2FyZWNl
|
||||
# bnRyaXgxEzARBgoJkiaJk/IsZAEZFgNjY3gxGTAXBgNVBAsTEFNlcnZlcmxlc3Mg
|
||||
# U2l0ZXMxFzAVBgNVBAsTDldvcmsgRnJvbSBIb21lMRcwFQYDVQQDEw5BbWFzb24s
|
||||
# IEFuZHJldzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMLCjBaNvPFh
|
||||
# rtISwkR9DTn3Wx6YlH/AjKFLH+6MEbKdwWWUPyWQ6XUcMug/PbAvKuSMmEodBN+h
|
||||
# r2pFKPT/YXGZGCWisJMlkR7nQrdnzb6oGiWxhoS7ElD6YUqTriVBxBOj8Dx494Lc
|
||||
# /P76Jshby0ral37gJsd2nRL8Yw9TzzJP2H6aFuwJ9T/W8vdibYWef4jUxfgTJ+sA
|
||||
# rePJONZwRTYkZHfCCQTQgGvaBv6RJ3WMWSzCLewnm6cAqu7rgeknmNfC2/gasBg2
|
||||
# UPXyITK6edSx1XfXTfUr5TbJpi+cWOKuixUqOmNYJaRf/4jlTvnsDCKtBRtMA6WT
|
||||
# gYGrNx59RFUCAwEAAaOCAi4wggIqMD0GCSsGAQQBgjcVBwQwMC4GJisGAQQBgjcV
|
||||
# CIe8uiGEwuM0zYklgq6SOoSJ8HiBD4flphKDp98YAgFkAgEDMBMGA1UdJQQMMAoG
|
||||
# CCsGAQUFBwMDMA4GA1UdDwEB/wQEAwIHgDAbBgkrBgEEAYI3FQoEDjAMMAoGCCsG
|
||||
# AQUFBwMDMB0GA1UdDgQWBBRpLREEN8ouqVAjy36kDfV4M4YSTzAfBgNVHSMEGDAW
|
||||
# gBSWx7Rvmiz0f0ZAwCpnHof4LRWcKTBaBgNVHR8EUzBRME+gTaBLhklodHRwOi8v
|
||||
# cGtpLmNjeC5jYXJlY2VudHJpeC5jb20vY2VydGVucm9sbC9DQ1glMjBEb21haW4l
|
||||
# MjBJc3N1aW5nJTIwQ0EuY3JsMIGBBggrBgEFBQcBAQR1MHMwcQYIKwYBBQUHMAKG
|
||||
# ZWh0dHA6Ly9wa2kuY2N4LmNhcmVjZW50cml4LmNvbS9jZXJ0ZW5yb2xsL1BQS0kw
|
||||
# MDQuY2N4LmNhcmVjZW50cml4LmNvbV9DQ1glMjBEb21haW4lMjBJc3N1aW5nJTIw
|
||||
# Q0EuY3J0MDgGA1UdEQQxMC+gLQYKKwYBBAGCNxQCA6AfDB1hbmRyZXcuYW1hc29u
|
||||
# QGNhcmVjZW50cml4LmNvbTBNBgkrBgEEAYI3GQIEQDA+oDwGCisGAQQBgjcZAgGg
|
||||
# LgQsUy0xLTUtMjEtMTE3OTk0ODU1LTE2OTk3ODc3LTM1ODA5NTM0MzgtODI0MDkw
|
||||
# DQYJKoZIhvcNAQELBQADggEBAFDwW1McWcyvVDe+vYaKdi3raEkRXlDAUnyblXzw
|
||||
# juBRARJS/G4SdIT7sWYMefvRDjY6LF+aaJKpBtp/VlIveUaeNZ+wpai7bwXYtxKb
|
||||
# ZF6dnKFhnSzzmApi09ep3jkD/WADgy6jZ4k5i6GZvqHN3r9s5Wc7/AP45pcgOLXF
|
||||
# n7yVa+5nlHJ/I4orxGvJuj0H/wOhoH3ESaUJuWXo6ANcfnCsP8ETWfBlm9jrW0tG
|
||||
# MST88T1GuP8vvL651uacOKYjy5LMIm4zFwjhEtg/fSfXIIybsOUkzrt1FB1OEkiL
|
||||
# pimivoRafSa2zfZNx2/jws0Q3KVSADB5NI3MHvJiBdGQz1owgga3MIIFn6ADAgEC
|
||||
# AhMTAAAAAquNE9NCf3mRAAAAAAACMA0GCSqGSIb3DQEBCwUAMCsxKTAnBgNVBAMT
|
||||
# IENhcmVDZW50cml4IENvcnBvcmF0ZSBSb290IENBIElJMB4XDTE2MDMwMzE5MDQw
|
||||
# OFoXDTM2MDMwMzE3NDgxMFowLDEqMCgGA1UEAxMhQ2FyZUNlbnRyaXggQ29ycG9y
|
||||
# YXRlIFBvbGljeSBDQSBJMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
|
||||
# mih9mZKxa2GGpc3RxX6Y8zQlP8lRsZ05KtC+RkIEJAs9ucIbEvWCTExjqG2Wmt9w
|
||||
# 0Ph6+ZOxafEa0awsMzvRa2upsBs6rEqhvuWKySoXxtSJE/eJyYqAqwa6qmIeFZYA
|
||||
# mE6ewprnyO+1r9HSbW+OHWAe7LMWnGLCdX/ls3yB9p9ax/DGR/3xX+XBrEreevOF
|
||||
# srAUDzcgHpi4vAh4j1TQdvH2AtZ47AsHirakZI1vBrygf9uLPWSxKwyMy9xebiZl
|
||||
# mKc4WPR51aYXwt8nsUy6MnjTjOvFJto+dHakWQngEW/dYDy3JUh5LIkuYDJvIm5v
|
||||
# MQyug7Yh02CZs4+1NMVsPQIDAQABo4ID0TCCA80wEAYJKwYBBAGCNxUBBAMCAQAw
|
||||
# HQYDVR0OBBYEFMP+zZMzw1VnJs8h5P18DA4SsUN0MIGpBgNVHSAEgaEwgZ4wgZsG
|
||||
# IiqGSIb3FAG+QJN6s3DjBYGPDoGSSILqTYLehhyF1N84AmQwdTA6BggrBgEFBQcC
|
||||
# AjAuHiwATABlAGcAYQBsACAAUABvAGwAaQBjAHkAIABTAHQAYQB0AGUAbQBlAG4A
|
||||
# dDA3BggrBgEFBQcCARYraHR0cDovL3BraS5jY3guY2FyZWNlbnRyaXguY29tL3Br
|
||||
# aS9jcHMudHh0ADAZBgkrBgEEAYI3FAIEDB4KAFMAdQBiAEMAQTALBgNVHQ8EBAMC
|
||||
# AYYwEgYDVR0TAQH/BAgwBgEB/wIBATAfBgNVHSMEGDAWgBSrs2vcHt1Q/sf0tn+I
|
||||
# DWEvItiT3TCCAUcGA1UdHwSCAT4wggE6MIIBNqCCATKgggEuhoHTbGRhcDovLy9D
|
||||
# Tj1DYXJlQ2VudHJpeCUyMENvcnBvcmF0ZSUyMFJvb3QlMjBDQSUyMElJLENOPVBQ
|
||||
# S0kwMDEsQ049Q0RQLENOPVB1YmxpYyUyMEtleSUyMFNlcnZpY2VzLENOPVNlcnZp
|
||||
# Y2VzLENOPUNvbmZpZ3VyYXRpb24sREM9Q2FyZUNlbnRyaXgsREM9Q29tP2NlcnRp
|
||||
# ZmljYXRlUmV2b2NhdGlvbkxpc3Q/YmFzZT9vYmplY3RDbGFzcz1jUkxEaXN0cmli
|
||||
# dXRpb25Qb2ludIZWaHR0cDovL3BraS5jY3guY2FyZWNlbnRyaXguY29tL2NlcnRl
|
||||
# bnJvbGwvQ2FyZUNlbnRyaXglMjBDb3Jwb3JhdGUlMjBSb290JTIwQ0ElMjBJSS5j
|
||||
# cmwwggFEBggrBgEFBQcBAQSCATYwggEyMIHLBggrBgEFBQcwAoaBvmxkYXA6Ly8v
|
||||
# Q049Q2FyZUNlbnRyaXglMjBDb3Jwb3JhdGUlMjBSb290JTIwQ0ElMjBJSSxDTj1B
|
||||
# SUEsQ049UHVibGljJTIwS2V5JTIwU2VydmljZXMsQ049U2VydmljZXMsQ049Q29u
|
||||
# ZmlndXJhdGlvbixEQz1DYXJlQ2VudHJpeCxEQz1Db20/Y0FDZXJ0aWZpY2F0ZT9i
|
||||
# YXNlP29iamVjdENsYXNzPWNlcnRpZmljYXRpb25BdXRob3JpdHkwYgYIKwYBBQUH
|
||||
# MAKGVmh0dHA6Ly9wa2kuY2N4LmNhcmVjZW50cml4LmNvbS9jZXJ0ZW5yb2xsL0Nh
|
||||
# cmVDZW50cml4JTIwQ29ycG9yYXRlJTIwUm9vdCUyMENBJTIwSUkuY3J0MA0GCSqG
|
||||
# SIb3DQEBCwUAA4IBAQBGcGvwx7dsRpHryqeJKG9U60dL6WA3fWHw5laVScvL8TPD
|
||||
# gh0Jb4fTtkV+pSxfszlPlWzzgHWlUvL/t7QNSLNjeE6eS+17QRxi37sGqBT0xfk3
|
||||
# iwXK9ydqLz4MUlBL0XBJdM1fd/DLruowgMKaIks7getYzPM6WfJ6ghdk8DWYBdsX
|
||||
# YwZRw3TU3KD0hS3aAoF41/jZ1OdimXDZpE7xPhcf1eNYyZiGttwidGh0MEouFcuD
|
||||
# 78Lc/7C0F8F/CyL1IWeaMsqWjksup71owXcTdEqrL0+hOI846KomZXT/6gRsSqJl
|
||||
# SNf+0/10R7eBWAmNk0ey2kTFGa2fAeCKCBTblcmUMIIG9zCCBd+gAwIBAgITNAAA
|
||||
# AATg0fZdj7qTuwAAAAAABDANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDEyFDYXJl
|
||||
# Q2VudHJpeCBDb3Jwb3JhdGUgUG9saWN5IENBIEkwHhcNMTYwMzE3MjAyNzU3WhcN
|
||||
# MzYwMzAzMTc0ODEwWjBnMRMwEQYKCZImiZPyLGQBGRYDY29tMRswGQYKCZImiZPy
|
||||
# LGQBGRYLY2FyZWNlbnRyaXgxEzARBgoJkiaJk/IsZAEZFgNjY3gxHjAcBgNVBAMT
|
||||
# FUNDWCBEb21haW4gSXNzdWluZyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
|
||||
# AQoCggEBAJXYrY06ABvry0Gx0t04eEl/UUvtb9yJ5Il+pUIjx5MuR0ya13sEk85J
|
||||
# p+L4hf1zVf3EniLJDLVn38j3BGxyIJQKkUmsE05JQ2oV1I5Q5bnHesBJSPs/ccRi
|
||||
# BGAhKxGyx7rMUn5zV/tBzhuDzmLNoWdEeUanbkS38IXOEjlbr/O7PjznCGB0B/8O
|
||||
# WDE8hBqbceIL3E7Sk/8chcDK24sMTq/5u7NBjGAa7q7R2Qa+WtcqeG1tuNbZiqMk
|
||||
# wUnIBNy4FVcRIFpEl0AM9zOavGoAUV2o2xCR9yQ3pzhLaUhQr/ozQX1sV+RWCkz8
|
||||
# WeROkqEkFXoA28vLXRs2KGFo/gD3H4kCAwEAAaOCA9UwggPRMBAGCSsGAQQBgjcV
|
||||
# AQQDAgEAMB0GA1UdDgQWBBSWx7Rvmiz0f0ZAwCpnHof4LRWcKTCBqQYDVR0gBIGh
|
||||
# MIGeMIGbBiIqhkiG9xQBvkCTerNw4wWBjw6BkkiC6k2C3oYchdTfOAJkMHUwOgYI
|
||||
# KwYBBQUHAgIwLh4sAEwAZQBnAGEAbAAgAFAAbwBsAGkAYwB5ACAAUwB0AGEAdABl
|
||||
# AG0AZQBuAHQwNwYIKwYBBQUHAgEWK2h0dHA6Ly9wa2kuY2N4LmNhcmVjZW50cml4
|
||||
# LmNvbS9wa2kvY3BzLnR4dAAwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYD
|
||||
# VR0PBAQDAgGGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHwYDVR0jBBgwFoAUw/7NkzPD
|
||||
# VWcmzyHk/XwMDhKxQ3QwggFJBgNVHR8EggFAMIIBPDCCATigggE0oIIBMIaB1Gxk
|
||||
# YXA6Ly8vQ049Q2FyZUNlbnRyaXglMjBDb3Jwb3JhdGUlMjBQb2xpY3klMjBDQSUy
|
||||
# MEksQ049UFBLSTAwMixDTj1DRFAsQ049UHVibGljJTIwS2V5JTIwU2VydmljZXMs
|
||||
# Q049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixEQz1DYXJlQ2VudHJpeCxEQz1j
|
||||
# b20/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdD9iYXNlP29iamVjdENsYXNzPWNS
|
||||
# TERpc3RyaWJ1dGlvblBvaW50hldodHRwOi8vcGtpLmNjeC5jYXJlY2VudHJpeC5j
|
||||
# b20vY2VydGVucm9sbC9DYXJlQ2VudHJpeCUyMENvcnBvcmF0ZSUyMFBvbGljeSUy
|
||||
# MENBJTIwSS5jcmwwggFGBggrBgEFBQcBAQSCATgwggE0MIHMBggrBgEFBQcwAoaB
|
||||
# v2xkYXA6Ly8vQ049Q2FyZUNlbnRyaXglMjBDb3Jwb3JhdGUlMjBQb2xpY3klMjBD
|
||||
# QSUyMEksQ049QUlBLENOPVB1YmxpYyUyMEtleSUyMFNlcnZpY2VzLENOPVNlcnZp
|
||||
# Y2VzLENOPUNvbmZpZ3VyYXRpb24sREM9Q2FyZUNlbnRyaXgsREM9Y29tP2NBQ2Vy
|
||||
# dGlmaWNhdGU/YmFzZT9vYmplY3RDbGFzcz1jZXJ0aWZpY2F0aW9uQXV0aG9yaXR5
|
||||
# MGMGCCsGAQUFBzAChldodHRwOi8vcGtpLmNjeC5jYXJlY2VudHJpeC5jb20vY2Vy
|
||||
# dGVucm9sbC9DYXJlQ2VudHJpeCUyMENvcnBvcmF0ZSUyMFBvbGljeSUyMENBJTIw
|
||||
# SS5jcnQwDQYJKoZIhvcNAQELBQADggEBABdT37EVfHA6MyrYGsYRqcCEqPTAnO3G
|
||||
# z8u8XDKea4TWA9pEoziLFWD89TJZSYvaUDIdLCwi1/UPyVNpLBrjKhX68FqOZejD
|
||||
# i2wfaVGXIX/5vT2o4uttXSmIUn+zNx+k2n84u3CwVv0PrO+/8RBdH2Vgm1m+aho7
|
||||
# G31tgK/63HX9RsJ0gVHLj090dO4GaaSU+0MeeXyouGj933H5r6mYr84uaXyBgs6V
|
||||
# T1YRWYOGByq6HkS0Y0nYEkwxYeOJO6QxydZdtQN2DL1OPjkTVz20IJ46c8XBEDvo
|
||||
# Gz2FD2qZw+H4h7mK1DJWPgdpaHLRJFM5lBUmfUVMzed37fE9d7UNhEQxggIfMIIC
|
||||
# GwIBATB+MGcxEzARBgoJkiaJk/IsZAEZFgNjb20xGzAZBgoJkiaJk/IsZAEZFgtj
|
||||
# YXJlY2VudHJpeDETMBEGCgmSJomT8ixkARkWA2NjeDEeMBwGA1UEAxMVQ0NYIERv
|
||||
# bWFpbiBJc3N1aW5nIENBAhMTAAXZYnJ9GsM5Y9KkAAAABdliMAkGBSsOAwIaBQCg
|
||||
# eDAYBgorBgEEAYI3AgEMMQowCKACgAChAoAAMBkGCSqGSIb3DQEJAzEMBgorBgEE
|
||||
# AYI3AgEEMBwGCisGAQQBgjcCAQsxDjAMBgorBgEEAYI3AgEVMCMGCSqGSIb3DQEJ
|
||||
# BDEWBBStTVz+56O45cbuEIQpf6Rj2TfVXjANBgkqhkiG9w0BAQEFAASCAQC58lXC
|
||||
# i6QwnaFZOdjMSICRTBkkATm3wei1ofU3JuTEhVP5epZxxnPmx88fPWAwnDmf593l
|
||||
# mU1GsBDH5coxA1aSb17nCfLg4ugaz6PUpd5NXJFgrYIW9W4/XOeoBxS1gZ8zGbmK
|
||||
# jwNk6QqTyARSmQMUrcanH42U07e/iaRkvXtfI+dDcJDR/SH7iT/x2tPWoEHGZ70J
|
||||
# fYh/17QDmsBduYbkqy1symQB8hTqmsmoCvnqjXbkCBIhufVCvESGw7sj17N8VZXX
|
||||
# K3M8EL3MqAk2bkySgjhTukCX4d2ugk26Wdv9CmttSHV59WV9jrtbFap7dXxtKCGv
|
||||
# BCzxF835hs3tO6u4
|
||||
# SIG # End signature block
|
||||
@@ -0,0 +1,5 @@
|
||||
'Change COMPANY in your own company name
|
||||
Dim strArgs
|
||||
Set oShell = CreateObject ("Wscript.Shell")
|
||||
strArgs = "powershell.exe -executionpolicy bypass -windowstyle hidden -file C:\Program Files\Common Files\Carecentrix\DriveMappings\DriveMappingsv1.0_ScriptRunFromTaskScheduler.ps1"
|
||||
oShell.Run strArgs, 0, false
|
||||
Reference in New Issue
Block a user