mirror of
https://github.com/actions/node-versions.git
synced 2025-07-01 04:47:16 +08:00
switch layout
This commit is contained in:
parent
a70d3e2a34
commit
4003986702
@ -23,9 +23,11 @@ param(
|
||||
[Parameter (Mandatory=$true)][Version] $Version,
|
||||
[Parameter (Mandatory=$true)][string] $Platform,
|
||||
[string] $Architecture = "x64"
|
||||
|
||||
)
|
||||
|
||||
Import-Module (Join-Path $PSScriptRoot "../helpers" | Join-Path -ChildPath "nix-helpers.psm1") -DisableNameChecking
|
||||
Import-Module (Join-Path $PSScriptRoot "../helpers" | Join-Path -ChildPath "win-helpers.psm1") -DisableNameChecking
|
||||
|
||||
function Get-NodeBuilder {
|
||||
<#
|
||||
.SYNOPSIS
|
||||
|
@ -40,6 +40,10 @@ class NixNodeBuilder : NodeBuilder {
|
||||
return "${base}/v$($this.Version)/node-v$($this.Version)-$($this.Platform)-$($this.Architecture).tar.gz"
|
||||
}
|
||||
|
||||
[void] UnpackBinaries($archivePath) {
|
||||
Unpack-TarArchive -ArchivePath $archivePath -OutputDirectory $this.ArtifactLocation
|
||||
}
|
||||
|
||||
[void] CreateInstallationScript() {
|
||||
<#
|
||||
.SYNOPSIS
|
||||
|
@ -15,6 +15,9 @@ class NodeBuilder {
|
||||
.PARAMETER Architecture
|
||||
The architecture with which Node.js should be built.
|
||||
|
||||
.PARAMETER TempFolderLocation
|
||||
The location of temporary files that will be used during Node.js package generation. Using system BUILD_STAGINGDIRECTORY variable value.
|
||||
|
||||
.PARAMETER ArtifactLocation
|
||||
The location of generated Node.js artifact. Using system environment BUILD_BINARIESDIRECTORY variable value.
|
||||
|
||||
@ -26,6 +29,7 @@ class NodeBuilder {
|
||||
[version] $Version
|
||||
[string] $Platform
|
||||
[string] $Architecture
|
||||
[string] $TempFolderLocation
|
||||
[string] $ArtifactLocation
|
||||
[string] $InstallationTemplatesLocation
|
||||
|
||||
@ -35,6 +39,7 @@ class NodeBuilder {
|
||||
$this.Architecture = $architecture
|
||||
|
||||
$this.ArtifactLocation = $env:BUILD_BINARIESDIRECTORY
|
||||
$this.TempFolderLocation = $env:BUILD_STAGINGDIRECTORY
|
||||
|
||||
$this.InstallationTemplatesLocation = Join-Path -Path $PSScriptRoot -ChildPath "../installers"
|
||||
}
|
||||
@ -56,7 +61,7 @@ class NodeBuilder {
|
||||
|
||||
$binariesUri = $this.GetBinariesUri()
|
||||
$targetFilename = [IO.Path]::GetFileName($binariesUri)
|
||||
$targetFilepath = Join-Path -Path $this.ArtifactLocation -ChildPath $targetFilename
|
||||
$targetFilepath = Join-Path -Path $this.TempFolderLocation -ChildPath $targetFilename
|
||||
|
||||
Write-Debug "Download binaries from $binariesUri to $targetFilepath"
|
||||
try {
|
||||
|
@ -40,6 +40,10 @@ class WinNodeBuilder : NodeBuilder {
|
||||
return "${base}/v$($this.Version)/node-v$($this.Version)-win-$($this.Architecture).7z"
|
||||
}
|
||||
|
||||
[void] UnpackBinaries($archivePath) {
|
||||
Unpack-7ZipArchive -ArchivePath $archivePath -OutputDirectory $this.ArtifactLocation
|
||||
}
|
||||
|
||||
[void] CreateInstallationScript() {
|
||||
<#
|
||||
.SYNOPSIS
|
||||
|
16
helpers/nix-helpers.psm1
Normal file
16
helpers/nix-helpers.psm1
Normal file
@ -0,0 +1,16 @@
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Unpack *.tar file
|
||||
#>
|
||||
function Unpack-TarArchive {
|
||||
param(
|
||||
[Parameter(Mandatory=$true)]
|
||||
[String]$ArchivePath,
|
||||
[Parameter(Mandatory=$true)]
|
||||
[String]$OutputDirectory
|
||||
)
|
||||
|
||||
Write-Debug "Unpack $ArchivePath to $OutputDirectory"
|
||||
tar -C $OutputDirectory -xzf $ArchivePath
|
||||
|
||||
}
|
16
helpers/win-helpers.psm1
Normal file
16
helpers/win-helpers.psm1
Normal file
@ -0,0 +1,16 @@
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Unpack *.7z file
|
||||
#>
|
||||
function Unpack-7ZipArchive {
|
||||
param(
|
||||
[Parameter(Mandatory=$true)]
|
||||
[String]$ArchivePath,
|
||||
[Parameter(Mandatory=$true)]
|
||||
[String]$OutputDirectory
|
||||
)
|
||||
|
||||
Write-Debug "Unpack $ArchivePath to $OutputDirectory"
|
||||
7z x $ArchivePath -o$OutputDirectory
|
||||
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user