Files
runner-images/images/ubuntu/scripts/build/install-aliyun-cli.sh
2023-12-26 12:50:52 +01:00

37 lines
1.4 KiB
Bash

#!/bin/bash -e
################################################################################
## File: install-aliyun-cli.sh
## Desc: Install Alibaba Cloud CLI
## Supply chain security: Alibaba Cloud CLI - checksum validation
################################################################################
# Source the helpers for use with the script
source $HELPER_SCRIPTS/os.sh
source $HELPER_SCRIPTS/install.sh
# Install Alibaba Cloud CLI
# Pin tool version on ubuntu20 due to issues with GLIBC_2.32 not available
if is_ubuntu20; then
toolset_version=$(get_toolset_value '.aliyunCli.version')
download_url="https://github.com/aliyun/aliyun-cli/releases/download/v$toolset_version/aliyun-cli-linux-$toolset_version-amd64.tgz"
else
download_url=$(resolve_github_release_asset_url "aliyun/aliyun-cli" "contains(\"aliyun-cli-linux\") and endswith(\"amd64.tgz\")" "latest")
hash_url="https://github.com/aliyun/aliyun-cli/releases/latest/download/SHASUMS256.txt"
fi
archive_path=$(download_with_retry "$download_url")
# Supply chain security - Alibaba Cloud CLI
if is_ubuntu20; then
external_hash=$(get_toolset_value '.aliyunCli.sha256')
else
external_hash=$(get_checksum_from_url "$hash_url" "aliyun-cli-linux.*amd64.tgz" "SHA256")
fi
use_checksum_comparison "$archive_path" "$external_hash"
tar xzf "$archive_path"
mv aliyun /usr/local/bin
invoke_tests "CLI.Tools" "Aliyun CLI"