-
Notifications
You must be signed in to change notification settings - Fork 6
/
ModuleFast.ps1
115 lines (100 loc) · 46 KB
/
ModuleFast.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
using namespace System.Net.Http
using namespace System.IO
using namespace System.IO.Compression
using namespace System.Reflection
#requires -version 7.2
# This is the bootstrap script for Modules
#We cannot use CmdletBinding here because we need the special $args variable for passthrough to Install-ModuleFast
param (
#Specify a specific release to use, otherwise 'latest' is used
[string]$Release = $(if ($ENV:MFRELEASE) { $ENV:MFRELEASE } else { 'latest' }),
#Specify the user
[string]$User = 'JustinGrote',
#Specify the repo
[string]$Repo = 'ModuleFast',
#Specify the module file
[string]$ModuleFile = 'ModuleFast.psm1',
#Entrypoint to be used if additional args are specified
[string]$EntryPoint = 'Install-ModuleFast',
#Specify the module name
[string]$ModuleName = 'ModuleFast',
#Path of the module to bootstrap. You normally won't change this but you can override it if you want
[string]$Uri = $(
$base = "https://github.com/$User/$Repo/releases/{0}/$ModuleFile"
$version = if ($Release -eq 'latest') { 'latest/download' } else { "download/$Release" }
$base -f $version
),
#Used for testing
[switch]$ImportNugetVersioning,
#Used for testing
[switch]$UseMain,
[switch]$Verbose,
[switch]$Debug,
[switch]$Confirm
)
if ($verbose) { $VerbosePreference = 'Continue' }
if ($debug) { $DebugPreference = 'Continue' }
$ErrorActionPreference = 'Stop'
#Bootstrap via IEX does not evaluate requires so we need an additional check here:
if ($PSVersionTable.PSVersion -lt '7.2.0') {
throw [NotSupportedException]'The ModuleFast Bootstrap script requires PowerShell 7.2 or higher. Specific ModuleFast versions may have more strict requirements.'
}
#We need to load the versioning assembly before we load the dependent classes
#We inline this in order to keep ModuleFast self-contained
function Import-NuGetVersioningAssembly {
# we use this little hack to ensure NuGet types are available
if (-not ('NuGet.Versioning.VersionRange' -as [Type])) {
#Version 6.7.0
$compressedAssembly = @'
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
'@
$assemblyStream = [MemoryStream]::new()
[deflatestream]::new(
[MemoryStream][Convert]::FromBase64String($compressedAssembly),
[CompressionMode]::Decompress
).CopyTo($assemblyStream)
Write-Debug 'Loading Inline NugetVersion'
[void][Assembly]::Load($assemblyStream.ToArray())
if (-not ('NuGet.Versioning.VersionRange' -as [Type])) {
throw 'NuGet Versioning Assembly Failed to Load'
}
}
}
Import-NuGetVersioningAssembly
if ($ImportNugetVersioning) { return }
if (-not (Get-Module $ModuleName)) {
#Dont use a release, use the latest commit on main
if ($UseMain -or $Release -eq 'main') {
$Uri = "https://raw.githubusercontent.com/$User/$Repo/main/$ModuleName.psm1"
}
Write-Debug "Fetching $ModuleName from $Uri"
$ProgressPreference = 'SilentlyContinue'
try {
$response = [HttpClient]::new().GetStringAsync($Uri).GetAwaiter().GetResult()
} catch {
$PSItem.ErrorDetails = "Failed to fetch $ModuleName from $Uri`: $PSItem"
$PSCmdlet.ThrowTerminatingError($PSItem)
}
Write-Debug 'Fetched response'
$scriptBlock = [ScriptBlock]::Create($response)
$ProgressPreference = 'Continue'
$bootstrapModule = New-Module -Name $ModuleName -ScriptBlock $scriptblock
Write-Debug "Loaded Module $ModuleName"
} else {
Write-Warning "Module $ModuleName already loaded, skipping bootstrap."
}
#This is ModuleFast specific
if ($UseMain) {
Write-Debug 'UseMain Specified, ModuleFast will use preview.pwsh.gallery'
& $bootstrapModule { $SCRIPT:DefaultSource = 'https://preview.pwsh.gallery/index.json' }
}
if ($args) {
try {
Write-Debug "Detected we were started with args, running $EntryPoint -Verbose:$Verbose -Debug:$Debug -Confirm:$Confirm $args"
. $EntryPoint -Verbose:$Verbose -Debug:$Debug -Confirm:$Confirm @args
} finally {
#Remove the bootstrap module if args were specified, otherwise persist it in memory
Write-Debug 'Removing temporary bootstrap module since args were used'
if ($bootstrapModule) { Remove-Module $bootstrapModule }
}
}