Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,33 @@ jobs:
steps:
- template: /tools/pipelines/templates/include-use-node-version.yml@self

# We can use this step to add overrides that might be necessary to allow for a correct
# installation of build-tools from the tarball artifacts produced by the build stage.
# Since this is a lockfile-less install (ideally we should figure out how to change that),
# npm overrides is our recourse when a dependency releases a new version that causes build-tools installation to break.
# Current overrides:
# - @rushstack/node-core-library 5.19.1: version 5.20.0 broke ESM module resolution in Node.
# https://github.com/microsoft/rushstack/issues/5644
- task: Bash@3
name: CreatePackageJsonForOverrides
displayName: Create package.json with npm overrides
inputs:
targetType: 'inline'
workingDirectory: '$(Pipeline.Workspace)/buildTools-zip/tarballs'
script: |
set -eu -o pipefail
echo "Creating package.json with npm overrides"
cat > package.json << 'EOF'
{
"name": "build-tools-install",
"packageManager": "npm@8.3",
"overrides": {
"@rushstack/node-core-library": "5.19.1"
}
}
EOF
cat package.json

- task: Bash@3
name: InstallBuildToolsFromTarball
displayName: Install Fluid Build Tools from artifact tarball
Expand All @@ -68,6 +95,7 @@ jobs:
set -eu -o pipefail
echo "Listing files in directory: $(pwd)"
ls -la
npm --version
echo "Attempting install of build tools from build tools pipeline artifact tarball"
npm i -g ./*.tgz

Expand Down
Loading