mirror of
https://github.com/actions/runner-images.git
synced 2026-01-10 12:41:43 +08:00
[macOS] Move global npm packages to toolset macOS (#4047)
This commit is contained in:
@@ -1,11 +1,6 @@
|
|||||||
#!/bin/bash -e -o pipefail
|
#!/bin/bash -e -o pipefail
|
||||||
source ~/utils/utils.sh
|
source ~/utils/utils.sh
|
||||||
|
|
||||||
node_modules=(
|
|
||||||
appcenter-cli
|
|
||||||
newman
|
|
||||||
)
|
|
||||||
|
|
||||||
if is_Less_Catalina; then
|
if is_Less_Catalina; then
|
||||||
echo Installing the latest Node JS 8...
|
echo Installing the latest Node JS 8...
|
||||||
TMP_FILE=/tmp/node-v8.17.0.pkg
|
TMP_FILE=/tmp/node-v8.17.0.pkg
|
||||||
@@ -14,33 +9,19 @@ if is_Less_Catalina; then
|
|||||||
sudo installer -pkg "${TMP_FILE}" -target /
|
sudo installer -pkg "${TMP_FILE}" -target /
|
||||||
rm -rf "${TMP_FILE}"
|
rm -rf "${TMP_FILE}"
|
||||||
sudo chown -R $USER "/usr/local/lib/node_modules"
|
sudo chown -R $USER "/usr/local/lib/node_modules"
|
||||||
|
|
||||||
echo Installing NPM 3.x.x...
|
|
||||||
npm install -g npm@3
|
|
||||||
|
|
||||||
# This step is required to install App Center CLI
|
|
||||||
echo Installing Omelette...
|
|
||||||
npm install -g omelette@0.4.14
|
|
||||||
|
|
||||||
echo Installing App Center CLI...
|
|
||||||
npm install -g appcenter-cli@^1.0.0
|
|
||||||
else
|
else
|
||||||
# Install Node.js 14 for macOS >= 10.15
|
# Install Node.js 14 for macOS >= 10.15
|
||||||
brew_smart_install "node@14"
|
brew_smart_install "node@14"
|
||||||
brew link node@14 --force
|
brew link node@14 --force
|
||||||
|
|
||||||
for module in ${node_modules[@]}; do
|
|
||||||
echo "Install $module"
|
|
||||||
npm install -g $module
|
|
||||||
done
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo Installing yarn...
|
echo Installing yarn...
|
||||||
curl -o- -L https://yarnpkg.com/install.sh | bash
|
curl -o- -L https://yarnpkg.com/install.sh | bash
|
||||||
|
|
||||||
if is_Less_BigSur; then
|
npm_global_packages=$(get_toolset_value '.npm.global_packages[].name')
|
||||||
echo "Install node-gyp"
|
for module in ${npm_global_packages[@]}; do
|
||||||
npm install -g node-gyp
|
echo "Install $module"
|
||||||
fi
|
npm install -g $module
|
||||||
|
done
|
||||||
|
|
||||||
invoke_tests "Node" "Node.js"
|
invoke_tests "Node" "Node.js"
|
||||||
|
|||||||
@@ -51,14 +51,12 @@ Describe "nvm" {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Describe "AppCenterCLI" {
|
Describe "Global NPM Packages" {
|
||||||
It "App Center CLI" {
|
$globalNpmPackages = Get-ToolsetValue "npm.global_packages"
|
||||||
"appcenter --version" | Should -ReturnZeroExitCode
|
$globalNpmPackagesWithTests = $globalNpmPackages | Where-Object { $_.test } | ForEach-Object { @{ Name = $_.name; Test = $_.test } }
|
||||||
|
|
||||||
|
It "<Name>" -TestCases $globalNpmPackagesWithTests {
|
||||||
|
$Test | Should -ReturnZeroExitCode
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Describe "Newman" -Skip:($os.IsHighSierra -or $os.IsMojave) {
|
|
||||||
It "Newman" {
|
|
||||||
"newman --version" | Should -ReturnZeroExitCode
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -209,6 +209,14 @@
|
|||||||
{"name": "Pester"},
|
{"name": "Pester"},
|
||||||
{"name": "PSScriptAnalyzer"}
|
{"name": "PSScriptAnalyzer"}
|
||||||
],
|
],
|
||||||
|
"npm": {
|
||||||
|
"global_packages": [
|
||||||
|
{ "name": "npm@3" },
|
||||||
|
{ "name": "omelette@0.4.14" },
|
||||||
|
{ "name": "appcenter-cli@^1.0.0", "test": "appcenter --version" },
|
||||||
|
{ "name": "node-gyp" }
|
||||||
|
]
|
||||||
|
},
|
||||||
"brew": {
|
"brew": {
|
||||||
"common_packages": [
|
"common_packages": [
|
||||||
"aliyun-cli",
|
"aliyun-cli",
|
||||||
|
|||||||
@@ -230,6 +230,14 @@
|
|||||||
{"name": "Pester"},
|
{"name": "Pester"},
|
||||||
{"name": "PSScriptAnalyzer"}
|
{"name": "PSScriptAnalyzer"}
|
||||||
],
|
],
|
||||||
|
"npm": {
|
||||||
|
"global_packages": [
|
||||||
|
{ "name": "npm@3" },
|
||||||
|
{ "name": "omelette@0.4.14" },
|
||||||
|
{ "name": "appcenter-cli@^1.0.0", "test": "appcenter --version" },
|
||||||
|
{ "name": "node-gyp" }
|
||||||
|
]
|
||||||
|
},
|
||||||
"brew": {
|
"brew": {
|
||||||
"common_packages": [
|
"common_packages": [
|
||||||
"aliyun-cli",
|
"aliyun-cli",
|
||||||
|
|||||||
@@ -182,6 +182,13 @@
|
|||||||
{"name": "Pester"},
|
{"name": "Pester"},
|
||||||
{"name": "PSScriptAnalyzer"}
|
{"name": "PSScriptAnalyzer"}
|
||||||
],
|
],
|
||||||
|
"npm": {
|
||||||
|
"global_packages": [
|
||||||
|
{ "name": "appcenter-cli", "test": "appcenter --version" },
|
||||||
|
{ "name": "newman", "test": "newman --version" },
|
||||||
|
{ "name": "node-gyp" }
|
||||||
|
]
|
||||||
|
},
|
||||||
"brew": {
|
"brew": {
|
||||||
"common_packages": [
|
"common_packages": [
|
||||||
"aliyun-cli",
|
"aliyun-cli",
|
||||||
|
|||||||
@@ -130,6 +130,12 @@
|
|||||||
{"name": "Pester"},
|
{"name": "Pester"},
|
||||||
{"name": "PSScriptAnalyzer"}
|
{"name": "PSScriptAnalyzer"}
|
||||||
],
|
],
|
||||||
|
"npm": {
|
||||||
|
"global_packages": [
|
||||||
|
{ "name": "appcenter-cli", "test": "appcenter --version" },
|
||||||
|
{ "name": "newman", "test": "newman --version" }
|
||||||
|
]
|
||||||
|
},
|
||||||
"brew": {
|
"brew": {
|
||||||
"common_packages": [
|
"common_packages": [
|
||||||
"aliyun-cli",
|
"aliyun-cli",
|
||||||
|
|||||||
Reference in New Issue
Block a user