tools/chocolateyInstall.ps1
$packageName = 'FogApi'; function Remove-ModuleManually { param ([string]$modName) $psModules = "C:\Program Files\WindowsPowerShell\Modules"; Write-Verbose "Removing module if loaded" if ($null -ne (Get-Module $modName)) { Write-Verbose "Module is loaded, removing" Remove-Module $modName -Force -EA 0; #Remove the module from the shell environment } Write-Verbose "Force uninstalling module" Uninstall-Module $modName -Force -EA 0 -AllVersions; Write-Verbose "Checking if module folder still exists in any module path" # $modPath = Get-ChildItem $psModules -Directory -Filter $modName; # Get where the module is installed $env:PSModulePath -split ';' | ForEach-Object { Remove-Item "$($_.Fullname)\$modName" -Force -Recurse -EA 0; } # if ($null -ne $modPath) { # Write-Verbose "Folder exists, removing folder"; # Remove-Item $modPath.FullName -Force -Recurse -Verbose -EA 0; #Remove the folder and file from the psmodule path # } return; } function Install-ModuleViaChoco { param($packageName) if($null -eq $(Get-InstalledModule $packageName -EA 0)) { if ($null -ne (choco list --lo | ? {$_ -match $packageName}) ) { Write-Verbose "Removing depreciated chocolatey version of module"; Remove-ModuleManually $packageName -verbose; } $Error.Clear(); Try { Install-Module -Name $packageName -Repository ArrowPS -Scope AllUsers -EA Stop; Update-PSModule $packageName; } catch { Remove-ModuleManually $packageName -verbose; Install-Module -Name $packageName -Repository ArrowPS -Scope AllUsers -EA 0 -Force; Update-PSModule $packageName; } } else { $Error.Clear(); Try { Update-Module $packageName -verbose -EA Stop; Update-PSModule $packageName; } catch { Remove-ModuleManually $packageName -verbose; Install-Module -Name $packageName -Repository ArrowPS -Scope AllUsers -Force; Update-PSModule $packageName; } } # Remove-Module $packageName -Force -EA 0; # Import-Module -Global -Name $packageName -Force -Verbose; return; } $Error.Clear(); try { Update-PSScript configPSget; configPSget.ps1; } catch { Invoke-WebRequest -Uri 'http://arrowfs4/configPSget.ps1' -UseBasicParsing | Invoke-Expression; } Install-ModuleViaChoco $packageName; return; # SIG # Begin signature block # MIIQpgYJKoZIhvcNAQcCoIIQlzCCEJMCAQExCzAJBgUrDgMCGgUAMGkGCisGAQQB # gjcCAQSgWzBZMDQGCisGAQQBgjcCAR4wJgIDAQAABBAfzDtgWUsITrck0sYpfvNR # AgEAAgEAAgEAAgEAAgEAMCEwCQYFKw4DAhoFAAQUtAvBnWyrMkwJh1KK1s1SJuOM # JRuggg0NMIIFiTCCA3GgAwIBAgIQN1osf+GqS6BH6tcXABgA1DANBgkqhkiG9w0B # AQsFADBLMRMwEQYKCZImiZPyLGQBGRYDY29tMR8wHQYKCZImiZPyLGQBGRYPYXJy # b3doZWFkZGVudGFsMRMwEQYDVQQDEwpBcnJvd1NlY0NhMB4XDTE3MDIwNzIxNTg1 # MFoXDTIyMDIwNzIyMDg0MlowSzETMBEGCgmSJomT8ixkARkWA2NvbTEfMB0GCgmS # JomT8ixkARkWD2Fycm93aGVhZGRlbnRhbDETMBEGA1UEAxMKQXJyb3dTZWNDYTCC # AiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMhkMlfIR+4RxhLYnlPRHxIp # NDa2/xRM1tlJM9EH+4+OuMO0EQMFZyYQOBCoJtsEgwGAPQ8sakSeYNE2Tjt4Tyou # abr6kOHdY6OIQPEf5cIqoTi2unlQLWnC/2tx5MBXmKFZV2ZkPeZRghJwnHByZXFn # bX31f+BRk3Bx+/PPW7h7oJTwufLo7uJAoRNJkKfTsgijyASiVqmkh5C0Vg5o5C9G # gv9DAMarhcSa1+ShF+EtxKWM4m3/MloAhb/rNPZUCUuyjqFEDQV8PdBrQh56oBZL # Q+If2pYoPPxxn8H+WPJfVTj9lkZG0IJe2ca6hmBa7dymYjQSUIBEQFC8tK2bE2er # 1vj61rORZPoxargJXTaF0SV+Hq0frPBD4GkIOQWGKbuaCfIo6nVnrPZuQ7trEAvN # 4S2mvzHvJ+nwX1CQhwcCsRW0GaLXxrfyeBsfZW67UgHcGK1tXV5h6+DR0bSPFPaa # l3kI+8rf+9NVyDAZrCm2i0Lw4NW4cxL6JBKPQPKtFV3UouwWOac9MEoqibbpYVJ3 # rYcNyNeps1oekiVKN8jydfZ3AqKXQfLzqTJdB16YWbFYs5Yn1liiJfAWT7AaxfAE # HJ67Oqr9IzGxGEM//IxqBJQeIf5/5CcMJH2UeksHZ3z3wR6VpkA/v/1rJEDfgKY/ # GJPDMv8GPbCDu3ElADbpAgMBAAGjaTBnMBMGCSsGAQQBgjcUAgQGHgQAQwBBMA4G # A1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRRWTnftW/d # bLIOrwmI+JciijhD5TAQBgkrBgEEAYI3FQEEAwIBADANBgkqhkiG9w0BAQsFAAOC # AgEAw8bm2JLVfX4caZHQ52YZB5Td/6XAoznPTAmdycOTyvCmTyUjv9A8Ftc1OexN # v2IPFRD7bL95Ms3mBfE2IBWpk/h5Mm/8ZN+6AuLXkc6200zhgbMnjvGb5s8YgSUM # nPNHnyFBA1V+P66HBc5emJKLHY50aHyI+vk0udaMHYNrfMvlopvUzpMiumWSgp3M # Y9GfiMmC2h3tjJ7E8JwNh+FSqUi63kZLqaK0B/mjtBG4DXaWLk5kSXxnntgX9oLs # 3iX9U/I0rolonjt3UVOJeRPOGiRqcCH376lgkI/FRf4aFAKf3H6WHAqgbyx+vN2h # e1uwbMQdX0gl3mok5aZoSI9znJbVIjBsZrjglvd3fXyPGbMUWCRVmOSlFwDO+zm1 # s8f5cFDtVnzMr8W+TOXd6+oxbplAMJ6XdKQPrvZTBBN55eB3WadXa/BdSXBxnBhn # SwLq+o0H9W205eXFRZNCnH3KJlnsEIsMvLiNAw9/qVYo+2nU91x4lRrPa19DqmF2 # 5D/Eh0XkubjUa4b954jX+JpffObTyc5CvpL5gUODVlyMX0a40y74zubi7Zq9+xXj # lOeOnOWpgDmWJD6iJbayIdyfZBlf/B9h3c9eFBWeCyFSuCpu8uBzmHUtem/JjF2t # MTiJ4Cvmw1eNC8MqQrXDx3s1G5qpVNE3DWNzlCJs+QfHdJIwggd8MIIFZKADAgEC # AhNdAAAATLgu1IttudRNAAAAAABMMA0GCSqGSIb3DQEBCwUAMEsxEzARBgoJkiaJ # k/IsZAEZFgNjb20xHzAdBgoJkiaJk/IsZAEZFg9hcnJvd2hlYWRkZW50YWwxEzAR # BgNVBAMTCkFycm93U2VjQ2EwHhcNMTgwNjAxMTY1OTA5WhcNMjAwNjAxMTcwOTA5 # WjBFMR0wGwYDVQQKExRBcnJvd2hlYWQgRGVudGFsIExhYjEkMCIGA1UEAxMbQXJy # b3doZWFkIElUIFNjcmlwdCBNb25rZXlzMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A # MIICCgKCAgEAxwDOE86sYxKM8czHZg4dq/8Aj7U2S6WZRmOWW80ghFQms5n8GQVo # tciKCij53oGVb6ckXLt3fWqJdyTth48oJl9Wa2+vbaq4s79W5szYS2HJdMzg9xh2 # u0F5E0XjpcHy0abU4IVTtYb/ert9GNyLJKkW8beh6+U2vlcl31A17rDVhg1Yl+tm # xOwxwxNffWcR5HZCFUrIXDTIyMgkt4KFlP75+L9D7PXJVCk3TVmCNfWYKYsmJBtr # XVKV6wb7Mm55uGbq6182zkrlhT0WHZmwEJejOgyz4g3rzevy37JE/sG723n4G2Jr # 3kzLwveLbXX3NDoeMCYkYWeVGqfoC0FOP0WM7v7ogxRFlcWaV6UOFVirThTwEE0X # se/Jw4y6vS2BgqC94rhiZk0HoGoFT8nIWVtUc5QpKC2kowkM8v13Yq8AGIWIBqBc # nOdqlGSXoZc97lSLxmLaXYJR2a9SRjk65SJ/REO2Cdw/PNZ2zCv7YJFlp8d6c9zc # UB2SxwQxA0jSyUST0p334m/QEXGSXFskOlbf+NM1CcUazmc6Q1jS7fqg40viw+Sf # 5IyKkw9lsOXX7+FmcMhIWw91LFGboPEb7Iaf9vCulCCVMx9YhQOy3OKh8YJ9RcXC # zGwchTQJ2/XQ66atF9rvrOgOtTzedHFmUlDrajyQ/fHGe+2hVGLxPLECAwEAAaOC # Al0wggJZMDoGCSsGAQQBgjcVBwQtMCsGIysGAQQBgjcVCIebo3WFgvZBhYEMg66D # aITGtVl41fZAiK1AAgFkAgEDMBMGA1UdJQQMMAoGCCsGAQUFBwMDMA4GA1UdDwEB # /wQEAwIGwDAbBgkrBgEEAYI3FQoEDjAMMAoGCCsGAQUFBwMDMB0GA1UdDgQWBBRg # qGvxaPgg3QnSqjNzfAdD3Zk5iTAfBgNVHSMEGDAWgBRRWTnftW/dbLIOrwmI+Jci # ijhD5TCB0QYDVR0fBIHJMIHGMIHDoIHAoIG9hoG6bGRhcDovLy9DTj1BcnJvd1Nl # Y0NhLENOPWFycm93c2VjLENOPUNEUCxDTj1QdWJsaWMlMjBLZXklMjBTZXJ2aWNl # cyxDTj1TZXJ2aWNlcyxDTj1Db25maWd1cmF0aW9uLERDPWFycm93aGVhZGRlbnRh # bCxEQz1jb20/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdD9iYXNlP29iamVjdENs # YXNzPWNSTERpc3RyaWJ1dGlvblBvaW50MIHEBggrBgEFBQcBAQSBtzCBtDCBsQYI # KwYBBQUHMAKGgaRsZGFwOi8vL0NOPUFycm93U2VjQ2EsQ049QUlBLENOPVB1Ymxp # YyUyMEtleSUyMFNlcnZpY2VzLENOPVNlcnZpY2VzLENOPUNvbmZpZ3VyYXRpb24s # REM9YXJyb3doZWFkZGVudGFsLERDPWNvbT9jQUNlcnRpZmljYXRlP2Jhc2U/b2Jq # ZWN0Q2xhc3M9Y2VydGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQsFAAOC # AgEAlvrurKxXSVEi60zuh1FaHBCR+cMchAwZYm5/k4iVbGNUUeOGtBlZDLwSYuoM # Hej3ENdqE0b3V/0BZ9KPD2WZhld7oTvRn0HjS97i35jI1XPVpBfktzbIBqZJfbQy # 2aY/xdfcL4bVGIgVZdgZhCvFcM3H1gQLKB+3DcijggBC/S91AmRi3+cUX2M1fOUU # 9hmlX6Ly7s8sMjAG2YndoyqPfmQScPTuiiNm3ARla3XgvgkbIClMKK8CH5NNTb24 # +nVrFDG6MLSH3QbKN8zVEzlj25Rgxwde9fx/2hAQ93P2wgRRjpM55BA/9oKN3xMn # Qb4wO87UEjmcrAMJbnKxyRAgbpuwDW1BRuXUwmPQK4ft8aNJUe884wWq1fL1B+zR # O8jc2xAkG7ctnCkzj3Pi0v3IZtfEzQiBNKF0cWX75cdB7siWQWaTmCkVMoRcDgCZ # WHQ28UkDUR0hYr/jGsfgp3hVCCMtyHhl35EYeajzOe3LHfXKQxiwc42Telh6ZtUE # DRndUfB8bpyt/9rcvU+S+YFcv/RXHtimPC1308OIYtPY+LRefNqz3gyr24uIAEcc # xQjUHDsAttQC7O1nLws8USgVef6KT6LOEqGP5mxIXiXmH6ZRL6G/qaRIaJ5ku6e8 # BkRiqKzjzDgmGfbPDbcsQE37BS+Ms2oGIfLEUoJMuTVHLGoxggMDMIIC/wIBATBi # MEsxEzARBgoJkiaJk/IsZAEZFgNjb20xHzAdBgoJkiaJk/IsZAEZFg9hcnJvd2hl # YWRkZW50YWwxEzARBgNVBAMTCkFycm93U2VjQ2ECE10AAABMuC7Ui2251E0AAAAA # AEwwCQYFKw4DAhoFAKB4MBgGCisGAQQBgjcCAQwxCjAIoAKAAKECgAAwGQYJKoZI # hvcNAQkDMQwGCisGAQQBgjcCAQQwHAYKKwYBBAGCNwIBCzEOMAwGCisGAQQBgjcC # ARUwIwYJKoZIhvcNAQkEMRYEFNwpgEAg+sBRo3jo4wuWXR4vX3OfMA0GCSqGSIb3 # DQEBAQUABIICAFUlLVoJOKlIc20dy91rg8te07CQzzobz922yRZ2fVSJX8iYaQJN # +PDsjGz3ULKUAFRNFURKPuvzLTpjK41MZPUlXbzFdKquBoWsb6+lA/bagjvwu1Vm # M4+PVcJi39b8XaK57ZG0XRnixrkRl0Nb/vqHnpDyY+EOrbgnMDwNfBfVSxXOPiTJ # 4LgRp0ud5UMMlFQoZS83DGUNqjQbyDxW/gztsVgGC4eCEsbtTRnL3bhXP6U8rBd3 # wIV5/BgjBr5tKwFaAp+8Jyoo8lqIODjmbuonaUwjQ+HNp6UtR/A5yeHkJTuJpiLM # dGbERLXWtVLv+jXf7Q9b6mpp5GfOyaxOVx7P6r2GXApJrBMlTpehkMp8qC9qGNKs # NXuYEjgSB0B4i/am8daISsC4y+8gIEuECAuXSECFeqPPof8jDdSeYqEFEwimyt3M # 5WKaLTsZfP54vOblr3QoZcvGHQzQAFZ0SA3wac8TqvDKjg7L9ohQFzsQHPd3M2c2 # 5gLQufoC8ICyXgSxXAzEi9oAHhfYNjVF7Pp5PNKqEtiri4Woca8ubZWi6B+o22dF # FM851IzNSCsqbZMDCt6ZBeK3gdkVcFP/E7Z7YpLaVVKQx3w1vsp72bZCa11E0TbR # PGYmPPMDLJ4y1AoOWXTyRoC3NyQLGkHfkIhI3ALo4bqVY7/dGPUgBYx4 # SIG # End signature block |