-
Notifications
You must be signed in to change notification settings - Fork 95
Description
AWS Tools Installer V2 Preview Tracker
This issue is for tracking the preview of AWS Tools Installer V2 announced in this blog post. V2 is a major version change that improves performance and adds new capabilities while introducing some breaking changes.
Note:
Preview builds of AWS Tools Installer are intended for developer testing/feedback and should not be installed in production environments.
Breaking Changes
- AWS Tools Installer V2 uses the endpoint
https://sdk-for-net.amazonwebservices.com/ps/to download zip files. You might need to update your firewall rules to allow access to this endpoint. - The parameters
-Proxyand-ProxyCredentialhave been removed. Please configure proxy settings for your environment if necessary. - The
-Forceparameter has been removed forUninstall-AWSToolsModule. UsingInstall-AWSToolsModule -Forcewill confirm that any existing module will be overwritten even if it has the same name and version compared to the module that was downloaded. To skip interactive confirmation prompts when using cmdlets, use the following syntax:-Confirm:$false. - The parameters
-SkipUpdate,-SkipPublisherCheck, and-AllowClobberare now ignored and have no effect. While these parameters are still accepted for backward compatibility, they no longer perform any function. Scripts relying on-SkipUpdateto prevent updates of other installed modules will now have all installed modules updated.
Note: The original behavior of cmdlets from V1 is preserved in the additional cmdlets: Install-AWSToolsModuleV1, Uninstall-AWSToolsModuleV1, and Update-AWSToolsModuleV1. An alias can be defined for each cmdlet so that all legacy scripts running on a system map back to the original functionality after upgrading to V2, for example:
Set-Alias -Name Install-AWSToolsModule -Value Install-AWSToolsModuleV1
Installing AWS Tools Installer Preview
Install-Module -Name AWS.Tools.Installer -MinimumVersion 2.0.0 -AllowPrerelease
You can also download a zip file containing AWS Tools Installer V2 Preview.
Note:
After downloading the ZIP file and before extracting the contents, you might need to unblock it. This is typically done by opening the properties of the file, viewing the General tab, and selecting the Unblock checkbox if one exists.
If the ZIP file needs to be unblocked but you don't do so, you might receive errors similar to the following: "Import-Module : Could not load file or assembly".
Recommended Usage
We recommend installing all AWS Tools for PowerShell modules together as a complete set so that commands are available for immediate use and to avoid module import conflicts that arise when all modules have not been updated to the same version.
Install-AWSToolsModule -Version 5.*
AWS Tools Installer V2 also introduces the self-update commands Install-AWSToolsInstaller and Uninstall-AWSToolsInstaller so that the installer module itself is easier to update. Please note that a zip has not been published for a GA version of Installer V2 but you can install the latest preview build version using the following syntax:
Install-AWSToolsInstaller -Version '2.*' -Prerelease
Protecting Production Workloads
To avoid breaking changes, please make sure that your production workloads are configured to NOT install major version updates:
Install-Module -Name AWS.Tools.Installer -MaximumVersion '1.9.999'
2.0.0-preview001
- CloudFront Distribution: Standard PowerShell installation commands like
Install-ModuleandInstall-PSResourcedownload modules that are packaged individually. To maximize performance when installing hundreds of modules, AWS Tools Installer V2 installs modules that are packaged together from Amazon CloudFront. - Offline Installation Support: A new parameter called
-SourceZipPathenables installation from locally-staged files in offline or air-gapped environments. - Prerelease Installation: A new parameter called
-Prereleaseenables installation of preview builds of AWS Tools for PowerShell and AWS Tools Installer. - Installer Update Notifications: When importing AWS Tools Installer, it writes a message to the host to notify users if a new version is available.
- Standard Removal Support: AWS Tools Installer now adds metadata to enable module removal through standard PowerShell commands (
Uninstall-ModuleandUninstall-PSResource). - Legacy Module Cleanup: AWS Tools Installer V2 supports uninstalling the legacy AWSPowerShell and AWSPowerShell.NetCore modules from your PSModulePaths. Unlike these legacy modules, which load everything at once, AWS Tools for PowerShell modules import quickly and automatically as needed.
- Example:
Uninstall-AWSToolsModule -CleanUpLegacyScope 'CurrentUser' - Example:
Install-AWSToolsModule -CleanUpLegacyScope 'CurrentUser'
- Example:
- Fixed issue where latest modules would no longer be installed on systems where discontinued modules were installed. V2 now successfully updates all modules that are not discontinued.
- Fixed issue where during the daily release window, installations sometimes failed because modules were still being published. V2 avoids this by only installing versions of modules that have completed the publishing process.
Review Help Documentation
Once installed, run the following PowerShell command to list AWS Tools Installer commands.
Get-Command -Module AWS.Tools.Installer
Use the Get-Help command to view the documentation for a particular AWS Tools Installer command. For example:
Get-Help Install-AWSToolsModule -Full
Provide Feedback
We're looking forward to hearing what you think about the new version of AWS Tools Installer. Please share any feedback you have in this issue.
Related Issues
- Faster way to install all AWS modules - #172: Installer V2 downloads a zip containing all modules instead of downloading a package for each module. Modules uninstallation time is also improved by recursively removing files. We acknowledge that this requires using AWS Tools Installer, so if you are still looking for a solution that doesn't require a dedicated installer module, please comment on this this issue or the Preview tracker.
- AWS.Tools.Installer does not warn about new version available - #321: The installer now displays update notifications when importing the module.
- Update-AWSToolsModule does not upgrade to latest version when discontinued modules are installed - #340: V2 correctly identifies and updates all non-discontinued modules regardless of discontinued module presence.
- New releases cause Install-AWSToolsModule to fail - #380: Installing from CloudFront eliminates failures during daily release windows when modules are still being published to PSGallery.