FuncToolsInstaller: Default to x64 on Windows, add arch support #21685
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Context
Update FuncToolsInstaller task to use current Azure Functions Core Tools version, add architecture detection for ARM64 support, and default to x64 architecture on Windows platforms.
Task Name
FuncToolsInstallerV0
Description
os.arch()to support ARM64 on all platforms (Linux, macOS, Windows)Risk Assessment (Low)
Medium - Adds architecture detection which improves platform support but changes default behavior. Now automatically detects and uses ARM64 binaries where appropriate. Aligns with current Azure Functions Core Tools distribution patterns.
Change Behind Feature Flag (No)
No - This is a configuration/default change to align with current Azure Functions Core Tools versions and modern platform standards. The task dynamically detects architecture at runtime, so users automatically get the correct binary for their system.
Tech Design / Approach
getPlatformIdentifier()helper function that usesos.arch()to detect CPU architectureDocumentation Changes Required (No)
Unit Tests Added or Updated (No)
Existing tests remain valid. Version and architecture are determined at runtime based on system detection and user inputs.
Additional Testing Performed
Logging Added/Updated (Yes)
Telemetry Added/Updated (No)
No telemetry changes required. Existing task telemetry remains applicable.
Rollback Scenario and Process (Yes)
Dependency Impact Assessed and Regression Tested (Yes)
Checklist