v1.12.0
Pull Requests | Issues | v1.11.0...v1.12.0
Summary
Features
#872 Add the help message of the completion command ($ aqua help completion)
#873 #874 #875 #876 Fix for Windows Support
#883 #898 Auto completion of file extension on Windows
#882 #884 Add the field supported_envs to Registry Configruration
#885 #892 #893 Create executable BAT files and shell scripts instead of symbolic links on Windows
Others
#887 #889 Change the default path of AQUA_ROOT_DIR on Windows
Features
Auto completion of file extension on Windows
On Windows, aqua adds file extensions automatically if the file has no file extension.
By default the file extension is .exe, but you can change the file extension by windows_ext attribute.
For example, terraformer-aws-windows-amd64 is renamed to terraformer-aws-windows-amd64.exe.
Why is this change needed?
aqua executes the command with os/exec.
os/exec#LookPath requires the file extension on Windows.
Add the field supported_envs to Registry Configruration
You can specify the list of supported environments (GOOS and GOARCH) in supported_envs.
supported_envs has been introduced to solve the following supported_if problems.
- Complicated. There are multiple ways to express the same environments. The expression is too flexible
- Performance. aqua has to compile and evaluate the expression per tool. It may affect the performance although we should do the performance test
e.g.
AS IS
packages:
- type: github_release
repo_owner: gruntwork-io
repo_name: terragrunt
asset: "terragrunt_{{.OS}}_{{.Arch}}"
supported_if: not (GOOS == "windows" and GOARCH == "arm64")TO BE
packages:
- type: github_release
repo_owner: gruntwork-io
repo_name: terragrunt
asset: "terragrunt_{{.OS}}_{{.Arch}}"
supported_envs:
- windows/amd64
- darwin
- linuxThe following patterns are supported.
<GOOS><GOOS>/<GOARCH>
supported_envs: [] # no environment is supportedsupported_envs: ["all"] # all environments are supportedCreate executable BAT files and shell scripts instead of symbolic links on Windows
Reference (Japanese): https://zenn.dev/link/comments/725555a2b1b034
aqua creates executable BAT files and shell scripts in directories AQUA_ROOT_DIR/bin and AQUA_ROOT_DIR/bat instead of symbolic links.
If you use PowerShell or Command Prompt, please add AQUA_ROOT_DIR/bat to the environment variable PATH.
Or if you use Git Bash, please add AQUA_ROOT_DIR/bin to the environment variable PATH.
Why is this change needed?
On Windows, there are two problems regarding symbolic links.
- To create symbolic links, you have to run Terminal (cmd.exe, PowerShell, Git Bash, etc) as Administrator or enable Developer Mode
- PowerShell has a bug about symbolic link PowerShell/PowerShell#16171
Others
#887 #889 Change the default path of AQUA_ROOT_DIR on Windows
Change the default path of AQUA_ROOT_DIR on Windows from ~/.local/share/aquaproj-aqua to ~/AppData/Local/aquaproj-aqua.