From e32091634e0a9536b9943d1c92c53e9376837a76 Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Tue, 29 Sep 2020 17:26:59 +0300 Subject: [PATCH 01/61] add dynamic installation for linux --- images/linux/scripts/installers/android.sh | 35 ++++++++++++++++------ images/linux/toolsets/toolset-1604.json | 8 ++--- images/linux/toolsets/toolset-1804.json | 8 ++--- images/linux/toolsets/toolset-2004.json | 8 ++--- 4 files changed, 32 insertions(+), 27 deletions(-) diff --git a/images/linux/scripts/installers/android.sh b/images/linux/scripts/installers/android.sh index 81f28ff7..b630de7d 100644 --- a/images/linux/scripts/installers/android.sh +++ b/images/linux/scripts/installers/android.sh @@ -9,6 +9,23 @@ set -e # Source the helpers for use with the script source $HELPER_SCRIPTS/os.sh +function install_android_packages { + minimumVersion=$( echo "$1" | sed 's/\.//g' ) + shift + toolsArr=("$@") + + for item in ${toolsArr[@]} + do + version=$(echo "${item##*[-;]}" | sed 's/\.//g') + echo "version is $version" + if (( $version >= $minimumVersion )) + then + echo "Start installing $item" + echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager $item + fi + done +} + # Set env variable for SDK Root (https://developer.android.com/studio/command-line/variables) ANDROID_ROOT=/usr/local/lib/android ANDROID_SDK_ROOT=${ANDROID_ROOT}/sdk @@ -42,22 +59,22 @@ else fi toolset="$INSTALLER_SCRIPT_FOLDER/toolset.json" -platforms=$(jq -r '.android.platform_list[]|"platforms;" + .' $toolset) -buildtools=$(jq -r '.android.build_tools[]|"build-tools;" + .' $toolset) +minimumBuildToolVersion=$(jq -r '.android.build_tools_min_version' $toolset) +minimumPlatformVersion=$(jq -r '.android.platform_min_version' $toolset) extras=$(jq -r '.android.extra_list[]|"extras;" + .' $toolset) addons=$(jq -r '.android.addon_list[]|"add-ons;" + .' $toolset) additional=$(jq -r '.android.additional_tools[]' $toolset) # Install the following SDKs and build tools, passing in "y" to accept licenses. -echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager $platforms $buildtools $extras $google_api_list $addons $additional +echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager $extras $google_api_list $addons $additional -# Document what was added to the image +platforms=$(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "platforms;android" | sed -E "s/[[:space:]]+//g" | sed -E "s/\|.*//g") +buildTools=$(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "build-tools;" | sed -E "s/[[:space:]]+//g" | sed -E "s/\|.*//g") -google_api_versions_list=$(echo "$addons"|awk -F- '/addon-google_apis-google/ {print $5}') -constraint_layout_versions_list=$(echo "$extras"|awk -F';' '/constraint-layout;/ {print $8}') -constraint_layout_solver_versions_list=$(echo "$extras"|awk -F';' '/constraint-layout-solver;/ {print $8}') -platform_versions_list=$(echo "$platforms"|awk -F- '{print $2}') -buildtools_versions_list=$(echo "$buildtools"|awk -F';' '{print $2}') +platformsArr=(${platforms}) +install_android_packages $minimumPlatformVersion "${platformsArr[@]}" +buildToolsArr=(${buildTools}) +install_android_packages $minimumBuildToolVersion "${buildToolsArr[@]}" # Add required permissions chmod -R a+rwx ${ANDROID_SDK_ROOT} diff --git a/images/linux/toolsets/toolset-1604.json b/images/linux/toolsets/toolset-1604.json index 46aad66a..4d7bbe0e 100644 --- a/images/linux/toolsets/toolset-1604.json +++ b/images/linux/toolsets/toolset-1604.json @@ -62,12 +62,8 @@ } ], "android": { - "platform_list": [ - "android-30", "android-29", "android-28", "android-27", "android-26", "android-25", "android-24", "android-23", "android-22", "android-21", "android-19","android-17","android-15","android-10" - ], - "build_tools": [ - "30.0.2", "30.0.1", "30.0.0", "29.0.3", "29.0.2", "29.0.0", "28.0.3", "28.0.2", "28.0.1", "28.0.0", "27.0.3", "27.0.2", "27.0.1", "27.0.0", "26.0.3", "26.0.2", "26.0.1", "26.0.0", "25.0.3", "25.0.2", "25.0.1", "25.0.0", "24.0.3", "24.0.2", "24.0.1", "24.0.0", "23.0.3", "23.0.2", "23.0.1", "22.0.1", "21.1.2", "20.0.0", "19.1.0", "17.0.0" - ], + "platform_min_version": "10", + "build_tools_min_version": "17.0.0", "extra_list": [ "android;m2repository", "google;m2repository", diff --git a/images/linux/toolsets/toolset-1804.json b/images/linux/toolsets/toolset-1804.json index 2670b4cf..24e36c21 100644 --- a/images/linux/toolsets/toolset-1804.json +++ b/images/linux/toolsets/toolset-1804.json @@ -62,12 +62,8 @@ } ], "android": { - "platform_list": [ - "android-30", "android-29", "android-28", "android-27", "android-26", "android-25", "android-24", "android-23", "android-22", "android-21", "android-19","android-17" - ], - "build_tools": [ - "30.0.2", "30.0.1", "30.0.0", "29.0.3", "29.0.2", "29.0.0", "28.0.3", "28.0.2", "28.0.1", "28.0.0", "27.0.3", "27.0.2", "27.0.1", "27.0.0", "26.0.3", "26.0.2", "26.0.1", "26.0.0", "25.0.3", "25.0.2", "25.0.1", "25.0.0", "24.0.3", "24.0.2", "24.0.1", "24.0.0", "23.0.3", "23.0.2", "23.0.1", "22.0.1", "21.1.2", "20.0.0", "19.1.0", "17.0.0" - ], + "platform_min_version": "17", + "build_tools_min_version": "17.0.0", "extra_list": [ "android;m2repository", "google;m2repository", diff --git a/images/linux/toolsets/toolset-2004.json b/images/linux/toolsets/toolset-2004.json index 5ac23025..ba86c827 100644 --- a/images/linux/toolsets/toolset-2004.json +++ b/images/linux/toolsets/toolset-2004.json @@ -48,12 +48,8 @@ } ], "android": { - "platform_list": [ - "android-30", "android-29", "android-28", "android-27" - ], - "build_tools": [ - "30.0.2", "30.0.1", "30.0.0", "29.0.3", "29.0.2", "29.0.0", "28.0.3", "28.0.2", "28.0.1", "28.0.0", "27.0.3", "27.0.2", "27.0.1", "27.0.0" - ], + "platform_min_version": "27", + "build_tools_min_version": "27.0.0", "extra_list": [ "android;m2repository", "google;m2repository", From 89bf727a192d32243de1da348b947fd64538a29e Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Thu, 1 Oct 2020 11:03:39 +0300 Subject: [PATCH 02/61] add function to check version --- images/linux/scripts/installers/android.sh | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/images/linux/scripts/installers/android.sh b/images/linux/scripts/installers/android.sh index b630de7d..0e78dbe0 100644 --- a/images/linux/scripts/installers/android.sh +++ b/images/linux/scripts/installers/android.sh @@ -9,16 +9,20 @@ set -e # Source the helpers for use with the script source $HELPER_SCRIPTS/os.sh +verlte() { + sortedVersion=$(echo -e "$1\n$2" | sort -V | head -n1) + [ "$1" = "$sortedVersion" ] +} + function install_android_packages { - minimumVersion=$( echo "$1" | sed 's/\.//g' ) + minimumVersion=$1 shift toolsArr=("$@") for item in ${toolsArr[@]} do - version=$(echo "${item##*[-;]}" | sed 's/\.//g') - echo "version is $version" - if (( $version >= $minimumVersion )) + version=$(echo "${item##*[-;]}") + if verlte $minimumVersion $version then echo "Start installing $item" echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager $item From 6cbf54320c768a731fd5257877665b0c88d1a934 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Go=CC=88kay=20Gu=CC=88rcan?= Date: Thu, 1 Oct 2020 11:31:02 +0200 Subject: [PATCH 03/61] Improve nvm installer --- images/linux/scripts/installers/nvm.sh | 3 ++- images/macos/provision/core/nvm.sh | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/images/linux/scripts/installers/nvm.sh b/images/linux/scripts/installers/nvm.sh index 74fed1f2..619eade8 100644 --- a/images/linux/scripts/installers/nvm.sh +++ b/images/linux/scripts/installers/nvm.sh @@ -7,7 +7,8 @@ export NVM_DIR="/etc/skel/.nvm" mkdir $NVM_DIR -curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash +VERSION=$(curl -s https://api.github.com/repos/nvm-sh/nvm/releases/latest | jq -r '.tag_name') +curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/$VERSION/install.sh | bash echo 'export NVM_DIR=$HOME/.nvm' | tee -a /etc/skel/.bash_profile echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm' | tee -a /etc/skel/.bash_profile [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" diff --git a/images/macos/provision/core/nvm.sh b/images/macos/provision/core/nvm.sh index 544bf2a3..527bd4c6 100755 --- a/images/macos/provision/core/nvm.sh +++ b/images/macos/provision/core/nvm.sh @@ -6,7 +6,8 @@ ########################################################################### source ~/utils/utils.sh -curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.35.3/install.sh | bash +VERSION=$(curl -s https://api.github.com/repos/nvm-sh/nvm/releases/latest | jq -r '.tag_name') +curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/$VERSION/install.sh | bash if [ $? -eq 0 ]; then . ~/.bashrc @@ -23,13 +24,13 @@ if [ $? -eq 0 ]; then nvm alias node12 lts/erbium nvm alias node13 v13 nvm alias node14 v14 - + if is_Catalina || is_BigSur; then # set system node as default nvm alias default system fi else - echo error + echo error fi echo "Node version manager has been installed successfully" From d0f8592d884c5005edb5086ea6844fecab550ecb Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Thu, 1 Oct 2020 13:07:40 +0300 Subject: [PATCH 04/61] add function and clean up logic for array --- images/linux/scripts/helpers/install.sh | 5 +++++ images/linux/scripts/installers/android.sh | 17 +++++------------ 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/images/linux/scripts/helpers/install.sh b/images/linux/scripts/helpers/install.sh index 414980bb..bb1befe2 100644 --- a/images/linux/scripts/helpers/install.sh +++ b/images/linux/scripts/helpers/install.sh @@ -42,4 +42,9 @@ download_with_retries() { ## fi function IsPackageInstalled { dpkg -S $1 &> /dev/null +} + +verlte() { + sortedVersion=$(echo -e "$1\n$2" | sort -V | head -n1) + [ "$1" = "$sortedVersion" ] } \ No newline at end of file diff --git a/images/linux/scripts/installers/android.sh b/images/linux/scripts/installers/android.sh index 0e78dbe0..5365458d 100644 --- a/images/linux/scripts/installers/android.sh +++ b/images/linux/scripts/installers/android.sh @@ -9,12 +9,7 @@ set -e # Source the helpers for use with the script source $HELPER_SCRIPTS/os.sh -verlte() { - sortedVersion=$(echo -e "$1\n$2" | sort -V | head -n1) - [ "$1" = "$sortedVersion" ] -} - -function install_android_packages { +function install_android_package_gte_then { minimumVersion=$1 shift toolsArr=("$@") @@ -72,13 +67,11 @@ additional=$(jq -r '.android.additional_tools[]' $toolset) # Install the following SDKs and build tools, passing in "y" to accept licenses. echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager $extras $google_api_list $addons $additional -platforms=$(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "platforms;android" | sed -E "s/[[:space:]]+//g" | sed -E "s/\|.*//g") -buildTools=$(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "build-tools;" | sed -E "s/[[:space:]]+//g" | sed -E "s/\|.*//g") +platforms=($(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "platforms;android-" | cut -d"|" -f 1 | sed 's/platforms;android-//g')) +buildTools=($(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "build-tools;" | cut -d"|" -f 1 | sed 's/build-tools;//g')) -platformsArr=(${platforms}) -install_android_packages $minimumPlatformVersion "${platformsArr[@]}" -buildToolsArr=(${buildTools}) -install_android_packages $minimumBuildToolVersion "${buildToolsArr[@]}" +install_android_package_gte_then $minimumPlatformVersion "${platforms[@]}" +install_android_package_gte_then $minimumBuildToolVersion "${buildTools[@]}" # Add required permissions chmod -R a+rwx ${ANDROID_SDK_ROOT} From 16a27e20454d516beafa3d8ad96be3c4eac7953a Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Thu, 1 Oct 2020 13:08:53 +0300 Subject: [PATCH 05/61] add import --- images/linux/scripts/installers/android.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/images/linux/scripts/installers/android.sh b/images/linux/scripts/installers/android.sh index 5365458d..e72a39f0 100644 --- a/images/linux/scripts/installers/android.sh +++ b/images/linux/scripts/installers/android.sh @@ -8,6 +8,7 @@ set -e # Source the helpers for use with the script source $HELPER_SCRIPTS/os.sh +source $HELPER_SCRIPTS/install.sh function install_android_package_gte_then { minimumVersion=$1 From 9956daab66bc926250cad276c8d095e8e050866c Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Thu, 1 Oct 2020 16:33:20 +0300 Subject: [PATCH 06/61] fix function accroding to comments --- images/linux/scripts/installers/android.sh | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/images/linux/scripts/installers/android.sh b/images/linux/scripts/installers/android.sh index e72a39f0..c0915939 100644 --- a/images/linux/scripts/installers/android.sh +++ b/images/linux/scripts/installers/android.sh @@ -10,7 +10,7 @@ set -e source $HELPER_SCRIPTS/os.sh source $HELPER_SCRIPTS/install.sh -function install_android_package_gte_then { +function filter_components_by_version { minimumVersion=$1 shift toolsArr=("$@") @@ -20,8 +20,7 @@ function install_android_package_gte_then { version=$(echo "${item##*[-;]}") if verlte $minimumVersion $version then - echo "Start installing $item" - echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager $item + components+=($item) fi done } @@ -66,13 +65,15 @@ addons=$(jq -r '.android.addon_list[]|"add-ons;" + .' $toolset) additional=$(jq -r '.android.additional_tools[]' $toolset) # Install the following SDKs and build tools, passing in "y" to accept licenses. -echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager $extras $google_api_list $addons $additional +components=( "${extras[@]}" "${addons[@]}" "${additional[@]}" ) -platforms=($(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "platforms;android-" | cut -d"|" -f 1 | sed 's/platforms;android-//g')) -buildTools=($(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "build-tools;" | cut -d"|" -f 1 | sed 's/build-tools;//g')) +availablePlatforms=($(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "platforms;android-" | cut -d"|" -f 1)) +availableBuildTools=($(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "build-tools;" | cut -d"|" -f 1)) -install_android_package_gte_then $minimumPlatformVersion "${platforms[@]}" -install_android_package_gte_then $minimumBuildToolVersion "${buildTools[@]}" +filter_components_by_version $minimumPlatformVersion "${availablePlatforms[@]}" +filter_components_by_version $minimumBuildToolVersion "${availableBuildTools[@]}" + +echo "y" | ${ANDROID_SDK_ROOT}/tools/bin/sdkmanager ${components[@]} # Add required permissions chmod -R a+rwx ${ANDROID_SDK_ROOT} From be310626e05d1aa248fd8cb8aa4ef237f6c3f6a5 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Thu, 1 Oct 2020 17:52:16 +0300 Subject: [PATCH 07/61] Add pipx, yamllint and aws sam cli --- .../linux/scripts/installers/pipx-packages.sh | 25 +++++++++++++++++++ images/linux/scripts/installers/python.sh | 21 +++++++++++++--- images/linux/toolsets/toolset-1604.json | 1 - images/linux/toolsets/toolset-1804.json | 1 - images/linux/toolsets/toolset-2004.json | 1 - images/linux/ubuntu1804.json | 13 ++-------- 6 files changed, 45 insertions(+), 17 deletions(-) create mode 100644 images/linux/scripts/installers/pipx-packages.sh diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh new file mode 100644 index 00000000..c6a4a6bb --- /dev/null +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -0,0 +1,25 @@ +#!/bin/bash +################################################################################ +## File: pipx-packages.sh +## Desc: Install tools via pipx +################################################################################ + +# Install yamlint +pipx install yamllint + +if ! command -v yamllint; then + echo "yamllint was not installed" + exit 1 +fi + +echo "yamllint is successfully installed" + +# Install aws sam cli +pipx install aws-sam-cli --python /opt/hostedtoolcache/Python/3.7.9/x64/bin/python3.7 + +if ! command -v sam; then + echo "aws sam cli was not installed" + exit 1 +fi + +echo "aws sam cli is successfully installed" \ No newline at end of file diff --git a/images/linux/scripts/installers/python.sh b/images/linux/scripts/installers/python.sh index 47041778..3c7886ae 100644 --- a/images/linux/scripts/installers/python.sh +++ b/images/linux/scripts/installers/python.sh @@ -10,17 +10,32 @@ source $HELPER_SCRIPTS/os.sh # Install Python, Python 3, pip, pip3 if isUbuntu16 || isUbuntu18; then - apt-get install -y --no-install-recommends python python-dev python-pip python3 python3-dev python3-pip + apt-get install -y --no-install-recommends python python-dev python-pip python3 python3-dev python3-pip python3-venv fi if isUbuntu20; then - apt-get install -y --no-install-recommends python3 python3-dev python3-pip + apt-get install -y --no-install-recommends python3 python3-dev python3-pip python3-venv ln -s /usr/bin/pip3 /usr/bin/pip fi +# Install pipx +# Set pipx custom directory +export PIPX_BIN_DIR=/opt/pipx_bin +export PIPX_HOME=/opt/pipx + +python3 -m pip install pipx +python3 -m pipx ensurepath + +echo "PIPX_BIN_DIR=$PIPX_BIN_DIR" | tee -a /etc/environment +echo "PIPX_HOME=$PIPX_HOME" | tee -a /etc/environment + +# Add pipx bin directory to path +export PATH="$PATH:$PIPX_BIN_DIR" +echo 'export PATH="$PATH:/opt/pipx_bin"' >> /etc/skel/.bashrc + # Run tests to determine that the software installed as expected echo "Testing to make sure that script performed as expected, and basic scenarios work" -for cmd in python pip python3 pip3; do +for cmd in python pip python3 pip3 pipx; do if ! command -v $cmd; then echo "$cmd was not installed or not found on PATH" exit 1 diff --git a/images/linux/toolsets/toolset-1604.json b/images/linux/toolsets/toolset-1604.json index 46aad66a..fcb5fde1 100644 --- a/images/linux/toolsets/toolset-1604.json +++ b/images/linux/toolsets/toolset-1604.json @@ -172,7 +172,6 @@ "time", "unzip", "wget", - "yamllint", "zip" ] }, diff --git a/images/linux/toolsets/toolset-1804.json b/images/linux/toolsets/toolset-1804.json index 2670b4cf..b14a6077 100644 --- a/images/linux/toolsets/toolset-1804.json +++ b/images/linux/toolsets/toolset-1804.json @@ -167,7 +167,6 @@ "time", "unzip", "wget", - "yamllint", "zip" ] }, diff --git a/images/linux/toolsets/toolset-2004.json b/images/linux/toolsets/toolset-2004.json index 7c704263..62aad447 100644 --- a/images/linux/toolsets/toolset-2004.json +++ b/images/linux/toolsets/toolset-2004.json @@ -130,7 +130,6 @@ "time", "unzip", "wget", - "yamllint", "zip" ] }, diff --git a/images/linux/ubuntu1804.json b/images/linux/ubuntu1804.json index 12ef6d0c..c35d99eb 100644 --- a/images/linux/ubuntu1804.json +++ b/images/linux/ubuntu1804.json @@ -212,7 +212,8 @@ "{{template_dir}}/scripts/installers/hosted-tool-cache.sh", "{{template_dir}}/scripts/installers/pypy.sh", "{{template_dir}}/scripts/installers/python.sh", - "{{template_dir}}/scripts/installers/test-toolcache.sh" + "{{template_dir}}/scripts/installers/test-toolcache.sh", + "{{template_dir}}/scripts/installers/pipx-packages.sh" ], "environment_vars": [ "HELPER_SCRIPTS={{user `helper_script_folder`}}", @@ -235,16 +236,6 @@ ], "execute_command": "sudo sh -c '{{ .Vars }} pwsh -f {{ .Path }}'" }, - { - "type": "shell", - "scripts": [ - "{{template_dir}}/scripts/installers/aws-sam-cli.sh" - ], - "environment_vars": [ - "HELPER_SCRIPTS={{user `helper_script_folder`}}" - ], - "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" - }, { "type": "shell", "scripts": [ From 790ccbb8e572539dbfb09c08a38e3c797e1575b6 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Thu, 1 Oct 2020 22:55:54 +0300 Subject: [PATCH 08/61] Add pipx_bin to path for pipx packages --- images/linux/scripts/installers/pipx-packages.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh index c6a4a6bb..d1083735 100644 --- a/images/linux/scripts/installers/pipx-packages.sh +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -4,6 +4,9 @@ ## Desc: Install tools via pipx ################################################################################ +# Add pipx_bin to path +export PATH="$PATH:/opt/pipx_bin" + # Install yamlint pipx install yamllint From 89040937914f35cfcaceb6cadd8d08a205c49cce Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Thu, 1 Oct 2020 23:49:11 +0300 Subject: [PATCH 09/61] Disable env vars --- images/linux/scripts/installers/pipx-packages.sh | 2 +- images/linux/scripts/installers/python.sh | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh index d1083735..beec3ffa 100644 --- a/images/linux/scripts/installers/pipx-packages.sh +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -5,7 +5,7 @@ ################################################################################ # Add pipx_bin to path -export PATH="$PATH:/opt/pipx_bin" +python3 -m pipx ensurepath # Install yamlint pipx install yamllint diff --git a/images/linux/scripts/installers/python.sh b/images/linux/scripts/installers/python.sh index 3c7886ae..85b2775d 100644 --- a/images/linux/scripts/installers/python.sh +++ b/images/linux/scripts/installers/python.sh @@ -26,11 +26,11 @@ export PIPX_HOME=/opt/pipx python3 -m pip install pipx python3 -m pipx ensurepath -echo "PIPX_BIN_DIR=$PIPX_BIN_DIR" | tee -a /etc/environment -echo "PIPX_HOME=$PIPX_HOME" | tee -a /etc/environment +# echo "PIPX_BIN_DIR=$PIPX_BIN_DIR" | tee -a /etc/environment +# echo "PIPX_HOME=$PIPX_HOME" | tee -a /etc/environment # Add pipx bin directory to path -export PATH="$PATH:$PIPX_BIN_DIR" +# export PATH="$PATH:$PIPX_BIN_DIR" echo 'export PATH="$PATH:/opt/pipx_bin"' >> /etc/skel/.bashrc # Run tests to determine that the software installed as expected From 88f35e5ba499a42b6819196e436fc1d43b041f25 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Fri, 2 Oct 2020 09:15:26 +0300 Subject: [PATCH 10/61] Fix --- images/linux/scripts/installers/python.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/images/linux/scripts/installers/python.sh b/images/linux/scripts/installers/python.sh index 85b2775d..6472de40 100644 --- a/images/linux/scripts/installers/python.sh +++ b/images/linux/scripts/installers/python.sh @@ -26,8 +26,8 @@ export PIPX_HOME=/opt/pipx python3 -m pip install pipx python3 -m pipx ensurepath -# echo "PIPX_BIN_DIR=$PIPX_BIN_DIR" | tee -a /etc/environment -# echo "PIPX_HOME=$PIPX_HOME" | tee -a /etc/environment +echo "PIPX_BIN_DIR=$PIPX_BIN_DIR" | tee -a /etc/environment +echo "PIPX_HOME=$PIPX_HOME" | tee -a /etc/environment # Add pipx bin directory to path # export PATH="$PATH:$PIPX_BIN_DIR" From a1f44e0d46e60eada8b0eba2772fbdea5010894c Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Fri, 2 Oct 2020 09:20:33 +0300 Subject: [PATCH 11/61] Fix --- images/linux/scripts/installers/pipx-packages.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh index beec3ffa..28041048 100644 --- a/images/linux/scripts/installers/pipx-packages.sh +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -4,8 +4,8 @@ ## Desc: Install tools via pipx ################################################################################ -# Add pipx_bin to path -python3 -m pipx ensurepath + +export PATH="$PATH:/opt/pipx_bin" # Install yamlint pipx install yamllint From 0cd68997b622901015cc668d235e2318c386349b Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov Date: Fri, 2 Oct 2020 10:59:05 +0300 Subject: [PATCH 12/61] $ErrorActionPreference='Stop' for AllUsersAllHosts --- images/win/scripts/Installers/Configure-Toolset.ps1 | 2 -- images/win/scripts/Installers/Finalize-VM.ps1 | 5 ++--- images/win/scripts/Installers/Initialize-VM.ps1 | 3 +++ images/win/scripts/Installers/Install-AzureModules.ps1 | 2 -- images/win/scripts/Installers/Install-PHP.ps1 | 2 -- images/win/scripts/Installers/Install-PostgreSQL.ps1 | 2 -- images/win/scripts/Installers/Install-PowerShellModules.ps1 | 2 -- images/win/scripts/Installers/Install-PyPy.ps1 | 1 - images/win/scripts/Installers/Install-Sbt.ps1 | 2 -- images/win/scripts/Installers/Install-Toolset.ps1 | 2 -- images/win/scripts/Installers/Install-VS.ps1 | 2 -- images/win/scripts/Installers/Install-Vsix.ps1 | 2 -- images/win/scripts/Installers/Update-AndroidSDK.ps1 | 2 -- .../win/scripts/SoftwareReport/SoftwareReport.Generator.ps1 | 2 -- 14 files changed, 5 insertions(+), 26 deletions(-) diff --git a/images/win/scripts/Installers/Configure-Toolset.ps1 b/images/win/scripts/Installers/Configure-Toolset.ps1 index a4fdba1f..d83ea5c4 100644 --- a/images/win/scripts/Installers/Configure-Toolset.ps1 +++ b/images/win/scripts/Installers/Configure-Toolset.ps1 @@ -27,8 +27,6 @@ Function Set-DefaultVariables } } -$ErrorActionPreference = "Stop" - Import-Module -Name ImageHelpers -Force -DisableNameChecking # Define executables for cached tools diff --git a/images/win/scripts/Installers/Finalize-VM.ps1 b/images/win/scripts/Installers/Finalize-VM.ps1 index ab9e7080..4e7a260c 100644 --- a/images/win/scripts/Installers/Finalize-VM.ps1 +++ b/images/win/scripts/Installers/Finalize-VM.ps1 @@ -6,8 +6,6 @@ Write-Host "Cleanup WinSxS" Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase -$ErrorActionPreference = 'silentlycontinue' - Write-Host "Clean up various directories" @( "C:\\Recovery", @@ -30,4 +28,5 @@ Write-Host "Clean up various directories" $winInstallDir = "$env:windir\\Installer" New-Item -Path $winInstallDir -ItemType Directory -Force -$ErrorActionPreference = 'Continue' +# Remove AllUsersAllHosts profile +Remove-Item $profile.AllUsersAllHosts -Force diff --git a/images/win/scripts/Installers/Initialize-VM.ps1 b/images/win/scripts/Installers/Initialize-VM.ps1 index bd4619ca..ad853bb7 100644 --- a/images/win/scripts/Installers/Initialize-VM.ps1 +++ b/images/win/scripts/Installers/Initialize-VM.ps1 @@ -30,6 +30,9 @@ function Disable-UserAccessControl { Write-Host "User Access Control (UAC) has been disabled." } +# Enable $ErrorActionPreference='Stop' for AllUsersAllHosts +Add-Content -Path $profile.AllUsersAllHosts -Value '$ErrorActionPreference="Stop"' + # Set TLS1.2 [Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor "Tls12" diff --git a/images/win/scripts/Installers/Install-AzureModules.ps1 b/images/win/scripts/Installers/Install-AzureModules.ps1 index d03100bd..a12dec60 100644 --- a/images/win/scripts/Installers/Install-AzureModules.ps1 +++ b/images/win/scripts/Installers/Install-AzureModules.ps1 @@ -3,8 +3,6 @@ ## Desc: Install Azure PowerShell modules ################################################################################ -$ErrorActionPreference = "Stop" - # The correct Modules need to be saved in C:\Modules $installPSModulePath = $env:PSMODULES_ROOT_FOLDER if (-not (Test-Path -LiteralPath $installPSModulePath)) diff --git a/images/win/scripts/Installers/Install-PHP.ps1 b/images/win/scripts/Installers/Install-PHP.ps1 index a51c0e27..f629af21 100644 --- a/images/win/scripts/Installers/Install-PHP.ps1 +++ b/images/win/scripts/Installers/Install-PHP.ps1 @@ -2,8 +2,6 @@ ## File: Install-PHP.ps1 ## Desc: Install PHP ################################################################################ -$ErrorActionPreference = "Stop" - Import-Module -Name ImageHelpers # Install latest PHP in chocolatey diff --git a/images/win/scripts/Installers/Install-PostgreSQL.ps1 b/images/win/scripts/Installers/Install-PostgreSQL.ps1 index 7d46d43e..0f88bb7f 100644 --- a/images/win/scripts/Installers/Install-PostgreSQL.ps1 +++ b/images/win/scripts/Installers/Install-PostgreSQL.ps1 @@ -1,5 +1,3 @@ -$ErrorActionPreference = "Stop" - #Define user and password for PostgreSQL database $pgUser = "postgres" $pgPwd = "root" diff --git a/images/win/scripts/Installers/Install-PowerShellModules.ps1 b/images/win/scripts/Installers/Install-PowerShellModules.ps1 index f6cb22d0..f0afb9e6 100644 --- a/images/win/scripts/Installers/Install-PowerShellModules.ps1 +++ b/images/win/scripts/Installers/Install-PowerShellModules.ps1 @@ -1,5 +1,3 @@ -$ErrorActionPreference = "Stop" - # Set TLS1.2 [Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor "Tls12" diff --git a/images/win/scripts/Installers/Install-PyPy.ps1 b/images/win/scripts/Installers/Install-PyPy.ps1 index af1b1182..01739dda 100644 --- a/images/win/scripts/Installers/Install-PyPy.ps1 +++ b/images/win/scripts/Installers/Install-PyPy.ps1 @@ -82,7 +82,6 @@ function Install-PyPy } } -$ErrorActionPreference = "Stop" Import-Module -Name ImageHelpers -Force -DisableNameChecking # Get PyPy content from toolset diff --git a/images/win/scripts/Installers/Install-Sbt.ps1 b/images/win/scripts/Installers/Install-Sbt.ps1 index fc8b6a50..1be6d234 100644 --- a/images/win/scripts/Installers/Install-Sbt.ps1 +++ b/images/win/scripts/Installers/Install-Sbt.ps1 @@ -2,8 +2,6 @@ ## File: Install-Sbt.ps1 ## Desc: Install sbt for Windows ################################################################################ -$ErrorActionPreference = "Stop" - Import-Module -Name ImageHelpers # Install the latest version of sbt. diff --git a/images/win/scripts/Installers/Install-Toolset.ps1 b/images/win/scripts/Installers/Install-Toolset.ps1 index 42cdbaf2..d3aaba78 100644 --- a/images/win/scripts/Installers/Install-Toolset.ps1 +++ b/images/win/scripts/Installers/Install-Toolset.ps1 @@ -29,8 +29,6 @@ Function Install-Asset { Pop-Location } -$ErrorActionPreference = "Stop" - Import-Module -Name ImageHelpers -Force # Get toolcache content from toolset diff --git a/images/win/scripts/Installers/Install-VS.ps1 b/images/win/scripts/Installers/Install-VS.ps1 index ed4fca73..4c1ce952 100644 --- a/images/win/scripts/Installers/Install-VS.ps1 +++ b/images/win/scripts/Installers/Install-VS.ps1 @@ -3,8 +3,6 @@ ## Desc: Install Visual Studio ################################################################################ -$ErrorActionPreference = "Stop" - $toolset = Get-ToolsetContent $requiredComponents = $toolset.visualStudio.workloads | ForEach-Object { "--add $_" } $workLoads = @( diff --git a/images/win/scripts/Installers/Install-Vsix.ps1 b/images/win/scripts/Installers/Install-Vsix.ps1 index 4e6062a2..628b643b 100644 --- a/images/win/scripts/Installers/Install-Vsix.ps1 +++ b/images/win/scripts/Installers/Install-Vsix.ps1 @@ -3,8 +3,6 @@ ## Desc: Install the Visual Studio Extensions from toolset.json ################################################################################### -$ErrorActionPreference = "Stop" - $toolset = Get-ToolsetContent $vsixPackagesList = $toolset.visualStudio.vsix if (-not $vsixPackagesList) { diff --git a/images/win/scripts/Installers/Update-AndroidSDK.ps1 b/images/win/scripts/Installers/Update-AndroidSDK.ps1 index c27a4c18..a6a20131 100644 --- a/images/win/scripts/Installers/Update-AndroidSDK.ps1 +++ b/images/win/scripts/Installers/Update-AndroidSDK.ps1 @@ -3,8 +3,6 @@ ## Desc: Install and update Android SDK and tools ################################################################################ -$ErrorActionPreference = "Stop" - # Install the standard Android SDK licenses. In the past, there wasn't a better way to do this, # so we are base64-encoding a zip of the licenses directory from another installation. # To create this base64 string, create a zip file that contains nothing but a 'licenses' folder, diff --git a/images/win/scripts/SoftwareReport/SoftwareReport.Generator.ps1 b/images/win/scripts/SoftwareReport/SoftwareReport.Generator.ps1 index 2f45ecde..28a07dce 100644 --- a/images/win/scripts/SoftwareReport/SoftwareReport.Generator.ps1 +++ b/images/win/scripts/SoftwareReport/SoftwareReport.Generator.ps1 @@ -1,5 +1,3 @@ -$ErrorActionPreference = "Stop" - Import-Module MarkdownPS Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Android.psm1") -DisableNameChecking Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Browsers.psm1") -DisableNameChecking From 6d325ba3988da0d8cb5a642248fba3fa1495cb98 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Fri, 2 Oct 2020 11:23:02 +0300 Subject: [PATCH 13/61] Add pipx and yamllint to report --- .../SoftwareReport/SoftwareReport.Common.psm1 | 4 ++++ .../SoftwareReport/SoftwareReport.Generator.ps1 | 2 ++ .../SoftwareReport/SoftwareReport.Tools.psm1 | 4 ++++ images/linux/ubuntu1604.json | 13 ++----------- images/linux/ubuntu2004.json | 13 ++----------- 5 files changed, 14 insertions(+), 22 deletions(-) diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Common.psm1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Common.psm1 index c9257407..49dd5bda 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Common.psm1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Common.psm1 @@ -243,4 +243,8 @@ function Get-AptPackages { $apt = $toolsetJson.apt $pkgs = ($apt.common_packages + $apt.cmd_packages | Sort-Object) -join ", " return $pkgs +} + +function Get-PipxVersion { + return "Pipx $(pipx --version 2> $null)" } \ No newline at end of file diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 index ff03ba84..1bb44d54 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 @@ -58,6 +58,7 @@ $markdown += New-MDList -Style Unordered -Lines @( (Get-YarnVersion), (Get-PipVersion), (Get-Pip3Version), + (Get-PipxVersion), (Get-VcpkgVersion) ) @@ -110,6 +111,7 @@ $toolsList = @( (Get-TerraformVersion), (Get-UnZipVersion), (Get-WgetVersion), + (Get-YamllintVersion), (Get-ZipVersion), (Get-ZstdVersion) ) diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 index d1984b2a..831279e7 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 @@ -269,4 +269,8 @@ function Get-RVersion { function Get-SphinxVersion { $sphinxVersion = searchd -h | Select-Object -First 1 | Take-OutputPart -Part 1 | Take-OutputPart -Part 0 -Delimiter "-" return "Sphinx Open Source Search Server $sphinxVersion" +} + +function Get-YamllintVersion { + return (yamllint --version | Out-String) } \ No newline at end of file diff --git a/images/linux/ubuntu1604.json b/images/linux/ubuntu1604.json index 8a4255ec..c4133976 100644 --- a/images/linux/ubuntu1604.json +++ b/images/linux/ubuntu1604.json @@ -208,7 +208,8 @@ "{{template_dir}}/scripts/installers/hosted-tool-cache.sh", "{{template_dir}}/scripts/installers/pypy.sh", "{{template_dir}}/scripts/installers/python.sh", - "{{template_dir}}/scripts/installers/test-toolcache.sh" + "{{template_dir}}/scripts/installers/test-toolcache.sh", + "{{template_dir}}/scripts/installers/pipx-packages.sh" ], "environment_vars": [ "HELPER_SCRIPTS={{user `helper_script_folder`}}", @@ -231,16 +232,6 @@ ], "execute_command": "sudo sh -c '{{ .Vars }} pwsh -f {{ .Path }}'" }, - { - "type": "shell", - "scripts": [ - "{{template_dir}}/scripts/installers/aws-sam-cli.sh" - ], - "environment_vars": [ - "HELPER_SCRIPTS={{user `helper_script_folder`}}" - ], - "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" - }, { "type": "shell", "scripts": [ diff --git a/images/linux/ubuntu2004.json b/images/linux/ubuntu2004.json index 24c1f17e..3deb5a1b 100644 --- a/images/linux/ubuntu2004.json +++ b/images/linux/ubuntu2004.json @@ -214,7 +214,8 @@ "{{template_dir}}/scripts/installers/hosted-tool-cache.sh", "{{template_dir}}/scripts/installers/pypy.sh", "{{template_dir}}/scripts/installers/python.sh", - "{{template_dir}}/scripts/installers/test-toolcache.sh" + "{{template_dir}}/scripts/installers/test-toolcache.sh", + "{{template_dir}}/scripts/installers/pipx-packages.sh" ], "environment_vars": [ "HELPER_SCRIPTS={{user `helper_script_folder`}}", @@ -237,16 +238,6 @@ ], "execute_command": "sudo sh -c '{{ .Vars }} pwsh -f {{ .Path }}'" }, - { - "type": "shell", - "scripts": [ - "{{template_dir}}/scripts/installers/aws-sam-cli.sh" - ], - "environment_vars": [ - "HELPER_SCRIPTS={{user `helper_script_folder`}}" - ], - "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" - }, { "type": "shell", "scripts": [ From 64b2205f5c384a38309f80c4a1812941fd4789c8 Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov Date: Fri, 2 Oct 2020 11:37:55 +0300 Subject: [PATCH 14/61] TOOLSET_JSON_PATH Update-DockerImages.ps1" --- images/win/Windows2016-Azure.json | 7 +------ images/win/Windows2019-Azure.json | 7 +------ 2 files changed, 2 insertions(+), 12 deletions(-) diff --git a/images/win/Windows2016-Azure.json b/images/win/Windows2016-Azure.json index 77d57aef..34c1abcb 100644 --- a/images/win/Windows2016-Azure.json +++ b/images/win/Windows2016-Azure.json @@ -160,12 +160,6 @@ "type": "windows-restart", "restart_timeout": "30m" }, - { - "type": "powershell", - "scripts": [ - "{{ template_dir }}/scripts/Installers/Update-DockerImages.ps1" - ] - }, { "type": "powershell", "valid_exit_codes": [ @@ -176,6 +170,7 @@ "TOOLSET_JSON_PATH={{user `toolset_json_path`}}" ], "scripts": [ + "{{ template_dir }}/scripts/Installers/Update-DockerImages.ps1", "{{ template_dir }}/scripts/Installers/Install-VS.ps1", "{{ template_dir }}/scripts/Installers/Install-NET48.ps1", "{{ template_dir }}/scripts/Installers/Windows2016/Install-SSDT.ps1" diff --git a/images/win/Windows2019-Azure.json b/images/win/Windows2019-Azure.json index 473051db..1d061fd1 100644 --- a/images/win/Windows2019-Azure.json +++ b/images/win/Windows2019-Azure.json @@ -168,12 +168,6 @@ "type": "windows-restart", "restart_timeout": "10m" }, - { - "type": "powershell", - "scripts": [ - "{{ template_dir }}/scripts/Installers/Update-DockerImages.ps1" - ] - }, { "type": "powershell", "valid_exit_codes": [ @@ -184,6 +178,7 @@ "TOOLSET_JSON_PATH={{user `toolset_json_path`}}" ], "scripts": [ + "{{ template_dir }}/scripts/Installers/Update-DockerImages.ps1", "{{ template_dir }}/scripts/Installers/Install-VS.ps1", "{{ template_dir }}/scripts/Installers/Install-NET48.ps1" ], From 3203e151219d495f7ed464212216fca9f8b737c5 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Fri, 2 Oct 2020 12:58:12 +0300 Subject: [PATCH 15/61] Minor fix --- images/linux/scripts/installers/pipx-packages.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh index 28041048..67931b59 100644 --- a/images/linux/scripts/installers/pipx-packages.sh +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -18,7 +18,7 @@ fi echo "yamllint is successfully installed" # Install aws sam cli -pipx install aws-sam-cli --python /opt/hostedtoolcache/Python/3.7.9/x64/bin/python3.7 +pipx install aws-sam-cli --python /opt/hostedtoolcache/Python/3.7*/x64/bin/python3.7 if ! command -v sam; then echo "aws sam cli was not installed" From 6a8fd16499f8312b3f37b1c2abd9e733644db245 Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Fri, 2 Oct 2020 13:54:37 +0300 Subject: [PATCH 16/61] get all build-tools --- images/linux/scripts/installers/android.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/images/linux/scripts/installers/android.sh b/images/linux/scripts/installers/android.sh index c0915939..62c505c4 100644 --- a/images/linux/scripts/installers/android.sh +++ b/images/linux/scripts/installers/android.sh @@ -68,7 +68,8 @@ additional=$(jq -r '.android.additional_tools[]' $toolset) components=( "${extras[@]}" "${addons[@]}" "${additional[@]}" ) availablePlatforms=($(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "platforms;android-" | cut -d"|" -f 1)) -availableBuildTools=($(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list | sed -n '/Available Packages:/,/^$/p' | grep "build-tools;" | cut -d"|" -f 1)) +allBuildTools=($(${ANDROID_SDK_ROOT}/tools/bin/sdkmanager --list --include_obsolete | grep "build-tools;" | cut -d"|" -f 1 | sort -u)) +availableBuildTools=$(echo ${allBuildTools[@]//*rc[0-9]/}) filter_components_by_version $minimumPlatformVersion "${availablePlatforms[@]}" filter_components_by_version $minimumBuildToolVersion "${availableBuildTools[@]}" From 7df63a370d4cf6e05bb19ad993382be0b733ebfd Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Fri, 2 Oct 2020 16:51:03 +0300 Subject: [PATCH 17/61] Fix ubuntu 18.04 template --- images/linux/ubuntu1804.json | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/images/linux/ubuntu1804.json b/images/linux/ubuntu1804.json index c35d99eb..49e1aa1c 100644 --- a/images/linux/ubuntu1804.json +++ b/images/linux/ubuntu1804.json @@ -212,8 +212,7 @@ "{{template_dir}}/scripts/installers/hosted-tool-cache.sh", "{{template_dir}}/scripts/installers/pypy.sh", "{{template_dir}}/scripts/installers/python.sh", - "{{template_dir}}/scripts/installers/test-toolcache.sh", - "{{template_dir}}/scripts/installers/pipx-packages.sh" + "{{template_dir}}/scripts/installers/test-toolcache.sh" ], "environment_vars": [ "HELPER_SCRIPTS={{user `helper_script_folder`}}", @@ -236,6 +235,13 @@ ], "execute_command": "sudo sh -c '{{ .Vars }} pwsh -f {{ .Path }}'" }, + { + "type": "shell", + "scripts": [ + "{{template_dir}}/scripts/installers/pipx-packages.sh" + ], + "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" + }, { "type": "shell", "scripts": [ From fd2efe9c53aea311cce0863e78af9315074179a0 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Sat, 3 Oct 2020 11:54:36 +0300 Subject: [PATCH 18/61] Fix --- images/linux/scripts/installers/pipx-packages.sh | 2 +- images/linux/scripts/installers/python.sh | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh index 67931b59..77308fa3 100644 --- a/images/linux/scripts/installers/pipx-packages.sh +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -5,7 +5,7 @@ ################################################################################ -export PATH="$PATH:/opt/pipx_bin" +# export PATH="$PATH:/opt/pipx_bin" # Install yamlint pipx install yamllint diff --git a/images/linux/scripts/installers/python.sh b/images/linux/scripts/installers/python.sh index 6472de40..72651567 100644 --- a/images/linux/scripts/installers/python.sh +++ b/images/linux/scripts/installers/python.sh @@ -6,6 +6,7 @@ set -e # Source the helpers for use with the script +source $HELPER_SCRIPTS/etc-environment.sh source $HELPER_SCRIPTS/os.sh # Install Python, Python 3, pip, pip3 @@ -26,8 +27,12 @@ export PIPX_HOME=/opt/pipx python3 -m pip install pipx python3 -m pipx ensurepath -echo "PIPX_BIN_DIR=$PIPX_BIN_DIR" | tee -a /etc/environment -echo "PIPX_HOME=$PIPX_HOME" | tee -a /etc/environment +# Update /etc/environment +setEtcEnvironmentVariable "PIPX_BIN_DIR" $PIPX_BIN_DIR +setEtcEnvironmentVariable "PIPX_HOME" $PIPX_HOME +prependEtcEnvironmentPath /opt/pipx_bin +# echo "PIPX_BIN_DIR=$PIPX_BIN_DIR" | tee -a /etc/environment +# echo "PIPX_HOME=$PIPX_HOME" | tee -a /etc/environment # Add pipx bin directory to path # export PATH="$PATH:$PIPX_BIN_DIR" From 7601fe7b507bed11cb661079edbb6af08e8b97f1 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Sat, 3 Oct 2020 19:51:07 +0300 Subject: [PATCH 19/61] Fix --- images/linux/scripts/installers/pipx-packages.sh | 1 + images/linux/scripts/installers/python.sh | 3 --- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh index 77308fa3..48a16c4e 100644 --- a/images/linux/scripts/installers/pipx-packages.sh +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -6,6 +6,7 @@ # export PATH="$PATH:/opt/pipx_bin" +python3 -m pipx ensurepath # Install yamlint pipx install yamllint diff --git a/images/linux/scripts/installers/python.sh b/images/linux/scripts/installers/python.sh index 72651567..8535074b 100644 --- a/images/linux/scripts/installers/python.sh +++ b/images/linux/scripts/installers/python.sh @@ -31,11 +31,8 @@ python3 -m pipx ensurepath setEtcEnvironmentVariable "PIPX_BIN_DIR" $PIPX_BIN_DIR setEtcEnvironmentVariable "PIPX_HOME" $PIPX_HOME prependEtcEnvironmentPath /opt/pipx_bin -# echo "PIPX_BIN_DIR=$PIPX_BIN_DIR" | tee -a /etc/environment -# echo "PIPX_HOME=$PIPX_HOME" | tee -a /etc/environment # Add pipx bin directory to path -# export PATH="$PATH:$PIPX_BIN_DIR" echo 'export PATH="$PATH:/opt/pipx_bin"' >> /etc/skel/.bashrc # Run tests to determine that the software installed as expected From f6b3cf674cba6f7b7373ab5ce847d2dc97d44682 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Sat, 3 Oct 2020 23:03:28 +0300 Subject: [PATCH 20/61] Fix --- images/linux/scripts/installers/pipx-packages.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh index 48a16c4e..67931b59 100644 --- a/images/linux/scripts/installers/pipx-packages.sh +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -5,8 +5,7 @@ ################################################################################ -# export PATH="$PATH:/opt/pipx_bin" -python3 -m pipx ensurepath +export PATH="$PATH:/opt/pipx_bin" # Install yamlint pipx install yamllint From a11c9fff0858b03764a9e0db1a58e0cd4ccfc3ab Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Sun, 4 Oct 2020 14:51:46 +0300 Subject: [PATCH 21/61] Fix templates --- .../SoftwareReport/SoftwareReport.Tools.psm1 | 2 +- .../linux/scripts/installers/aws-sam-cli.sh | 31 ------------------- images/linux/ubuntu1604.json | 10 ++++-- images/linux/ubuntu2004.json | 10 ++++-- 4 files changed, 17 insertions(+), 36 deletions(-) delete mode 100644 images/linux/scripts/installers/aws-sam-cli.sh diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 index 831279e7..60c1a699 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 @@ -272,5 +272,5 @@ function Get-SphinxVersion { } function Get-YamllintVersion { - return (yamllint --version | Out-String) + return "$(yamllint --version)" } \ No newline at end of file diff --git a/images/linux/scripts/installers/aws-sam-cli.sh b/images/linux/scripts/installers/aws-sam-cli.sh deleted file mode 100644 index ac56144b..00000000 --- a/images/linux/scripts/installers/aws-sam-cli.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/bash -################################################################################ -## File: aws-sam-cli.sh -## Desc: Installs AWS SAM CLI -## Requires Python >=3.6, must be run as non-root user after toolset installation -################################################################################ - - -# Download latest aws sam cli sources -TarballUrl=$(curl -s https://api.github.com/repos/aws/aws-sam-cli/releases/latest | jq -r '.tarball_url') -TarballPath="/tmp/aws-sam-cli.tar.gz" -wget $TarballUrl -O $TarballPath -tar -xzvf $TarballPath -C /tmp -cd /tmp/aws-aws-sam-cli* - -mkdir /opt/python-aws-sam-cli -cp -r /opt/hostedtoolcache/Python/3.7* /opt/python-aws-sam-cli - -# Use copy of python 3.7 from toolcache to install aws sam, setuptools package required for the installation -Python3Dir=$(echo /opt/python-aws-sam-cli/3.7*/x64) -Python3BinDir="${Python3Dir}/bin" -$Python3BinDir/python3 -m pip install setuptools -$Python3BinDir/python3 setup.py install -ln -sf ${Python3BinDir}/sam /usr/local/bin/sam - -# Run tests to determine that the software installed as expected -echo "Testing to make sure that script performed as expected, and basic scenarios work" -if ! sam --version; then - echo "AWS SAM CLI was not installed" - exit 1 -fi diff --git a/images/linux/ubuntu1604.json b/images/linux/ubuntu1604.json index c4133976..2fc97542 100644 --- a/images/linux/ubuntu1604.json +++ b/images/linux/ubuntu1604.json @@ -208,8 +208,7 @@ "{{template_dir}}/scripts/installers/hosted-tool-cache.sh", "{{template_dir}}/scripts/installers/pypy.sh", "{{template_dir}}/scripts/installers/python.sh", - "{{template_dir}}/scripts/installers/test-toolcache.sh", - "{{template_dir}}/scripts/installers/pipx-packages.sh" + "{{template_dir}}/scripts/installers/test-toolcache.sh" ], "environment_vars": [ "HELPER_SCRIPTS={{user `helper_script_folder`}}", @@ -232,6 +231,13 @@ ], "execute_command": "sudo sh -c '{{ .Vars }} pwsh -f {{ .Path }}'" }, + { + "type": "shell", + "scripts": [ + "{{template_dir}}/scripts/installers/pipx-packages.sh" + ], + "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" + }, { "type": "shell", "scripts": [ diff --git a/images/linux/ubuntu2004.json b/images/linux/ubuntu2004.json index 3deb5a1b..0b1fdc8d 100644 --- a/images/linux/ubuntu2004.json +++ b/images/linux/ubuntu2004.json @@ -214,8 +214,7 @@ "{{template_dir}}/scripts/installers/hosted-tool-cache.sh", "{{template_dir}}/scripts/installers/pypy.sh", "{{template_dir}}/scripts/installers/python.sh", - "{{template_dir}}/scripts/installers/test-toolcache.sh", - "{{template_dir}}/scripts/installers/pipx-packages.sh" + "{{template_dir}}/scripts/installers/test-toolcache.sh" ], "environment_vars": [ "HELPER_SCRIPTS={{user `helper_script_folder`}}", @@ -238,6 +237,13 @@ ], "execute_command": "sudo sh -c '{{ .Vars }} pwsh -f {{ .Path }}'" }, + { + "type": "shell", + "scripts": [ + "{{template_dir}}/scripts/installers/pipx-packages.sh" + ], + "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" + }, { "type": "shell", "scripts": [ From 4ef13d58ee37ba0427b46e3cd8486664f5ee7cf7 Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov Date: Mon, 5 Oct 2020 09:17:49 +0300 Subject: [PATCH 22/61] remove import ImageHelpers module --- images/win/scripts/Installers/Configure-Toolset.ps1 | 2 -- images/win/scripts/Installers/Download-ToolCache.ps1 | 2 -- .../win/scripts/Installers/Install-AzureCosmosDbEmulator.ps1 | 2 -- images/win/scripts/Installers/Install-Chrome.ps1 | 2 -- images/win/scripts/Installers/Install-CloudFoundryCli.ps1 | 2 -- images/win/scripts/Installers/Install-DACFx.ps1 | 2 -- images/win/scripts/Installers/Install-Firefox.ps1 | 2 -- images/win/scripts/Installers/Install-Git.ps1 | 2 -- images/win/scripts/Installers/Install-JavaTools.ps1 | 2 -- images/win/scripts/Installers/Install-Miniconda.ps1 | 2 -- images/win/scripts/Installers/Install-NET48.ps1 | 2 -- images/win/scripts/Installers/Install-NodeLts.ps1 | 2 -- images/win/scripts/Installers/Install-PHP.ps1 | 1 - images/win/scripts/Installers/Install-PyPy.ps1 | 2 -- images/win/scripts/Installers/Install-Rust.ps1 | 2 -- images/win/scripts/Installers/Install-SQLPowerShellTools.ps1 | 2 -- images/win/scripts/Installers/Install-Sbt.ps1 | 1 - images/win/scripts/Installers/Install-Selenium.ps1 | 2 -- images/win/scripts/Installers/Install-Toolset.ps1 | 2 -- images/win/scripts/Installers/Install-Vcpkg.ps1 | 2 -- images/win/scripts/Installers/Install-WDK.ps1 | 3 --- images/win/scripts/Installers/Install-WinAppDriver.ps1 | 2 -- images/win/scripts/Installers/Install-Wix.ps1 | 2 -- images/win/scripts/Installers/Windows2016/Install-SSDT.ps1 | 2 -- images/win/scripts/Installers/Windows2016/Install-Win81SDK.ps1 | 2 -- 25 files changed, 49 deletions(-) diff --git a/images/win/scripts/Installers/Configure-Toolset.ps1 b/images/win/scripts/Installers/Configure-Toolset.ps1 index d83ea5c4..9e067ade 100644 --- a/images/win/scripts/Installers/Configure-Toolset.ps1 +++ b/images/win/scripts/Installers/Configure-Toolset.ps1 @@ -27,8 +27,6 @@ Function Set-DefaultVariables } } -Import-Module -Name ImageHelpers -Force -DisableNameChecking - # Define executables for cached tools $toolsEnvironmentVariables = @{ Python = @{ diff --git a/images/win/scripts/Installers/Download-ToolCache.ps1 b/images/win/scripts/Installers/Download-ToolCache.ps1 index 6c93e380..8656fb6a 100644 --- a/images/win/scripts/Installers/Download-ToolCache.ps1 +++ b/images/win/scripts/Installers/Download-ToolCache.ps1 @@ -62,8 +62,6 @@ Function Set-DefaultRubyVersion { Invoke-Expression "gem update --system" } -Import-Module -Name ImageHelpers -Force - $FeedPrefix = "https://npm.pkg.github.com" $AccessToken = $env:GITHUB_FEED_TOKEN diff --git a/images/win/scripts/Installers/Install-AzureCosmosDbEmulator.ps1 b/images/win/scripts/Installers/Install-AzureCosmosDbEmulator.ps1 index 52c99f26..ba7922a7 100644 --- a/images/win/scripts/Installers/Install-AzureCosmosDbEmulator.ps1 +++ b/images/win/scripts/Installers/Install-AzureCosmosDbEmulator.ps1 @@ -3,8 +3,6 @@ ## Desc: Install Azure CosmosDb Emulator #################################################################################### -Import-Module -Name ImageHelpers -Force - $InstallerName = "AzureCosmosDBEmulator.msi" $InstallerUrl = "https://aka.ms/cosmosdb-emulator" diff --git a/images/win/scripts/Installers/Install-Chrome.ps1 b/images/win/scripts/Installers/Install-Chrome.ps1 index 5e1d6ae4..790ec09f 100644 --- a/images/win/scripts/Installers/Install-Chrome.ps1 +++ b/images/win/scripts/Installers/Install-Chrome.ps1 @@ -3,8 +3,6 @@ ## Desc: Install Google Chrome ################################################################################ -Import-Module -Name ImageHelpers -Force - # Download and install latest Chrome browser $ChromeInstallerFile = "chrome_installer.exe" $ChromeInstallerUrl = "https://dl.google.com/chrome/install/375.126/${ChromeInstallerFile}" diff --git a/images/win/scripts/Installers/Install-CloudFoundryCli.ps1 b/images/win/scripts/Installers/Install-CloudFoundryCli.ps1 index 65831bd7..2bc7e4b0 100644 --- a/images/win/scripts/Installers/Install-CloudFoundryCli.ps1 +++ b/images/win/scripts/Installers/Install-CloudFoundryCli.ps1 @@ -3,8 +3,6 @@ ## Desc: Install Cloud Foundry CLI ################################################################################ -Import-Module -Name ImageHelpers - # Download the latest cf cli exe $CloudFoundryCliName = "cf-cli.zip" $CloudFoundryCliUrl = "https://packages.cloudfoundry.org/stable?release=windows64-exe&source=github" diff --git a/images/win/scripts/Installers/Install-DACFx.ps1 b/images/win/scripts/Installers/Install-DACFx.ps1 index fb50af0d..2160b1dc 100644 --- a/images/win/scripts/Installers/Install-DACFx.ps1 +++ b/images/win/scripts/Installers/Install-DACFx.ps1 @@ -3,8 +3,6 @@ ## Desc: Install SQL ServerĀ® Data-Tier Application Framework (DACFx) for Windows #################################################################################### -Import-Module -Name ImageHelpers -Force - $InstallerName = "DacFramework.msi" $InstallerUrl = "https://go.microsoft.com/fwlink/?linkid=2134206" diff --git a/images/win/scripts/Installers/Install-Firefox.ps1 b/images/win/scripts/Installers/Install-Firefox.ps1 index 979a7b4b..f66a72e1 100644 --- a/images/win/scripts/Installers/Install-Firefox.ps1 +++ b/images/win/scripts/Installers/Install-Firefox.ps1 @@ -3,8 +3,6 @@ ## Desc: Install Mozilla Firefox ################################################################################ -Import-Module -Name ImageHelpers -Force - # Install and configure Firefox browser Write-Host "Install latest Firefox browser..." $VersionsManifest = Invoke-RestMethod "https://product-details.mozilla.org/1.0/firefox_versions.json" diff --git a/images/win/scripts/Installers/Install-Git.ps1 b/images/win/scripts/Installers/Install-Git.ps1 index 2a5ea925..32de0e64 100644 --- a/images/win/scripts/Installers/Install-Git.ps1 +++ b/images/win/scripts/Installers/Install-Git.ps1 @@ -3,8 +3,6 @@ ## Desc: Install Git for Windows ################################################################################ -Import-Module -Name ImageHelpers - function getSimpleValue([string] $url, [string] $filename ) { $fullpath = "${env:Temp}\$filename" Invoke-WebRequest -Uri $url -OutFile $fullpath diff --git a/images/win/scripts/Installers/Install-JavaTools.ps1 b/images/win/scripts/Installers/Install-JavaTools.ps1 index 04a56a91..4852f64c 100644 --- a/images/win/scripts/Installers/Install-JavaTools.ps1 +++ b/images/win/scripts/Installers/Install-JavaTools.ps1 @@ -3,8 +3,6 @@ ## Desc: Install various JDKs and java tools ################################################################################ -Import-Module -Name ImageHelpers -Force - function Set-JavaPath { param ( [string] $Version, diff --git a/images/win/scripts/Installers/Install-Miniconda.ps1 b/images/win/scripts/Installers/Install-Miniconda.ps1 index 6f716b50..0b2f59c8 100644 --- a/images/win/scripts/Installers/Install-Miniconda.ps1 +++ b/images/win/scripts/Installers/Install-Miniconda.ps1 @@ -3,8 +3,6 @@ ## Desc: Install the latest version of Miniconda and set $env:CONDA ################################################################################ -Import-Module -Name ImageHelpers -Force - $CondaDestination = "C:\Miniconda" # Lock to Miniconda 4.6 until we do the work to run `conda init` for the vsts user diff --git a/images/win/scripts/Installers/Install-NET48.ps1 b/images/win/scripts/Installers/Install-NET48.ps1 index ef343b53..ef26a3c0 100644 --- a/images/win/scripts/Installers/Install-NET48.ps1 +++ b/images/win/scripts/Installers/Install-NET48.ps1 @@ -3,8 +3,6 @@ ## Desc: Install .NET 4.8 ################################################################################ -Import-Module -Name ImageHelpers -Force - # .NET 4.8 Dev pack $InstallerName = "ndp48-devpack-enu.exe" $InstallerUrl = "https://download.visualstudio.microsoft.com/download/pr/014120d7-d689-4305-befd-3cb711108212/0307177e14752e359fde5423ab583e43/${InstallerName}" diff --git a/images/win/scripts/Installers/Install-NodeLts.ps1 b/images/win/scripts/Installers/Install-NodeLts.ps1 index 8dc4559e..a44a04fb 100644 --- a/images/win/scripts/Installers/Install-NodeLts.ps1 +++ b/images/win/scripts/Installers/Install-NodeLts.ps1 @@ -4,8 +4,6 @@ ## Must run after python is configured ################################################################################ -Import-Module -Name ImageHelpers -Force - $PrefixPath = 'C:\npm\prefix' $CachePath = 'C:\npm\cache' diff --git a/images/win/scripts/Installers/Install-PHP.ps1 b/images/win/scripts/Installers/Install-PHP.ps1 index f629af21..7e766bba 100644 --- a/images/win/scripts/Installers/Install-PHP.ps1 +++ b/images/win/scripts/Installers/Install-PHP.ps1 @@ -2,7 +2,6 @@ ## File: Install-PHP.ps1 ## Desc: Install PHP ################################################################################ -Import-Module -Name ImageHelpers # Install latest PHP in chocolatey $installDir = "c:\tools\php" diff --git a/images/win/scripts/Installers/Install-PyPy.ps1 b/images/win/scripts/Installers/Install-PyPy.ps1 index 01739dda..8b029f02 100644 --- a/images/win/scripts/Installers/Install-PyPy.ps1 +++ b/images/win/scripts/Installers/Install-PyPy.ps1 @@ -82,8 +82,6 @@ function Install-PyPy } } -Import-Module -Name ImageHelpers -Force -DisableNameChecking - # Get PyPy content from toolset $pypyTools = Get-ToolsetContent | Select-Object -ExpandProperty toolcache | Where-Object Name -eq "PyPy" diff --git a/images/win/scripts/Installers/Install-Rust.ps1 b/images/win/scripts/Installers/Install-Rust.ps1 index 35e16dcd..294a1370 100644 --- a/images/win/scripts/Installers/Install-Rust.ps1 +++ b/images/win/scripts/Installers/Install-Rust.ps1 @@ -3,8 +3,6 @@ ## Desc: Install Rust for Windows ################################################################################ -Import-Module -Name ImageHelpers - # Rust Env $env:RUSTUP_HOME = "C:\Rust\.rustup" $env:CARGO_HOME = "C:\Rust\.cargo" diff --git a/images/win/scripts/Installers/Install-SQLPowerShellTools.ps1 b/images/win/scripts/Installers/Install-SQLPowerShellTools.ps1 index 7c0a3cfd..60cbbefa 100644 --- a/images/win/scripts/Installers/Install-SQLPowerShellTools.ps1 +++ b/images/win/scripts/Installers/Install-SQLPowerShellTools.ps1 @@ -3,8 +3,6 @@ ## Desc: Install SQL PowerShell tool ################################################################################ -Import-Module -Name ImageHelpers -Force - $BaseUrl = "https://download.microsoft.com/download/8/7/2/872BCECA-C849-4B40-8EBE-21D48CDF1456/ENU/x64" # install required MSIs diff --git a/images/win/scripts/Installers/Install-Sbt.ps1 b/images/win/scripts/Installers/Install-Sbt.ps1 index 1be6d234..cfc37f5b 100644 --- a/images/win/scripts/Installers/Install-Sbt.ps1 +++ b/images/win/scripts/Installers/Install-Sbt.ps1 @@ -2,7 +2,6 @@ ## File: Install-Sbt.ps1 ## Desc: Install sbt for Windows ################################################################################ -Import-Module -Name ImageHelpers # Install the latest version of sbt. # See https://chocolatey.org/packages/sbt diff --git a/images/win/scripts/Installers/Install-Selenium.ps1 b/images/win/scripts/Installers/Install-Selenium.ps1 index d49ad082..c1f2ce15 100644 --- a/images/win/scripts/Installers/Install-Selenium.ps1 +++ b/images/win/scripts/Installers/Install-Selenium.ps1 @@ -3,8 +3,6 @@ ## Desc: Install Selenium Server standalone ################################################################################ -Import-Module -Name ImageHelpers -Force - # Acquire latest Selenium release number from GitHub API $latestReleaseUrl = "https://api.github.com/repos/SeleniumHQ/selenium/releases/latest" try { diff --git a/images/win/scripts/Installers/Install-Toolset.ps1 b/images/win/scripts/Installers/Install-Toolset.ps1 index d3aaba78..5a8b3689 100644 --- a/images/win/scripts/Installers/Install-Toolset.ps1 +++ b/images/win/scripts/Installers/Install-Toolset.ps1 @@ -29,8 +29,6 @@ Function Install-Asset { Pop-Location } -Import-Module -Name ImageHelpers -Force - # Get toolcache content from toolset $ToolsToInstall = @("Python", "Node", "Boost", "Go") diff --git a/images/win/scripts/Installers/Install-Vcpkg.ps1 b/images/win/scripts/Installers/Install-Vcpkg.ps1 index f4b44f98..4360b2d3 100644 --- a/images/win/scripts/Installers/Install-Vcpkg.ps1 +++ b/images/win/scripts/Installers/Install-Vcpkg.ps1 @@ -3,8 +3,6 @@ ## Desc: Install vcpkg ################################################################################ -Import-Module -Name ImageHelpers -Force - $Uri = 'https://github.com/Microsoft/vcpkg.git' $InstallDir = 'C:\vcpkg' $VcpkgExecPath = 'vcpkg.exe' diff --git a/images/win/scripts/Installers/Install-WDK.ps1 b/images/win/scripts/Installers/Install-WDK.ps1 index 54f08cc9..82690c80 100644 --- a/images/win/scripts/Installers/Install-WDK.ps1 +++ b/images/win/scripts/Installers/Install-WDK.ps1 @@ -4,9 +4,6 @@ ################################################################################ # Requires Windows SDK with the same version number as the WDK - -Import-Module -Name ImageHelpers -Force - if (Test-IsWin19) { $winSdkUrl = "https://go.microsoft.com/fwlink/p/?linkid=2120843" diff --git a/images/win/scripts/Installers/Install-WinAppDriver.ps1 b/images/win/scripts/Installers/Install-WinAppDriver.ps1 index fc79ff99..38745dd9 100644 --- a/images/win/scripts/Installers/Install-WinAppDriver.ps1 +++ b/images/win/scripts/Installers/Install-WinAppDriver.ps1 @@ -3,8 +3,6 @@ ## Desc: Install Windows Application Driver (WinAppDriver) #################################################################################### -Import-Module -Name ImageHelpers -Force - $InstallerName = "WindowsApplicationDriver.msi" $InstallerUrl = "https://github.com/Microsoft/WinAppDriver/releases/download/v1.1/${InstallerName}" diff --git a/images/win/scripts/Installers/Install-Wix.ps1 b/images/win/scripts/Installers/Install-Wix.ps1 index 63305f57..88ef31b2 100644 --- a/images/win/scripts/Installers/Install-Wix.ps1 +++ b/images/win/scripts/Installers/Install-Wix.ps1 @@ -3,8 +3,6 @@ ## Desc: Install WIX. ################################################################################ -Import-Module -Name ImageHelpers -Force - Choco-Install -PackageName wixtoolset -ArgumentList "--force" if(Test-IsWin19) diff --git a/images/win/scripts/Installers/Windows2016/Install-SSDT.ps1 b/images/win/scripts/Installers/Windows2016/Install-SSDT.ps1 index b39a547d..e67d0cb2 100644 --- a/images/win/scripts/Installers/Windows2016/Install-SSDT.ps1 +++ b/images/win/scripts/Installers/Windows2016/Install-SSDT.ps1 @@ -3,8 +3,6 @@ ## Desc: Install SQL Server Data Tools for Windows ################################################################################ -Import-Module -Name ImageHelpers -Force - #SSDT for Visual Studio 2017 #The link down below points to the latest version of SSDT for Visual Studio 2017 $InstallerName = "SSDT-Setup-ENU.exe" diff --git a/images/win/scripts/Installers/Windows2016/Install-Win81SDK.ps1 b/images/win/scripts/Installers/Windows2016/Install-Win81SDK.ps1 index d89f468f..897b8bff 100644 --- a/images/win/scripts/Installers/Windows2016/Install-Win81SDK.ps1 +++ b/images/win/scripts/Installers/Windows2016/Install-Win81SDK.ps1 @@ -3,8 +3,6 @@ ## Desc: Install Windows 8.1 SDK ################################################################################ -Import-Module -Name ImageHelpers -Force - $InstallerName = "sdksetup.exe" $InstallerUrl = "http://download.microsoft.com/download/B/0/C/B0C80BA3-8AD6-4958-810B-6882485230B5/standalonesdk/${InstallerName}" $ArgumentList = ("/quiet", "/norestart") From f4b8b26237977256312ce82b6ce972ceac6f7bdb Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Mon, 5 Oct 2020 09:20:26 +0300 Subject: [PATCH 23/61] Revert for ubuntu 1604 --- .../linux/scripts/installers/aws-sam-cli.sh | 31 +++++++++++++++++ images/linux/scripts/installers/python.sh | 34 ++++++++++++------- images/linux/ubuntu1604.json | 5 ++- 3 files changed, 56 insertions(+), 14 deletions(-) create mode 100644 images/linux/scripts/installers/aws-sam-cli.sh diff --git a/images/linux/scripts/installers/aws-sam-cli.sh b/images/linux/scripts/installers/aws-sam-cli.sh new file mode 100644 index 00000000..ac56144b --- /dev/null +++ b/images/linux/scripts/installers/aws-sam-cli.sh @@ -0,0 +1,31 @@ +#!/bin/bash +################################################################################ +## File: aws-sam-cli.sh +## Desc: Installs AWS SAM CLI +## Requires Python >=3.6, must be run as non-root user after toolset installation +################################################################################ + + +# Download latest aws sam cli sources +TarballUrl=$(curl -s https://api.github.com/repos/aws/aws-sam-cli/releases/latest | jq -r '.tarball_url') +TarballPath="/tmp/aws-sam-cli.tar.gz" +wget $TarballUrl -O $TarballPath +tar -xzvf $TarballPath -C /tmp +cd /tmp/aws-aws-sam-cli* + +mkdir /opt/python-aws-sam-cli +cp -r /opt/hostedtoolcache/Python/3.7* /opt/python-aws-sam-cli + +# Use copy of python 3.7 from toolcache to install aws sam, setuptools package required for the installation +Python3Dir=$(echo /opt/python-aws-sam-cli/3.7*/x64) +Python3BinDir="${Python3Dir}/bin" +$Python3BinDir/python3 -m pip install setuptools +$Python3BinDir/python3 setup.py install +ln -sf ${Python3BinDir}/sam /usr/local/bin/sam + +# Run tests to determine that the software installed as expected +echo "Testing to make sure that script performed as expected, and basic scenarios work" +if ! sam --version; then + echo "AWS SAM CLI was not installed" + exit 1 +fi diff --git a/images/linux/scripts/installers/python.sh b/images/linux/scripts/installers/python.sh index 8535074b..b939b62b 100644 --- a/images/linux/scripts/installers/python.sh +++ b/images/linux/scripts/installers/python.sh @@ -19,25 +19,33 @@ if isUbuntu20; then ln -s /usr/bin/pip3 /usr/bin/pip fi -# Install pipx -# Set pipx custom directory -export PIPX_BIN_DIR=/opt/pipx_bin -export PIPX_HOME=/opt/pipx +if isUbuntu18 || isUbuntu20 ; then + # Install pipx + # Set pipx custom directory + export PIPX_BIN_DIR=/opt/pipx_bin + export PIPX_HOME=/opt/pipx -python3 -m pip install pipx -python3 -m pipx ensurepath + python3 -m pip install pipx + python3 -m pipx ensurepath -# Update /etc/environment -setEtcEnvironmentVariable "PIPX_BIN_DIR" $PIPX_BIN_DIR -setEtcEnvironmentVariable "PIPX_HOME" $PIPX_HOME -prependEtcEnvironmentPath /opt/pipx_bin + # Update /etc/environment + setEtcEnvironmentVariable "PIPX_BIN_DIR" $PIPX_BIN_DIR + setEtcEnvironmentVariable "PIPX_HOME" $PIPX_HOME + prependEtcEnvironmentPath /opt/pipx_bin -# Add pipx bin directory to path -echo 'export PATH="$PATH:/opt/pipx_bin"' >> /etc/skel/.bashrc + # Add pipx bin directory to path + echo 'export PATH="$PATH:/opt/pipx_bin"' >> /etc/skel/.bashrc + + # Test pipx + if ! command -v pipx; then + echo "pipx was not installed or not found on PATH" + exit 1 + fi +fi # Run tests to determine that the software installed as expected echo "Testing to make sure that script performed as expected, and basic scenarios work" -for cmd in python pip python3 pip3 pipx; do +for cmd in python pip python3 pip3; do if ! command -v $cmd; then echo "$cmd was not installed or not found on PATH" exit 1 diff --git a/images/linux/ubuntu1604.json b/images/linux/ubuntu1604.json index 2fc97542..8a4255ec 100644 --- a/images/linux/ubuntu1604.json +++ b/images/linux/ubuntu1604.json @@ -234,7 +234,10 @@ { "type": "shell", "scripts": [ - "{{template_dir}}/scripts/installers/pipx-packages.sh" + "{{template_dir}}/scripts/installers/aws-sam-cli.sh" + ], + "environment_vars": [ + "HELPER_SCRIPTS={{user `helper_script_folder`}}" ], "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" }, From 63925c8d9f58194ee7e811ce2a02bcc55acb6f6d Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Mon, 5 Oct 2020 09:22:23 +0300 Subject: [PATCH 24/61] Revert yamllint for ubuntu 1604 --- images/linux/toolsets/toolset-1604.json | 1 + 1 file changed, 1 insertion(+) diff --git a/images/linux/toolsets/toolset-1604.json b/images/linux/toolsets/toolset-1604.json index fcb5fde1..46aad66a 100644 --- a/images/linux/toolsets/toolset-1604.json +++ b/images/linux/toolsets/toolset-1604.json @@ -172,6 +172,7 @@ "time", "unzip", "wget", + "yamllint", "zip" ] }, From 687f58106d1735b22339d1eee0f7f8a5b9b36639 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Mon, 5 Oct 2020 09:56:42 +0300 Subject: [PATCH 25/61] Minor fix --- images/linux/scripts/installers/python.sh | 3 --- 1 file changed, 3 deletions(-) diff --git a/images/linux/scripts/installers/python.sh b/images/linux/scripts/installers/python.sh index b939b62b..7ce5f449 100644 --- a/images/linux/scripts/installers/python.sh +++ b/images/linux/scripts/installers/python.sh @@ -33,9 +33,6 @@ if isUbuntu18 || isUbuntu20 ; then setEtcEnvironmentVariable "PIPX_HOME" $PIPX_HOME prependEtcEnvironmentPath /opt/pipx_bin - # Add pipx bin directory to path - echo 'export PATH="$PATH:/opt/pipx_bin"' >> /etc/skel/.bashrc - # Test pipx if ! command -v pipx; then echo "pipx was not installed or not found on PATH" From ce454f523e3225fd5b3de22806f55c396f060ac4 Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov Date: Mon, 5 Oct 2020 10:38:36 +0300 Subject: [PATCH 26/61] fix erlang version output --- .../linux/scripts/SoftwareReport/SoftwareReport.Common.psm1 | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Common.psm1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Common.psm1 index c9257407..9d910ddc 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Common.psm1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Common.psm1 @@ -32,9 +32,7 @@ function Get-ClangVersions { } function Get-ErlangVersion { - $result = Get-CommandResult "erl -version" - $result.Output -match "version (?\d+\.\d+\.\d+)" | Out-Null - $version = $Matches.version + $version = (erl -eval 'erlang:display(erlang:system_info(version)), halt().' -noshell).Trim('"') return "Erlang $version" } From 3187ff66cf7f4db36e77fc0183c7f7214b9bcc08 Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Mon, 5 Oct 2020 10:46:06 +0300 Subject: [PATCH 27/61] add comment --- images/linux/scripts/installers/android.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/images/linux/scripts/installers/android.sh b/images/linux/scripts/installers/android.sh index 62c505c4..90d2013a 100644 --- a/images/linux/scripts/installers/android.sh +++ b/images/linux/scripts/installers/android.sh @@ -17,6 +17,7 @@ function filter_components_by_version { for item in ${toolsArr[@]} do + # take the last argument after spliting string by ';'' and '-'' version=$(echo "${item##*[-;]}") if verlte $minimumVersion $version then From 4b0de6f6f4e56d8e67de09c03644b12d84252a78 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Mon, 5 Oct 2020 11:08:22 +0300 Subject: [PATCH 28/61] Minor fix --- images/linux/scripts/installers/python.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/images/linux/scripts/installers/python.sh b/images/linux/scripts/installers/python.sh index 7ce5f449..62dc8d35 100644 --- a/images/linux/scripts/installers/python.sh +++ b/images/linux/scripts/installers/python.sh @@ -31,7 +31,7 @@ if isUbuntu18 || isUbuntu20 ; then # Update /etc/environment setEtcEnvironmentVariable "PIPX_BIN_DIR" $PIPX_BIN_DIR setEtcEnvironmentVariable "PIPX_HOME" $PIPX_HOME - prependEtcEnvironmentPath /opt/pipx_bin + prependEtcEnvironmentPath $PIPX_BIN_DIR # Test pipx if ! command -v pipx; then From e56fa77d910b9cfbdfc440938608592bcc4e8e4e Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov Date: Mon, 5 Oct 2020 11:19:24 +0300 Subject: [PATCH 29/61] restore owner --- .../SoftwareReport/SoftwareReport.Generator.ps1 | 3 +++ .../SoftwareReport/SoftwareReport.Helpers.psm1 | 4 ++++ .../SoftwareReport/SoftwareReport.Tools.psm1 | 16 ++++++++-------- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 index ff03ba84..ac8c26dd 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 @@ -14,6 +14,9 @@ Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Java.psm1") -DisableNameC Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Rust.psm1") -DisableNameChecking Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Tools.psm1") -DisableNameChecking +# Restore file owner in user profile +Restore-UserOwner + $markdown = "" if ($env:ANNOUNCEMENTS) { diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Helpers.psm1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Helpers.psm1 index 45ab4494..9ef761d7 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Helpers.psm1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Helpers.psm1 @@ -49,3 +49,7 @@ function New-MDNewLine { $newLineSymbol = [System.Environment]::NewLine return $newLineSymbol * $Count } + +function Restore-UserOwner { + sudo chown -R ${env:USER}: $env:HOME +} \ No newline at end of file diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 index 915f857f..2c98ecbc 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 @@ -4,7 +4,7 @@ function Get-7zipVersion { } function Get-AnsibleVersion { - $ansibleVersion = sudo ansible --version | Select-Object -First 1 | Take-OutputPart -Part 1 + $ansibleVersion = ansible --version | Select-Object -First 1 | Take-OutputPart -Part 1 return "Ansible $ansibleVersion" } @@ -19,12 +19,12 @@ function Get-AzCopy10Version { } function Get-BazelVersion { - $bazelVersion = sudo bazel --version | Select-String "bazel" | Take-OutputPart -Part 1 + $bazelVersion = bazel --version | Select-String "bazel" | Take-OutputPart -Part 1 return "Bazel $bazelVersion" } function Get-BazeliskVersion { - $bazeliskVersion = sudo bazelisk version 2>&1 | Select-String "Bazelisk version:" | Take-OutputPart -Part 2 | Take-OutputPart -Part 0 -Delimiter "v" + $bazeliskVersion = bazelisk version 2>&1 | Select-String "Bazelisk version:" | Take-OutputPart -Part 2 | Take-OutputPart -Part 0 -Delimiter "v" return "Bazelisk $bazeliskVersion" } @@ -92,7 +92,7 @@ function Get-GitFTPVersion { } function Get-GoogleCloudSDKVersion { - return "$(sudo gcloud --version | Select-Object -First 1)" + return "$(gcloud --version | Select-Object -First 1)" } function Get-HavegedVersion { @@ -101,7 +101,7 @@ function Get-HavegedVersion { } function Get-HerokuVersion { - $herokuVersion = sudo heroku version | Take-OutputPart -Part 0 | Take-OutputPart -Part 1 -Delimiter "/" + $herokuVersion = heroku version | Take-OutputPart -Part 0 | Take-OutputPart -Part 1 -Delimiter "/" return "Heroku $herokuVersion" } @@ -201,12 +201,12 @@ function Get-JqVersion { } function Get-AzureCliVersion { - $azcliVersion = sudo az -v | Select-String "azure-cli" | Take-OutputPart -Part -1 + $azcliVersion = az -v | Select-String "azure-cli" | Take-OutputPart -Part -1 return "Azure CLI (azure-cli) $azcliVersion" } function Get-AzureDevopsVersion { - $azdevopsVersion = sudo az -v | Select-String "azure-devops" | Take-OutputPart -Part -1 + $azdevopsVersion = az -v | Select-String "azure-devops" | Take-OutputPart -Part -1 return "Azure CLI (azure-devops) $azdevopsVersion" } @@ -238,7 +238,7 @@ function Get-GitHubCliVersion { } function Get-NetlifyCliVersion { - $netlifyVersion = sudo netlify --version | Take-OutputPart -Part 0 | Take-OutputPart -Part 1 -Delimiter "/" + $netlifyVersion = netlify --version | Take-OutputPart -Part 0 | Take-OutputPart -Part 1 -Delimiter "/" return "Netlify CLI $netlifyVersion" } From 08f157956fcecdb4618959b4f52cb4d7ff7bdfca Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Mon, 5 Oct 2020 12:04:29 +0300 Subject: [PATCH 30/61] Move list of pipx packages into toolset --- .../linux/scripts/installers/pipx-packages.sh | 31 +++++++++---------- images/linux/toolsets/toolset-1804.json | 6 +++- images/linux/toolsets/toolset-2004.json | 6 +++- images/linux/ubuntu1804.json | 3 ++ images/linux/ubuntu2004.json | 3 ++ 5 files changed, 30 insertions(+), 19 deletions(-) diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh index 67931b59..825d1edc 100644 --- a/images/linux/scripts/installers/pipx-packages.sh +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -7,22 +7,19 @@ export PATH="$PATH:/opt/pipx_bin" -# Install yamlint -pipx install yamllint +toolset="$INSTALLER_SCRIPT_FOLDER/toolset.json" +pipx_packages=$(jq -r ".pipx[]" $toolset) -if ! command -v yamllint; then - echo "yamllint was not installed" +for package in $pipx_packages; do + echo "Install $package" + pipx install $package +done + +# Run tests to determine that the software installed as expected +echo "Testing to make sure that script performed as expected, and basic scenarios work" +for cmd in $pipx_packages; do + if ! command -v $cmd; then + echo "$cmd was not installed" exit 1 -fi - -echo "yamllint is successfully installed" - -# Install aws sam cli -pipx install aws-sam-cli --python /opt/hostedtoolcache/Python/3.7*/x64/bin/python3.7 - -if ! command -v sam; then - echo "aws sam cli was not installed" - exit 1 -fi - -echo "aws sam cli is successfully installed" \ No newline at end of file + fi +done diff --git a/images/linux/toolsets/toolset-1804.json b/images/linux/toolsets/toolset-1804.json index b14a6077..cd327dec 100644 --- a/images/linux/toolsets/toolset-1804.json +++ b/images/linux/toolsets/toolset-1804.json @@ -188,5 +188,9 @@ "node:12-alpine", "ubuntu:14.04" ] - } + }, + "pipx": [ + "yamllint", + "aws-sam-cli" + ] } diff --git a/images/linux/toolsets/toolset-2004.json b/images/linux/toolsets/toolset-2004.json index 62aad447..add68395 100644 --- a/images/linux/toolsets/toolset-2004.json +++ b/images/linux/toolsets/toolset-2004.json @@ -151,5 +151,9 @@ "node:12-alpine", "ubuntu:14.04" ] - } + }, + "pipx": [ + "yamllint", + "aws-sam-cli" + ] } diff --git a/images/linux/ubuntu1804.json b/images/linux/ubuntu1804.json index 49e1aa1c..daf40ce8 100644 --- a/images/linux/ubuntu1804.json +++ b/images/linux/ubuntu1804.json @@ -240,6 +240,9 @@ "scripts": [ "{{template_dir}}/scripts/installers/pipx-packages.sh" ], + "environment_vars": [ + "INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}" + ], "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" }, { diff --git a/images/linux/ubuntu2004.json b/images/linux/ubuntu2004.json index 0b1fdc8d..740fe097 100644 --- a/images/linux/ubuntu2004.json +++ b/images/linux/ubuntu2004.json @@ -242,6 +242,9 @@ "scripts": [ "{{template_dir}}/scripts/installers/pipx-packages.sh" ], + "environment_vars": [ + "INSTALLER_SCRIPT_FOLDER={{user `installer_script_folder`}}" + ], "execute_command": "sudo sh -c '{{ .Vars }} {{ .Path }}'" }, { From 958f252984ea7f3fb1c332f50c5b84e248b1a365 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Mon, 5 Oct 2020 13:31:53 +0300 Subject: [PATCH 31/61] Add check for python path --- images/linux/scripts/installers/pipx-packages.sh | 12 +++++++++--- images/linux/toolsets/toolset-1804.json | 10 ++++++++-- images/linux/toolsets/toolset-2004.json | 10 ++++++++-- 3 files changed, 25 insertions(+), 7 deletions(-) diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh index 825d1edc..6a5fe4df 100644 --- a/images/linux/scripts/installers/pipx-packages.sh +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -8,11 +8,17 @@ export PATH="$PATH:/opt/pipx_bin" toolset="$INSTALLER_SCRIPT_FOLDER/toolset.json" -pipx_packages=$(jq -r ".pipx[]" $toolset) +pipx_packages=$(jq ".pipx[] .package" $toolset) for package in $pipx_packages; do - echo "Install $package" - pipx install $package + python_path=$(jq ".pipx[] | select(.package == $package) .python" $toolset) + if [ "$python_path" = "default" ]; then + echo "Install $package into default python" + pipx install $package + else + echo "Install $package into python $python_path" + pipx install $package --python $python_path + fi done # Run tests to determine that the software installed as expected diff --git a/images/linux/toolsets/toolset-1804.json b/images/linux/toolsets/toolset-1804.json index cd327dec..f466f9f0 100644 --- a/images/linux/toolsets/toolset-1804.json +++ b/images/linux/toolsets/toolset-1804.json @@ -190,7 +190,13 @@ ] }, "pipx": [ - "yamllint", - "aws-sam-cli" + { + "package": "yamllint", + "python": "default" + }, + { + "package": "aws-sam-cli", + "python": "/opt/hostedtoolcache/Python/3.7*/x64/bin/python3.7" + } ] } diff --git a/images/linux/toolsets/toolset-2004.json b/images/linux/toolsets/toolset-2004.json index add68395..6bf5ece7 100644 --- a/images/linux/toolsets/toolset-2004.json +++ b/images/linux/toolsets/toolset-2004.json @@ -153,7 +153,13 @@ ] }, "pipx": [ - "yamllint", - "aws-sam-cli" + { + "package": "yamllint", + "python": "default" + }, + { + "package": "aws-sam-cli", + "python": "/opt/hostedtoolcache/Python/3.7*/x64/bin/python3.7" + } ] } From d26db64941d48a51d7d740443dc2f24c3f33d148 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Mon, 5 Oct 2020 13:41:50 +0300 Subject: [PATCH 32/61] Fix --- images/linux/scripts/installers/pipx-packages.sh | 8 +++----- images/linux/toolsets/toolset-1804.json | 6 ++++-- images/linux/toolsets/toolset-2004.json | 6 ++++-- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh index 6a5fe4df..5f908b9f 100644 --- a/images/linux/scripts/installers/pipx-packages.sh +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -19,13 +19,11 @@ for package in $pipx_packages; do echo "Install $package into python $python_path" pipx install $package --python $python_path fi -done -# Run tests to determine that the software installed as expected -echo "Testing to make sure that script performed as expected, and basic scenarios work" -for cmd in $pipx_packages; do + # Run tests to determine that the software installed as expected + cmd=$(jq ".pipx[] | select(.package == $package) .cmd" $toolset) if ! command -v $cmd; then - echo "$cmd was not installed" + echo "$package was not installed" exit 1 fi done diff --git a/images/linux/toolsets/toolset-1804.json b/images/linux/toolsets/toolset-1804.json index f466f9f0..10b5fb75 100644 --- a/images/linux/toolsets/toolset-1804.json +++ b/images/linux/toolsets/toolset-1804.json @@ -192,11 +192,13 @@ "pipx": [ { "package": "yamllint", - "python": "default" + "python": "default", + "cmd": "yamllint" }, { "package": "aws-sam-cli", - "python": "/opt/hostedtoolcache/Python/3.7*/x64/bin/python3.7" + "python": "/opt/hostedtoolcache/Python/3.7*/x64/bin/python3.7", + "cmd": "sam" } ] } diff --git a/images/linux/toolsets/toolset-2004.json b/images/linux/toolsets/toolset-2004.json index 6bf5ece7..00f888c6 100644 --- a/images/linux/toolsets/toolset-2004.json +++ b/images/linux/toolsets/toolset-2004.json @@ -155,11 +155,13 @@ "pipx": [ { "package": "yamllint", - "python": "default" + "python": "default", + "cmd": "yamllint" }, { "package": "aws-sam-cli", - "python": "/opt/hostedtoolcache/Python/3.7*/x64/bin/python3.7" + "python": "/opt/hostedtoolcache/Python/3.7*/x64/bin/python3.7", + "cmd": "sam" } ] } From 8750bf40117e29e0f717cf6439f0f7bb3d6255e4 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Mon, 5 Oct 2020 15:01:46 +0300 Subject: [PATCH 33/61] Rework pipx toolset --- images/linux/scripts/installers/pipx-packages.sh | 13 +++++++------ images/linux/toolsets/toolset-1804.json | 3 +-- images/linux/toolsets/toolset-2004.json | 3 +-- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh index 5f908b9f..0743b89b 100644 --- a/images/linux/scripts/installers/pipx-packages.sh +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -11,17 +11,18 @@ toolset="$INSTALLER_SCRIPT_FOLDER/toolset.json" pipx_packages=$(jq ".pipx[] .package" $toolset) for package in $pipx_packages; do - python_path=$(jq ".pipx[] | select(.package == $package) .python" $toolset) - if [ "$python_path" = "default" ]; then - echo "Install $package into default python" - pipx install $package - else + python_version=$(jq -r ".pipx[] | select(.package == $package) .python" $toolset) + if [ "$python_version" != "null" ]; then + python_path="/opt/hostedtoolcache/Python/$python_version*/x64/bin/python$python_version" echo "Install $package into python $python_path" pipx install $package --python $python_path + else + echo "Install $package into default python" + pipx install $package fi # Run tests to determine that the software installed as expected - cmd=$(jq ".pipx[] | select(.package == $package) .cmd" $toolset) + cmd=$(jq -r ".pipx[] | select(.package == $package) .cmd" $toolset) if ! command -v $cmd; then echo "$package was not installed" exit 1 diff --git a/images/linux/toolsets/toolset-1804.json b/images/linux/toolsets/toolset-1804.json index 10b5fb75..94abdafb 100644 --- a/images/linux/toolsets/toolset-1804.json +++ b/images/linux/toolsets/toolset-1804.json @@ -192,12 +192,11 @@ "pipx": [ { "package": "yamllint", - "python": "default", "cmd": "yamllint" }, { "package": "aws-sam-cli", - "python": "/opt/hostedtoolcache/Python/3.7*/x64/bin/python3.7", + "python": "3.7", "cmd": "sam" } ] diff --git a/images/linux/toolsets/toolset-2004.json b/images/linux/toolsets/toolset-2004.json index 00f888c6..73f76c64 100644 --- a/images/linux/toolsets/toolset-2004.json +++ b/images/linux/toolsets/toolset-2004.json @@ -155,12 +155,11 @@ "pipx": [ { "package": "yamllint", - "python": "default", "cmd": "yamllint" }, { "package": "aws-sam-cli", - "python": "/opt/hostedtoolcache/Python/3.7*/x64/bin/python3.7", + "python": "3.7", "cmd": "sam" } ] From 84b3837f88117dfb563a90a0c55ff5663c4f6f9c Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Mon, 5 Oct 2020 17:21:27 +0300 Subject: [PATCH 34/61] Install aws sam cli to default python --- images/linux/toolsets/toolset-1804.json | 1 - images/linux/toolsets/toolset-2004.json | 1 - 2 files changed, 2 deletions(-) diff --git a/images/linux/toolsets/toolset-1804.json b/images/linux/toolsets/toolset-1804.json index 94abdafb..e0441944 100644 --- a/images/linux/toolsets/toolset-1804.json +++ b/images/linux/toolsets/toolset-1804.json @@ -196,7 +196,6 @@ }, { "package": "aws-sam-cli", - "python": "3.7", "cmd": "sam" } ] diff --git a/images/linux/toolsets/toolset-2004.json b/images/linux/toolsets/toolset-2004.json index 73f76c64..f0cde0ec 100644 --- a/images/linux/toolsets/toolset-2004.json +++ b/images/linux/toolsets/toolset-2004.json @@ -159,7 +159,6 @@ }, { "package": "aws-sam-cli", - "python": "3.7", "cmd": "sam" } ] From c66c1b90fd802e457985465825886d0c81fbfc48 Mon Sep 17 00:00:00 2001 From: Sam Date: Mon, 5 Oct 2020 22:31:26 +0200 Subject: [PATCH 35/61] Update gh homebrew formula name (#1735) --- images/macos/provision/core/commonutils.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/images/macos/provision/core/commonutils.sh b/images/macos/provision/core/commonutils.sh index 9b32d5c2..5a98f004 100644 --- a/images/macos/provision/core/commonutils.sh +++ b/images/macos/provision/core/commonutils.sh @@ -19,7 +19,7 @@ binst_common_utils=( helm aliyun-cli bazelisk - github/gh/gh + gh p7zip ant yamllint From 3024e8ebe2db9bb0963964b7d635b4cf34a17234 Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Tue, 6 Oct 2020 09:21:36 +0300 Subject: [PATCH 36/61] Fix jq parsing --- images/linux/scripts/installers/pipx-packages.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh index 0743b89b..697d01ee 100644 --- a/images/linux/scripts/installers/pipx-packages.sh +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -8,7 +8,7 @@ export PATH="$PATH:/opt/pipx_bin" toolset="$INSTALLER_SCRIPT_FOLDER/toolset.json" -pipx_packages=$(jq ".pipx[] .package" $toolset) +pipx_packages=$(jq -r ".pipx[] .package" $toolset) for package in $pipx_packages; do python_version=$(jq -r ".pipx[] | select(.package == $package) .python" $toolset) From 6b1e7f5cdb7b392cca46f53a7d2d2deaeeff999b Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Tue, 6 Oct 2020 09:30:49 +0300 Subject: [PATCH 37/61] Fix Ubuntu 16 doc --- .../SoftwareReport/SoftwareReport.Generator.ps1 | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 index 1bb44d54..f0e79735 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 @@ -49,7 +49,8 @@ $markdown += New-MDList -Style Unordered -Lines @( ) $markdown += New-MDHeader "Package Management" -Level 3 -$markdown += New-MDList -Style Unordered -Lines @( + +$packageManagementList = @( (Get-HomebrewVersion), (Get-GemVersion), (Get-MinicondaVersion), @@ -62,6 +63,14 @@ $markdown += New-MDList -Style Unordered -Lines @( (Get-VcpkgVersion) ) +if (-not (Test-IsUbuntu16)) { + $packageManagementList += @( + (Get-PipxVersion) + ) +} + +$markdown += New-MDList -Style Unordered -Lines ($packageManagementList | Sort-Object) + $markdown += New-MDHeader "Project Management" -Level 3 $markdown += New-MDList -Style Unordered -Lines @( (Get-AntVersion), From 1ce450def9dbfa548344e55a2c90e41ead7c7d88 Mon Sep 17 00:00:00 2001 From: Maxim Lobanov Date: Tue, 6 Oct 2020 11:09:20 +0300 Subject: [PATCH 38/61] Remove Xcode 12 beta --- images/macos/provision/core/xcode-tools.sh | 19 +++---------------- images/macos/tests/Xcode.Tests.ps1 | 8 ++++---- images/macos/toolsets/toolset-10.15.json | 2 +- images/macos/toolsets/toolset-11.0.json | 2 +- 4 files changed, 9 insertions(+), 22 deletions(-) diff --git a/images/macos/provision/core/xcode-tools.sh b/images/macos/provision/core/xcode-tools.sh index ef9bf648..643dc293 100755 --- a/images/macos/provision/core/xcode-tools.sh +++ b/images/macos/provision/core/xcode-tools.sh @@ -35,13 +35,7 @@ do echo "Extracting Xcode.app ($VERSION_TO_INSTALL) to ${WORK_DIR} ..." extractXcodeXip $WORK_DIR "$VERSION_TO_INSTALL" - # Remove "beta" postfix from version - if [[ $XCODE_VERSION == "12_beta" ]] && is_Catalina ; then - # trick to install Xcode 12 GM and Xcode 12 beta 6 side by side - XCODE_VERSION="12_beta" - else - XCODE_VERSION=$(echo $XCODE_VERSION | cut -d"_" -f 1) - fi + XCODE_VERSION=$(echo $XCODE_VERSION | cut -d"_" -f 1) echo "Checking if unpacked Xcode ${XCODE_VERSION} is valid" validateXcodeIntegrity "$WORK_DIR" @@ -55,9 +49,7 @@ do # Creating a symlink for all Xcode 10* and Xcode 9.3, 9.4 to stay backwards compatible with consumers of the Xcode beta version createBetaSymlink $XCODE_VERSION - if [ ! $(echo $XCODE_VERSION | grep "beta") ]; then - createXamarinProvisionatorSymlink "$XCODE_VERSION" - fi + createXamarinProvisionatorSymlink "$XCODE_VERSION" find $WORK_DIR -mindepth 1 -delete done @@ -74,12 +66,7 @@ do continue fi - if [[ $XCODE_VERSION == "12_beta" ]] && is_Catalina ; then - # trick to install Xcode 12 GM and Xcode 12 beta 6 side by side - XCODE_VERSION="12_beta" - else - XCODE_VERSION=$(echo $XCODE_VERSION | cut -d"_" -f 1) - fi + XCODE_VERSION=$(echo $XCODE_VERSION | cut -d"_" -f 1) echo "Running 'runFirstLaunch' for Xcode ${XCODE_VERSION}..." runFirstLaunch $XCODE_VERSION diff --git a/images/macos/tests/Xcode.Tests.ps1 b/images/macos/tests/Xcode.Tests.ps1 index ff8d5e93..f8e7ccfe 100644 --- a/images/macos/tests/Xcode.Tests.ps1 +++ b/images/macos/tests/Xcode.Tests.ps1 @@ -40,7 +40,7 @@ Describe "Xcode" { It "Xcode has correct beta symlink" -TestCases $testCases { param ( [string] $XcodeVersion ) - $xcodesWithBetaSymlink = @("12", "12_beta", "9.3", "9.4") + $xcodesWithBetaSymlink = @("12", "9.3", "9.4") $shouldBetaSymlinkExists = $XcodeVersion.StartsWith("10") -or $XcodeVersion.StartsWith("11") -or ($XcodeVersion -in $xcodesWithBetaSymlink) $betaSymlinkPath = Get-XcodeRootPath -Version "${XcodeVersion}_beta" @@ -76,7 +76,7 @@ Describe "Xcode" { $variableName = "XCODE_${MajorXcodeVersion}_DEVELOPER_DIR" $actualPath = Get-EnvironmentVariable $variableName $expectedPath = Join-Path (Get-XcodeRootPath -Version $ExpectedVersion) "Contents/Developer" - + $actualPath | Should -Exist $actualPath | Should -Be $expectedPath } @@ -86,13 +86,13 @@ Describe "Xcode" { Describe "Xcode simulators" { $XCODE_VERSIONS | Where-Object { Test-XcodeStableVersion $_ } | ForEach-Object { Switch-Xcode -Version $_ - + Context "$_" { It "No duplicates in devices" { [array]$devicesList = @(Get-XcodeDevicesList | Where-Object { $_ }) Validate-ArrayWithoutDuplicates $devicesList -Because "Found duplicate device simulators" } - + It "No duplicates in pairs" { [array]$pairsList = @(Get-XcodePairsList | Where-Object { $_ }) Validate-ArrayWithoutDuplicates $pairsList -Because "Found duplicate pairs simulators" diff --git a/images/macos/toolsets/toolset-10.15.json b/images/macos/toolsets/toolset-10.15.json index f834385c..e5bef8d5 100644 --- a/images/macos/toolsets/toolset-10.15.json +++ b/images/macos/toolsets/toolset-10.15.json @@ -2,7 +2,7 @@ "xcode": { "default": "11.7", "versions": [ - "12.2_beta", "12", "12_beta", "11.7", "11.6", "11.5", "11.4.1", "11.4", "11.3.1", "11.2.1", "11.1", "11", "10.3" + "12.2_beta", "12", "11.7", "11.6", "11.5", "11.4.1", "11.4", "11.3.1", "11.2.1", "11.1", "11", "10.3" ] }, "xamarin": { diff --git a/images/macos/toolsets/toolset-11.0.json b/images/macos/toolsets/toolset-11.0.json index f4e9a57c..93ada0d7 100644 --- a/images/macos/toolsets/toolset-11.0.json +++ b/images/macos/toolsets/toolset-11.0.json @@ -2,7 +2,7 @@ "xcode": { "default": "11.7", "versions": [ - "12.2_beta", "12_beta", "11.7" + "12.2_beta", "11.7" ] }, "xamarin": { From f80d9cdc669cc741543b468fad41f45b109da026 Mon Sep 17 00:00:00 2001 From: Maxim Lobanov Date: Tue, 6 Oct 2020 11:11:36 +0300 Subject: [PATCH 39/61] reuse function --- images/macos/helpers/Xcode.Helpers.psm1 | 23 ++++++++--------------- images/macos/tests/Xcode.Tests.ps1 | 4 ++-- 2 files changed, 10 insertions(+), 17 deletions(-) diff --git a/images/macos/helpers/Xcode.Helpers.psm1 b/images/macos/helpers/Xcode.Helpers.psm1 index 8ea137e6..52a182d5 100644 --- a/images/macos/helpers/Xcode.Helpers.psm1 +++ b/images/macos/helpers/Xcode.Helpers.psm1 @@ -46,11 +46,17 @@ function Switch-Xcode { } function Test-XcodeStableRelease { - param( - [Parameter(Mandatory)] + param ( + [Parameter(ParameterSetName = 'Version')] + [string] $Version, + [Parameter(ParameterSetName = 'Path')] [string] $XcodeRootPath ) + if ($PSCmdlet.ParameterSetName -eq "Version") { + $XcodeRootPath = Get-XcodeRootPath $Version + } + $licenseInfoPlistPath = Join-Path $XcodeRootPath "Contents" "Resources" "LicenseInfo.plist" $releaseType = & defaults read $licenseInfoPlistPath "licenseType" return -not ($releaseType -match "beta") @@ -102,17 +108,4 @@ function Get-XcodePairsList { $result += "$watchName $phoneName" } return $result -} - -function Test-XcodeStableVersion { - param([Parameter(Mandatory)][string]$Version) - - if ($Version -match "beta") { - return $false - } - if ($Version -match "GM") { - return $false - } - - return $true } \ No newline at end of file diff --git a/images/macos/tests/Xcode.Tests.ps1 b/images/macos/tests/Xcode.Tests.ps1 index f8e7ccfe..dc03e400 100644 --- a/images/macos/tests/Xcode.Tests.ps1 +++ b/images/macos/tests/Xcode.Tests.ps1 @@ -56,7 +56,7 @@ Describe "Xcode" { } Context "XCODE_DEVELOPER_DIR" { - $stableXcodeVersions = $XCODE_VERSIONS | Where-Object { Test-XcodeStableVersion $_ } + $stableXcodeVersions = $XCODE_VERSIONS | Where-Object { Test-XcodeStableRelease -Version $_ } $majorXcodeVersions = $stableXcodeVersions | ForEach-Object { $_.Split(".")[0] } | Select-Object -Unique $testCases = $majorXcodeVersions | ForEach-Object { $majorXcodeVersion = $_ @@ -84,7 +84,7 @@ Describe "Xcode" { } Describe "Xcode simulators" { - $XCODE_VERSIONS | Where-Object { Test-XcodeStableVersion $_ } | ForEach-Object { + $XCODE_VERSIONS | Where-Object { Test-XcodeStableRelease -Version $_ } | ForEach-Object { Switch-Xcode -Version $_ Context "$_" { From 58cf3bb6a4d6942a7e1166cc3e3e448b8253306f Mon Sep 17 00:00:00 2001 From: Vladimir Safonkin Date: Tue, 6 Oct 2020 13:11:47 +0300 Subject: [PATCH 40/61] Minor fix --- .../linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 | 1 - images/linux/scripts/installers/pipx-packages.sh | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 index f0e79735..70e11101 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 @@ -59,7 +59,6 @@ $packageManagementList = @( (Get-YarnVersion), (Get-PipVersion), (Get-Pip3Version), - (Get-PipxVersion), (Get-VcpkgVersion) ) diff --git a/images/linux/scripts/installers/pipx-packages.sh b/images/linux/scripts/installers/pipx-packages.sh index 697d01ee..07e1427e 100644 --- a/images/linux/scripts/installers/pipx-packages.sh +++ b/images/linux/scripts/installers/pipx-packages.sh @@ -11,7 +11,7 @@ toolset="$INSTALLER_SCRIPT_FOLDER/toolset.json" pipx_packages=$(jq -r ".pipx[] .package" $toolset) for package in $pipx_packages; do - python_version=$(jq -r ".pipx[] | select(.package == $package) .python" $toolset) + python_version=$(jq -r ".pipx[] | select(.package == \"$package\") .python" $toolset) if [ "$python_version" != "null" ]; then python_path="/opt/hostedtoolcache/Python/$python_version*/x64/bin/python$python_version" echo "Install $package into python $python_path" @@ -22,7 +22,7 @@ for package in $pipx_packages; do fi # Run tests to determine that the software installed as expected - cmd=$(jq -r ".pipx[] | select(.package == $package) .cmd" $toolset) + cmd=$(jq -r ".pipx[] | select(.package == \"$package\") .cmd" $toolset) if ! command -v $cmd; then echo "$package was not installed" exit 1 From 75a1fd1897ff9b43211ed3181659a982fd561d52 Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Tue, 6 Oct 2020 13:56:12 +0300 Subject: [PATCH 41/61] Fix ghcup pattern --- images/macos/provision/core/haskell.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/images/macos/provision/core/haskell.sh b/images/macos/provision/core/haskell.sh index 33fa38db..36453f2b 100644 --- a/images/macos/provision/core/haskell.sh +++ b/images/macos/provision/core/haskell.sh @@ -4,7 +4,10 @@ curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh export PATH="$HOME/.ghcup/bin:$PATH" echo 'export PATH="$PATH:$HOME/.ghcup/bin"' >> "$HOME/.bashrc" -availableVersions=$(ghcup list | grep -v "prerelease" | grep "ghc " | awk '{print $3}') +# ghcup output looks like this "x ghc 8.8.3 base-4.13.0.0 hls-powered", need to take all the first versions only(8.8.3 in that case) and avoid pre-release ones +availableVersions=$(ghcup list | grep -v "prerelease" | grep "ghc " | grep -Eo ' ([0-9]*\.){2}[0-9]*' | tr -d ' ') + +# Install 3 latest major versions(For instance 8.6.5, 8.8.4, 8.10.2) minorMajorVersions=$(echo "$availableVersions" | cut -d"." -f 1,2 | uniq | tail -n3) for majorMinorVersion in $minorMajorVersions; do fullVersion=$(echo "$availableVersions" | grep "$majorMinorVersion." | tail -n1) From d6627e143a5a5b1530f9716cefa525aad9429352 Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Tue, 6 Oct 2020 14:30:00 +0300 Subject: [PATCH 42/61] change pattern --- images/macos/provision/core/haskell.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/images/macos/provision/core/haskell.sh b/images/macos/provision/core/haskell.sh index 36453f2b..89d8706c 100644 --- a/images/macos/provision/core/haskell.sh +++ b/images/macos/provision/core/haskell.sh @@ -5,7 +5,7 @@ export PATH="$HOME/.ghcup/bin:$PATH" echo 'export PATH="$PATH:$HOME/.ghcup/bin"' >> "$HOME/.bashrc" # ghcup output looks like this "x ghc 8.8.3 base-4.13.0.0 hls-powered", need to take all the first versions only(8.8.3 in that case) and avoid pre-release ones -availableVersions=$(ghcup list | grep -v "prerelease" | grep "ghc " | grep -Eo ' ([0-9]*\.){2}[0-9]*' | tr -d ' ') +availableVersions=$(ghcup list -t ghc -r | grep -v "prerelease" | awk '{print $2}') # Install 3 latest major versions(For instance 8.6.5, 8.8.4, 8.10.2) minorMajorVersions=$(echo "$availableVersions" | cut -d"." -f 1,2 | uniq | tail -n3) From 44f565e921258049b201af149ba6fc340cdc7759 Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev Date: Tue, 6 Oct 2020 14:32:37 +0300 Subject: [PATCH 43/61] fix comment --- images/macos/provision/core/haskell.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/images/macos/provision/core/haskell.sh b/images/macos/provision/core/haskell.sh index 89d8706c..1bc11d91 100644 --- a/images/macos/provision/core/haskell.sh +++ b/images/macos/provision/core/haskell.sh @@ -4,7 +4,7 @@ curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh export PATH="$HOME/.ghcup/bin:$PATH" echo 'export PATH="$PATH:$HOME/.ghcup/bin"' >> "$HOME/.bashrc" -# ghcup output looks like this "x ghc 8.8.3 base-4.13.0.0 hls-powered", need to take all the first versions only(8.8.3 in that case) and avoid pre-release ones +# ghcup output looks like this "ghc 8.6.4 base-4.12.0.0 hls-powered", need to take all the first versions only(8.6.4 in that case) and avoid pre-release ones availableVersions=$(ghcup list -t ghc -r | grep -v "prerelease" | awk '{print $2}') # Install 3 latest major versions(For instance 8.6.5, 8.8.4, 8.10.2) From 539aed4037dbecf26519e646b3608733daeb4e6d Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Tue, 6 Oct 2020 15:50:59 +0300 Subject: [PATCH 44/61] add python 3.9 --- images/linux/toolsets/toolset-1604.json | 3 ++- images/linux/toolsets/toolset-1804.json | 3 ++- images/linux/toolsets/toolset-2004.json | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/images/linux/toolsets/toolset-1604.json b/images/linux/toolsets/toolset-1604.json index 46aad66a..162e1264 100644 --- a/images/linux/toolsets/toolset-1604.json +++ b/images/linux/toolsets/toolset-1604.json @@ -11,7 +11,8 @@ "3.5.*", "3.6.*", "3.7.*", - "3.8.*" + "3.8.*", + "3.9.*" ] }, { diff --git a/images/linux/toolsets/toolset-1804.json b/images/linux/toolsets/toolset-1804.json index 2670b4cf..ecad1915 100644 --- a/images/linux/toolsets/toolset-1804.json +++ b/images/linux/toolsets/toolset-1804.json @@ -11,7 +11,8 @@ "3.5.*", "3.6.*", "3.7.*", - "3.8.*" + "3.8.*", + "3.9.*" ] }, { diff --git a/images/linux/toolsets/toolset-2004.json b/images/linux/toolsets/toolset-2004.json index 7c704263..f7fde89f 100644 --- a/images/linux/toolsets/toolset-2004.json +++ b/images/linux/toolsets/toolset-2004.json @@ -11,7 +11,8 @@ "3.5.*", "3.6.*", "3.7.*", - "3.8.*" + "3.8.*", + "3.9.*" ] }, { From 985dfec819133561b3b2db77bce363655b8edc8f Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Tue, 6 Oct 2020 15:58:54 +0300 Subject: [PATCH 45/61] add python 3.9.0 --- images/macos/toolsets/toolset-10.14.json | 3 ++- images/macos/toolsets/toolset-10.15.json | 3 ++- images/macos/toolsets/toolset-11.0.json | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/images/macos/toolsets/toolset-10.14.json b/images/macos/toolsets/toolset-10.14.json index e868f769..68e2f4c4 100644 --- a/images/macos/toolsets/toolset-10.14.json +++ b/images/macos/toolsets/toolset-10.14.json @@ -220,7 +220,8 @@ "3.5.*", "3.6.*", "3.7.*", - "3.8.*" + "3.8.*", + "3.9.*" ] }, { diff --git a/images/macos/toolsets/toolset-10.15.json b/images/macos/toolsets/toolset-10.15.json index f834385c..8cf6d453 100644 --- a/images/macos/toolsets/toolset-10.15.json +++ b/images/macos/toolsets/toolset-10.15.json @@ -129,7 +129,8 @@ "3.5.*", "3.6.*", "3.7.*", - "3.8.*" + "3.8.*", + "3.9.*" ] }, { diff --git a/images/macos/toolsets/toolset-11.0.json b/images/macos/toolsets/toolset-11.0.json index f4e9a57c..d5e14384 100644 --- a/images/macos/toolsets/toolset-11.0.json +++ b/images/macos/toolsets/toolset-11.0.json @@ -68,7 +68,8 @@ "platform" : "darwin", "versions": [ "3.7.*", - "3.8.*" + "3.8.*", + "3.9.*" ] }, { From e51422d95e75240a199c100ecc705e291049a6d5 Mon Sep 17 00:00:00 2001 From: Dmitry Shibanov Date: Wed, 7 Oct 2020 11:59:01 +0300 Subject: [PATCH 46/61] add import utils --- images/macos/provision/core/openssl.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/images/macos/provision/core/openssl.sh b/images/macos/provision/core/openssl.sh index 0638dccf..a1976e7f 100755 --- a/images/macos/provision/core/openssl.sh +++ b/images/macos/provision/core/openssl.sh @@ -1,4 +1,7 @@ #!/bin/sh + +source ~/utils/utils.sh + echo "Installing OpenSSL..." export PATH="/usr/local/bin:/usr/local/sbin:~/bin:$PATH" From bab7c0d07f6488df433abd7d8474cab9adebed4c Mon Sep 17 00:00:00 2001 From: Maxim Lobanov Date: Wed, 7 Oct 2020 12:19:32 +0300 Subject: [PATCH 47/61] Update Xcode.Tests.ps1 --- images/macos/tests/Xcode.Tests.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/images/macos/tests/Xcode.Tests.ps1 b/images/macos/tests/Xcode.Tests.ps1 index dc03e400..74bbee4a 100644 --- a/images/macos/tests/Xcode.Tests.ps1 +++ b/images/macos/tests/Xcode.Tests.ps1 @@ -56,7 +56,7 @@ Describe "Xcode" { } Context "XCODE_DEVELOPER_DIR" { - $stableXcodeVersions = $XCODE_VERSIONS | Where-Object { Test-XcodeStableRelease -Version $_ } + $stableXcodeVersions = $testCases | Where-Object { Test-XcodeStableRelease -Version $_ } $majorXcodeVersions = $stableXcodeVersions | ForEach-Object { $_.Split(".")[0] } | Select-Object -Unique $testCases = $majorXcodeVersions | ForEach-Object { $majorXcodeVersion = $_ From 7459f57aac13730a54734c8e8d7977979a0a456b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 7 Oct 2020 11:48:57 +0000 Subject: [PATCH 48/61] Updating readme file for macos-10.15 version 20201003.1 (#1737) Co-authored-by: no-reply@microsoft.com Co-authored-by: Actions service account --- images/macos/macos-10.15-Readme.md | 227 +++++++++++------------------ 1 file changed, 85 insertions(+), 142 deletions(-) diff --git a/images/macos/macos-10.15-Readme.md b/images/macos/macos-10.15-Readme.md index af4024fc..7a506d8b 100644 --- a/images/macos/macos-10.15-Readme.md +++ b/images/macos/macos-10.15-Readme.md @@ -1,7 +1,13 @@ +| Announcements | +|-| +| [Default Xcode will be changed to Xcode 12.0 on October, 20](https://github.com/actions/virtual-environments/issues/1712) | +| [Xcode 11.0, 11.1, 11.4.0 will be deprecated on October, 20](https://github.com/actions/virtual-environments/issues/1688) | +| [Remove Xcode 12 beta 6 from MacOS Catalina image in favor of Xcode 12.2 beta 1 on October 13](https://github.com/actions/virtual-environments/issues/1646) | +*** # macOS 10.15 info -- System Version: macOS 10.15.6 (19G2021) +- System Version: macOS 10.15.7 (19H2) - Kernel Version: Darwin 19.6.0 -- Image Version: 20200918.1 +- Image Version: 20201003.1 ## Installed Software ### Language and Runtime @@ -10,17 +16,17 @@ - gcc-9 (Homebrew GCC 9.3.0) 9.3.0 - available by `gcc-9` alias - GNU Fortran (Homebrew GCC 8.4.0_1) 8.4.0 - available by `gfortran-8` alias - GNU Fortran (Homebrew GCC 9.3.0) 9.3.0 - available by `gfortran-9` alias -- Node.js v12.18.3 +- R 4.0.2 +- Node.js v12.18.4 - NVM 0.35.3 -- NVM - Cached node versions: v6.17.1 v8.17.0 v10.22.1 v12.18.4 v13.14.0 v14.11.0 +- NVM - Cached node versions: v6.17.1 v8.17.0 v10.22.1 v12.18.4 v13.14.0 v14.13.0 - Python 2.7.17 - Python 3.8.5 - Ruby 2.6.6p146 - .NET SDK 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.602 2.1.603 2.1.604 2.1.607 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 2.1.808 2.1.809 2.1.810 3.0.100 3.0.101 3.0.102 3.0.103 3.1.100 3.1.101 3.1.200 3.1.201 3.1.300 3.1.301 3.1.302 3.1.401 3.1.402 -- R 4.0.2 - Go 1.15.2 -- PHP 7.4.10 -- julia 1.5.1 +- PHP 7.4.11 +- julia 1.5.2 ### Package Management - Vcpkg 2020.06.15 @@ -29,7 +35,7 @@ - Bundler version 2.1.4 - Carthage 0.36.0 - CocoaPods 1.9.3 -- Homebrew 2.5.1 +- Homebrew 2.5.2 - NPM 6.14.6 - Yarn 1.22.5 - NuGet 5.6.0.6489 @@ -40,7 +46,7 @@ ### Project Management - Apache Maven 3.6.3 - Gradle 6.6.1 -- Apache Ant(TM) 1.10.8 +- Apache Ant(TM) 1.10.9 ### Utilities - Curl 7.72.0 @@ -50,7 +56,7 @@ - Hub CLI: 2.14.2 - GNU Wget 1.20.3 - Subversion (SVN) 1.14.0 -- Packer 1.6.2 +- Packer 1.6.4 - OpenSSL 1.0.2t 10 Sep 2019 `(/usr/local/opt/openssl -> /usr/local/Cellar/openssl@1.0.2t/1.0.2t)` - jq 1.6 - gpg (GnuPG) 2.2.23 @@ -59,44 +65,44 @@ - aria2 1.35.0 - azcopy 10.6.0 - zstd 1.4.5 -- bazel 3.5.0 +- bazel 3.5.1 - bazelisk 1.6.1 -- helm v3.3.2+ge507725 -- virtualbox 6.1.14r140239 +- helm v3.3.4+ga61ce56 - mongo v4.4.0 - mongod v4.4.0 -- Vagrant 2.2.10 - 7-Zip 16.02 - Newman 5.2.0 +- virtualbox 6.1.14r140239 +- Vagrant 2.2.10 - GNU parallel 20200722 ### Tools -- Fastlane 2.160.0 -- Cmake 3.18.2 -- App Center CLI 2.7.0 -- Azure CLI 2.11.1 -- AWS CLI 2.0.48 -- AWS SAM CLI 1.2.0 +- Fastlane 2.162.0 +- Cmake 3.18.3 +- App Center CLI 2.7.1 +- Azure CLI 2.12.1 +- AWS CLI 2.0.54 +- AWS SAM CLI 1.4.0 - AWS Session Manager CLI 1.1.61.0 -- Aliyun CLI 3.0.58 -- GHCup v0.1.10 -- GHC 8.10.2 +- Aliyun CLI 3.0.59 +- GHCup v0.1.11 +- GHC 8.8.4 - Cabal 3.2.0.0 - Stack 2.3.3 ### Linters -- yamllint 1.24.2 -- SwiftLint 0.40.2 +- yamllint 1.25.0 +- SwiftLint 0.40.3 ### Browsers - Safari 14.0 (15610.1.28.1.9) - SafariDriver 14.0 (15610.1.28.1.9) -- Google Chrome 85.0.4183.102 +- Google Chrome 85.0.4183.121 - ChromeDriver 85.0.4183.87 -- Microsoft Edge 85.0.564.51 -- MSEdgeDriver 85.0.564.51 -- Mozilla Firefox 80.0.1 +- Microsoft Edge 85.0.564.68 +- MSEdgeDriver 85.0.564.68 +- Mozilla Firefox 81.0.1 - geckodriver 0.27.0 ### Java @@ -120,17 +126,17 @@ - 3.5.10 - 3.6.12 - 3.7.9 -- 3.8.5 +- 3.8.6 #### PyPy -- 2.7.13 [PyPy 7.3.1] -- 3.6.9 [PyPy 7.3.1] +- 2.7.13 [PyPy 7.3.2] +- 3.6.9 [PyPy 7.3.2] #### Node.js - 8.17.0 - 10.22.1 - 12.18.4 -- 14.11.0 +- 14.13.0 #### Go - 1.11.13 @@ -145,9 +151,9 @@ #### Packages - Bindgen 0.55.1 -- Cbindgen 0.14.4 +- Cbindgen 0.14.6 - Cargo-outdated v0.9.11 -- Cargo-audit 0.12.0 +- Cargo-audit 0.12.1 ### PowerShell Tools - PowerShell 7.0.3 @@ -155,13 +161,13 @@ #### PowerShell Modules | Module | Version | | ---------- | ------- | -| Az | 4.6.1 | +| Az | 4.7.0 | | MarkdownPS | 1.9 | | Pester | 5.0.4 | ### Xamarin #### Visual Studio for Mac -- 8.7.7.10 +- 8.7.8.4 #### Mono - 6.12.0.93 @@ -171,6 +177,7 @@ - 6.4.0.208 #### Xamarin.iOS +- 14.0.0.0 - 13.20.2.2 - 13.18.2.1 - 13.16.0.13 @@ -205,9 +212,9 @@ ### Xcode | Version | Build | Path | | -------------- | -------- | ------------------------------- | -| 12.2 | 12B5018i | /Applications/Xcode_12.2.app | -| 12.0 | 12A8189n | /Applications/Xcode_12_beta.app | +| 12.2 | 12B5025f | /Applications/Xcode_12.2.app | | 12.0 | 12A7209 | /Applications/Xcode_12.app | +| 12.0 | 12A8189n | /Applications/Xcode_12_beta.app | | 11.7 (default) | 11E801a | /Applications/Xcode_11.7.app | | 11.6 | 11E708 | /Applications/Xcode_11.6.app | | 11.5 | 11E608c | /Applications/Xcode_11.5.app | @@ -280,110 +287,46 @@ | DriverKit 20.0 | driverkit.macosx20.0 | 12.0, 12.2 | #### Installed Simulators -| OS | Xcode Version | Simulators | -| ----------- | -------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| iOS 12.4 | 10.3 | iPhone 5s
iPhone 6
iPhone 6 Plus
iPhone 6s
iPhone 6s Plus
iPhone 7
iPhone 7 Plus
iPhone 8
iPhone 8 Plus
iPhone SE
iPhone X
iPhone XR
iPhone Xs
iPhone Xs Max
iPad (5th generation)
iPad (6th generation)
iPad Air
iPad Air (3rd generation)
iPad Air 2
iPad Pro (10.5-inch)
iPad Pro (11-inch)
iPad Pro (12.9-inch)
iPad Pro (12.9-inch) (2nd generation)
iPad Pro (12.9-inch) (3rd generation)
iPad Pro (9.7-inch) | -| iOS 13.0 | 11.0 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPad Air (3rd generation)
iPad Pro (11-inch)
iPad Pro (12.9-inch) (3rd generation)
iPad Pro (9.7-inch) | -| iOS 13.1 | 11.1 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPad Air (3rd generation)
iPad Pro (11-inch)
iPad Pro (12.9-inch) (3rd generation)
iPad Pro (9.7-inch) | -| iOS 13.2 | 11.2.1 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPad Air (3rd generation)
iPad Pro (11-inch)
iPad Pro (12.9-inch) (3rd generation)
iPad Pro (9.7-inch) | -| iOS 13.3 | 11.3.1 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPad Air (3rd generation)
iPad Pro (11-inch)
iPad Pro (12.9-inch) (3rd generation)
iPad Pro (9.7-inch) | -| iOS 13.4 | 11.4
11.4.1 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | -| iOS 13.5 | 11.5 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | -| iOS 13.6 | 11.6 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | -| iOS 13.7 | 11.7 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | -| iOS 14.0 | 12.0
12.0 | iPod touch (7th generation)
iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad (8th generation)
iPad Air (3rd generation)
iPad Air (4th generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | -| tvOS 12.4 | 10.3 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | -| tvOS 13.0 | 11.0
11.1 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | -| tvOS 13.2 | 11.2.1 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | -| tvOS 13.3 | 11.3.1 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | -| tvOS 13.4 | 11.4
11.4.1
11.5
11.6
11.7 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | -| tvOS 14.0 | 12.0
12.0 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | -| watchOS 5.3 | 10.3 | Apple Watch Series 2 - 38mm
Apple Watch Series 2 - 42mm
Apple Watch Series 3 - 38mm
Apple Watch Series 3 - 42mm
Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm | -| watchOS 6.0 | 11.0
11.1 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm | -| watchOS 6.1 | 11.2.1
11.3.1 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm | -| watchOS 6.2 | 11.4
11.4.1
11.5
11.6
11.7 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm | -| watchOS 7.0 | 12.0
12.0 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm
Apple Watch Series 6 - 40mm
Apple Watch Series 6 - 44mm | +| OS | Xcode Version | Simulators | +| ----------- | -------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| iOS 12.4 | 10.3 | iPhone 5s
iPhone 6
iPhone 6 Plus
iPhone 6s
iPhone 6s Plus
iPhone 7
iPhone 7 Plus
iPhone 8
iPhone 8 Plus
iPhone SE
iPhone X
iPhone XR
iPhone Xs
iPhone Xs Max
iPad (5th generation)
iPad (6th generation)
iPad Air
iPad Air (3rd generation)
iPad Air 2
iPad Pro (10.5-inch)
iPad Pro (11-inch)
iPad Pro (11-inch) (1st generation)
iPad Pro (12.9-inch)
iPad Pro (12.9-inch) (2nd generation)
iPad Pro (12.9-inch) (3rd generation)
iPad Pro (9.7-inch) | +| iOS 13.0 | 11.0 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPad Air (3rd generation)
iPad Pro (11-inch)
iPad Pro (11-inch) (1st generation)
iPad Pro (12.9-inch) (3rd generation)
iPad Pro (9.7-inch) | +| iOS 13.1 | 11.1 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPad Air (3rd generation)
iPad Pro (11-inch)
iPad Pro (11-inch) (1st generation)
iPad Pro (12.9-inch) (3rd generation)
iPad Pro (9.7-inch) | +| iOS 13.2 | 11.2.1 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch)
iPad Pro (11-inch) (1st generation)
iPad Pro (12.9-inch) (3rd generation)
iPad Pro (9.7-inch) | +| iOS 13.3 | 11.3.1 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch)
iPad Pro (11-inch) (1st generation)
iPad Pro (12.9-inch) (3rd generation)
iPad Pro (9.7-inch) | +| iOS 13.4 | 11.4
11.4.1 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | +| iOS 13.5 | 11.5 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | +| iOS 13.6 | 11.6 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | +| iOS 13.7 | 11.7 | iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad Air (3rd generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | +| iOS 14.0 | 12.0
12.0 | iPod touch (7th generation)
iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad (8th generation)
iPad Air (3rd generation)
iPad Air (4th generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | +| iOS 14.2 | 12.2 | iPod touch (7th generation)
iPhone 11
iPhone 11 Pro
iPhone 11 Pro Max
iPhone 8
iPhone 8 Plus
iPhone SE (2nd generation)
iPad (7th generation)
iPad (8th generation)
iPad Air (3rd generation)
iPad Air (4th generation)
iPad Pro (11-inch) (2nd generation)
iPad Pro (12.9-inch) (4th generation)
iPad Pro (9.7-inch) | +| tvOS 12.4 | 10.3 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | +| tvOS 13.0 | 11.0
11.1 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | +| tvOS 13.2 | 11.2.1 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | +| tvOS 13.3 | 11.3.1 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | +| tvOS 13.4 | 11.4
11.4.1
11.5
11.6
11.7 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | +| tvOS 14.0 | 12.0
12.0 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | +| tvOS 14.2 | 12.2 | Apple TV
Apple TV 4K
Apple TV 4K (at 1080p) | +| watchOS 5.3 | 10.3 | Apple Watch Series 2 - 38mm
Apple Watch Series 2 - 42mm
Apple Watch Series 3 - 38mm
Apple Watch Series 3 - 42mm
Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm | +| watchOS 6.0 | 11.0
11.1 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm | +| watchOS 6.1 | 11.2.1
11.3.1 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm | +| watchOS 6.2 | 11.4
11.4.1
11.5
11.6
11.7 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm | +| watchOS 7.0 | 12.0
12.0 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm
Apple Watch Series 6 - 40mm
Apple Watch Series 6 - 44mm | +| watchOS 7.1 | 12.2 | Apple Watch Series 4 - 40mm
Apple Watch Series 4 - 44mm
Apple Watch Series 5 - 40mm
Apple Watch Series 5 - 44mm
Apple Watch Series 6 - 40mm
Apple Watch Series 6 - 44mm | ### Android -#### Android SDK Tools -| Package Name | Description | -| ------------ | ---------------------------------- | -| tools | Android SDK Tools, Revision 26.1.1 | - -#### Android SDK Platform-Tools -| Package Name | Description | -| -------------- | ------------------------------------------- | -| platform-tools | Android SDK Platform-Tools, Revision 30.0.4 | - -#### Android SDK Platforms -| Package Name | Description | -| ------------ | ----------------------------------- | -| android-24 | Android SDK Platform 24, Revision 2 | -| android-25 | Android SDK Platform 25, Revision 3 | -| android-26 | Android SDK Platform 26, Revision 2 | -| android-27 | Android SDK Platform 27, Revision 3 | -| android-28 | Android SDK Platform 28, Revision 6 | -| android-29 | Android SDK Platform 29, Revision 5 | -| android-30 | Android SDK Platform 30, Revision 3 | - -#### Android SDK Build-Tools -| Package Name | Description | -| ------------------ | ---------------------------------------- | -| build-tools-24.0.0 | Android SDK Build-Tools, Revision 24.0.0 | -| build-tools-24.0.1 | Android SDK Build-Tools, Revision 24.0.1 | -| build-tools-24.0.2 | Android SDK Build-Tools, Revision 24.0.2 | -| build-tools-24.0.3 | Android SDK Build-Tools, Revision 24.0.3 | -| build-tools-25.0.0 | Android SDK Build-Tools, Revision 25.0.0 | -| build-tools-25.0.1 | Android SDK Build-Tools, Revision 25.0.1 | -| build-tools-25.0.2 | Android SDK Build-Tools, Revision 25.0.2 | -| build-tools-25.0.3 | Android SDK Build-Tools, Revision 25.0.3 | -| build-tools-26.0.0 | Android SDK Build-Tools, Revision 26.0.0 | -| build-tools-26.0.1 | Android SDK Build-Tools, Revision 26.0.1 | -| build-tools-26.0.2 | Android SDK Build-Tools, Revision 26.0.2 | -| build-tools-26.0.3 | Android SDK Build-Tools, Revision 26.0.3 | -| build-tools-27.0.0 | Android SDK Build-Tools, Revision 27.0.0 | -| build-tools-27.0.1 | Android SDK Build-Tools, Revision 27.0.1 | -| build-tools-27.0.2 | Android SDK Build-Tools, Revision 27.0.2 | -| build-tools-27.0.3 | Android SDK Build-Tools, Revision 27.0.3 | -| build-tools-28.0.0 | Android SDK Build-Tools, Revision 28.0.0 | -| build-tools-28.0.1 | Android SDK Build-Tools, Revision 28.0.1 | -| build-tools-28.0.2 | Android SDK Build-Tools, Revision 28.0.2 | -| build-tools-28.0.3 | Android SDK Build-Tools, Revision 28.0.3 | -| build-tools-29.0.0 | Android SDK Build-Tools, Revision 29.0.0 | -| build-tools-29.0.1 | Android SDK Build-Tools, Revision 29.0.1 | -| build-tools-29.0.2 | Android SDK Build-Tools, Revision 29.0.2 | -| build-tools-29.0.3 | Android SDK Build-Tools, Revision 29.0.3 | -| build-tools-30.0.0 | Android SDK Build-Tools, Revision 30.0.0 | -| build-tools-30.0.1 | Android SDK Build-Tools, Revision 30.0.1 | -| build-tools-30.0.2 | Android SDK Build-Tools, Revision 30.0.2 | - -#### Android NDKs -| Version | Path | -| ------------ | ------------------------------------------ | -| 15.2.4203891 | $HOME/Library/Android/sdk/android-ndk-r15c | -| 18.1.5063045 | $HOME/Library/Android/sdk/ndk/18.1.5063045 | -| 21.3.6528147 | $HOME/Library/Android/sdk/ndk-bundle | - -#### Android Utils -| Package Name | Version | -| ---------------- | ----------- | -| cmake | 3.6.4111459 | -| Android Emulator | 30.0.26 | - -#### Android Google APIs -| Package Name | Description | -| --------------------------- | ----------------------- | -| addon-google_apis-google-21 | Google APIs, Revision 1 | -| addon-google_apis-google-22 | Google APIs, Revision 1 | -| addon-google_apis-google-23 | Google APIs, Revision 1 | -| addon-google_apis-google-24 | Google APIs, Revision 1 | - -#### Extra Packages -| Package Name | Version | -| ----------------------------------------------- | ------- | -| Android Support Repository | 47.0.0 | -| Google Play services | 49 | -| Google Repository | 58 | -| Intel x86 Emulator Accelerator (HAXM installer) | 7.5.1 | +| Package Name | Version | +| -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Android SDK Tools | 26.1.1 | +| Android SDK Platforms | android-30 (rev 3)
android-29 (rev 5)
android-28 (rev 6)
android-27 (rev 3)
android-26 (rev 2)
android-25 (rev 3)
android-24 (rev 2) | +| Android SDK Build-tools | 30.0.0 30.0.1 30.0.2
29.0.0 29.0.1 29.0.2 29.0.3
28.0.0 28.0.1 28.0.2 28.0.3
27.0.0 27.0.1 27.0.2 27.0.3
26.0.0 26.0.1 26.0.2 26.0.3
25.0.0 25.0.1 25.0.2 25.0.3
24.0.0 24.0.1 24.0.2 24.0.3 | +| Android SDK Platform-Tools | 30.0.4 | +| Google APIs | addon-google_apis-google-21
addon-google_apis-google-22
addon-google_apis-google-23
addon-google_apis-google-24 | +| Android Support Repository | 47.0.0 | +| Google Play services | 49 | +| Google Repository | 58 | +| SDK Patch Applier v4 | 1 | +| CMake | 3.6.4111459 | +| NDK | 15.2.4203891
18.1.5063045
21.3.6528147 | From 17d233cac55acb75f4df25a77070e5866ee6b635 Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov <47745270+al-cheb@users.noreply.github.com> Date: Wed, 7 Oct 2020 17:14:00 +0300 Subject: [PATCH 49/61] [macOS] Set $ErrorActionPreference = "Stop" in SoftwareReport.Generator.ps1 (#1692) * $ErrorActionPreference = "Stop" * revert changes for ubuntu --- images/macos/software-report/SoftwareReport.Generator.ps1 | 2 ++ 1 file changed, 2 insertions(+) diff --git a/images/macos/software-report/SoftwareReport.Generator.ps1 b/images/macos/software-report/SoftwareReport.Generator.ps1 index 0ef53471..aaf4f644 100644 --- a/images/macos/software-report/SoftwareReport.Generator.ps1 +++ b/images/macos/software-report/SoftwareReport.Generator.ps1 @@ -4,6 +4,8 @@ param ( $ImageName ) +$ErrorActionPreference = "Stop" + Import-Module MarkdownPS Import-Module "$PSScriptRoot/SoftwareReport.Common.psm1" -DisableNameChecking Import-Module "$PSScriptRoot/SoftwareReport.Xcode.psm1" -DisableNameChecking From 020349c8e6645d8083207670c6f2582bfc8b7619 Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov Date: Wed, 7 Oct 2020 18:26:40 +0300 Subject: [PATCH 50/61] replace 2>&1 to Get-CommandResult --- .../SoftwareReport/SoftwareReport.Common.psm1 | 16 ++++++++++------ .../SoftwareReport.Generator.ps1 | 2 ++ .../SoftwareReport/SoftwareReport.Tools.psm1 | 18 ++++++++++++------ 3 files changed, 24 insertions(+), 12 deletions(-) diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Common.psm1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Common.psm1 index 9d910ddc..46fd0d24 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Common.psm1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Common.psm1 @@ -5,14 +5,16 @@ function Get-OSName { } function Get-CPPVersions { - $cppVersions = apt list --installed 2>&1 | Where-Object { $_ -match "g\+\+-\d+"} | ForEach-Object { + $result = Get-CommandResult "apt list --installed" -Multiline + $cppVersions = $result.Output | Where-Object { $_ -match "g\+\+-\d+"} | ForEach-Object { & $_.Split("/")[0] --version | Select-Object -First 1 | Take-OutputPart -Part 3 } | Sort-Object {[Version]$_} return "GNU C++ " + ($cppVersions -Join ", ") } function Get-FortranVersions { - $fortranVersions = apt list --installed 2>&1 | Where-Object { $_ -match "^gfortran-\d+"} | ForEach-Object { + $result = Get-CommandResult "apt list --installed" -Multiline + $fortranVersions = $result.Output | Where-Object { $_ -match "^gfortran-\d+"} | ForEach-Object { $_ -match "now (?\d+\.\d+\.\d+)-" | Out-Null $Matches.version } | Sort-Object {[Version]$_} @@ -21,7 +23,8 @@ function Get-FortranVersions { function Get-ClangVersions { $clangVersions = @() - $clangVersions = apt list --installed 2>&1 | Where-Object { $_ -match "^clang-\d+"} | ForEach-Object { + $result = Get-CommandResult "apt list --installed" -Multiline + $clangVersions = $result.Output | Where-Object { $_ -match "^clang-\d+"} | ForEach-Object { $clangCommand = ($_ -Split "/")[0] Invoke-Expression "$clangCommand --version" | Where-Object { $_ -match "clang version" } | ForEach-Object { $_ -match "clang version (?\d+\.\d+\.\d+)-" | Out-Null @@ -153,14 +156,15 @@ function Get-MavenVersion { return "Maven $mavenVersion" } function Get-SbtVersion { - $result = sbt -version 2>&1 | Out-String - $result -match "sbt script version: (?\d+\.\d+\.\d+)" | Out-Null + $result = Get-CommandResult "sbt -version" + $result.Output -match "sbt script version: (?\d+\.\d+\.\d+)" | Out-Null $sbtVersion = $Matches.version return "Sbt $sbtVersion" } function Get-PHPVersions { - return $(apt list --installed 2>&1) | Where-Object { $_ -match "^php\d+\.\d+/"} | ForEach-Object { + $result = Get-CommandResult "apt list --installed" -Multiline + return $result.Output | Where-Object { $_ -match "^php\d+\.\d+/"} | ForEach-Object { $_ -match "now (?\d+\.\d+\.\d+)-" | Out-Null $Matches.version } diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 index ac8c26dd..e35eaa14 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Generator.ps1 @@ -3,6 +3,8 @@ param ( $OutputDirectory ) +$ErrorActionPreference = "Stop" + Import-Module MarkdownPS Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Android.psm1") -DisableNameChecking Import-Module (Join-Path $PSScriptRoot "SoftwareReport.Browsers.psm1") -DisableNameChecking diff --git a/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 b/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 index 2c98ecbc..45772511 100644 --- a/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 +++ b/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1 @@ -24,7 +24,8 @@ function Get-BazelVersion { } function Get-BazeliskVersion { - $bazeliskVersion = bazelisk version 2>&1 | Select-String "Bazelisk version:" | Take-OutputPart -Part 2 | Take-OutputPart -Part 0 -Delimiter "v" + $result = Get-CommandResult "bazelisk version" -Multiline + $bazeliskVersion = $result.Output | Select-String "Bazelisk version:" | Take-OutputPart -Part 2 | Take-OutputPart -Part 0 -Delimiter "v" return "Bazelisk $bazeliskVersion" } @@ -77,12 +78,14 @@ function Get-DockerBuildxVersion { } function Get-GitVersion { - $gitVersion = git --version 2>&1 | Take-OutputPart -Part 2 + $result = Get-CommandResult "git --version" + $gitVersion = $result.Output | Take-OutputPart -Part 2 return "Git $gitVersion" } function Get-GitLFSVersion { - $gitlfsversion = git-lfs --version 2>&1 | Take-OutputPart -Part 0 | Take-OutputPart -Part 1 -Delimiter "/" + $result = Get-CommandResult "git-lfs --version" + $gitlfsversion = $result.Output | Take-OutputPart -Part 0 | Take-OutputPart -Part 1 -Delimiter "/" return "Git LFS $gitlfsversion" } @@ -215,12 +218,14 @@ function Get-AlibabaCloudCliVersion { } function Get-AWSCliVersion { - $awsVersion = aws --version 2>&1 | Take-OutputPart -Part 0 | Take-OutputPart -Part 1 -Delimiter "/" + $result = Get-CommandResult "aws --version" + $awsVersion = $result.Output | Take-OutputPart -Part 0 | Take-OutputPart -Part 1 -Delimiter "/" return "AWS CLI $awsVersion" } function Get-AWSCliSessionManagerPluginVersion { - return "AWS CLI Session manager plugin $(session-manager-plugin --version 2>&1)" + $result = (Get-CommandResult "session-manager-plugin --version").Output + return "AWS CLI Session manager plugin $result" } function Get-AWSSAMVersion { @@ -253,7 +258,8 @@ function Get-ORASCliVersion { } function Get-VerselCliversion { - return "$(vercel --version 2>&1 | Select-Object -First 1)" + $result = Get-CommandResult "vercel --version" -Multiline + return $result.Output | Select-Object -First 1 } function Get-PulumiVersion { From 5282793d8b9fa6a52ca4acbc995f86f6a39634a8 Mon Sep 17 00:00:00 2001 From: Hutson Betts Date: Wed, 7 Oct 2020 23:11:54 -0500 Subject: [PATCH 51/61] refactor(windows): consistent file naming Use the same file naming scheme for Windows as is used for Ubuntu, where the file name includes the Operating System name and release, but not the target platform. This also encourages downstream consumers to re-use the same files with alternative targets by extending the `builders` section and using the `-only` command line option with Packer to specify the build target. Closes #1636 --- helpers/GenerateResourcesAndImage.ps1 | 4 ++-- images.CI/linux-and-win/azure-pipelines/windows2016.yml | 2 +- images.CI/linux-and-win/azure-pipelines/windows2019.yml | 2 +- images/win/{Windows2016-Azure.json => windows2016.json} | 0 images/win/{Windows2019-Azure.json => windows2019.json} | 0 5 files changed, 4 insertions(+), 4 deletions(-) rename images/win/{Windows2016-Azure.json => windows2016.json} (100%) rename images/win/{Windows2019-Azure.json => windows2019.json} (100%) diff --git a/helpers/GenerateResourcesAndImage.ps1 b/helpers/GenerateResourcesAndImage.ps1 index 9718bc35..57c4675d 100644 --- a/helpers/GenerateResourcesAndImage.ps1 +++ b/helpers/GenerateResourcesAndImage.ps1 @@ -20,10 +20,10 @@ Function Get-PackerTemplatePath { switch ($ImageType) { ([ImageType]::Windows2016) { - $relativePath = "\images\win\Windows2016-Azure.json" + $relativePath = "\images\win\windows2016.json" } ([ImageType]::Windows2019) { - $relativePath = "\images\win\Windows2019-Azure.json" + $relativePath = "\images\win\windows2019.json" } ([ImageType]::Ubuntu1604) { $relativePath = "\images\linux\ubuntu1604.json" diff --git a/images.CI/linux-and-win/azure-pipelines/windows2016.yml b/images.CI/linux-and-win/azure-pipelines/windows2016.yml index 39d013f9..0220a38f 100644 --- a/images.CI/linux-and-win/azure-pipelines/windows2016.yml +++ b/images.CI/linux-and-win/azure-pipelines/windows2016.yml @@ -16,5 +16,5 @@ pr: jobs: - template: image-generation.yml parameters: - image_type: Windows2016-Azure + image_type: windows2016 image_readme_name: Windows2016-Readme.md \ No newline at end of file diff --git a/images.CI/linux-and-win/azure-pipelines/windows2019.yml b/images.CI/linux-and-win/azure-pipelines/windows2019.yml index 01f65c0e..ccad8f88 100644 --- a/images.CI/linux-and-win/azure-pipelines/windows2019.yml +++ b/images.CI/linux-and-win/azure-pipelines/windows2019.yml @@ -16,5 +16,5 @@ pr: jobs: - template: image-generation.yml parameters: - image_type: Windows2019-Azure + image_type: windows2019 image_readme_name: Windows2019-Readme.md \ No newline at end of file diff --git a/images/win/Windows2016-Azure.json b/images/win/windows2016.json similarity index 100% rename from images/win/Windows2016-Azure.json rename to images/win/windows2016.json diff --git a/images/win/Windows2019-Azure.json b/images/win/windows2019.json similarity index 100% rename from images/win/Windows2019-Azure.json rename to images/win/windows2019.json From 07b825bf7c94d007a980d3cb375e786aaa549087 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 8 Oct 2020 04:41:38 +0000 Subject: [PATCH 52/61] Ubuntu 2004 (20201004 update) (#1729) * Updating readme file for ubuntu20 version 20201004.1 * fix erlang version Co-authored-by: Image generation service account Co-authored-by: AlyonaSviridenko Co-authored-by: Actions service account --- images/linux/Ubuntu2004-README.md | 84 ++++++++++++++++--------------- 1 file changed, 44 insertions(+), 40 deletions(-) diff --git a/images/linux/Ubuntu2004-README.md b/images/linux/Ubuntu2004-README.md index 2776b988..4a59e7ca 100644 --- a/images/linux/Ubuntu2004-README.md +++ b/images/linux/Ubuntu2004-README.md @@ -1,34 +1,34 @@ -| Announcements | -|-| -| [Default Python will be switched to 3.8 on Ubuntu 20.04 on October, 6](https://github.com/actions/virtual-environments/issues/1591) | +| Announcements | +|-| +| [Default Python will be switched to 3.8 on Ubuntu 20.04 on October, 6](https://github.com/actions/virtual-environments/issues/1591) | | [Clang/LLVM 10 will be set as a default one and Clang/LLVM 6 will be deprecated for Ubuntu 20.04 on September, 23](https://github.com/actions/virtual-environments/issues/1536) | *** # Ubuntu 20.04.1 LTS -- Image Version: 20200920.1 +- Image Version: 20201004.1 ## Installed Software ### Language and Runtime -- GNU C++ 7.5.0, 8.4.0, 9.3.0 +- GNU C++ 7.5.0, 8.4.0, 9.3.0, 10.0.1 - GNU Fortran 8.4.0, 9.3.0 -- Clang 10.0.1, 8.0.1, 9.0.1 -- Erlang 11.0.3 +- Clang 8.0.1, 9.0.1, 10.0.0 +- Erlang 11.1 - Mono 6.12.0.90 - Node 12.18.4 -- Python 2.7.18rc1 +- Python 3.8.2 - Python3 3.8.2 - PowerShell 7.0.3 - Ruby 2.7.0p0 - Swift 5.3 -- Julia 1.5.1 +- Julia 1.5.2 ### Package Management -- Homebrew 2.5.1 +- Homebrew 2.5.2 - Gem 3.1.2 - Miniconda 4.8.3 -- Helm 3.3.3 +- Helm 3.3.4 - Npm 6.14.8 - Yarn 1.22.5 -- Pip 20.2.3 +- Pip 20.0.2 - Pip3 20.0.2 - Vcpkg 2020.06.15 @@ -43,21 +43,22 @@ - Ansible 2.9.6 - AzCopy10 10.6.0 (available by `azcopy10` alias) - AzCopy7 7.3.0 (available by `azcopy` alias) -- Bazel 3.5.0 +- Bazel 3.5.1 - Bazelisk 1.6.1 -- Buildah 1.16.1 +- Buildah 1.16.4 - CMake 3.17.0 +- CodeQL Action Bundle 2.2.5 - curl 7.68.0 -- Docker Compose 1.27.3 +- Docker Compose 1.27.4 - Docker-Buildx 0.4.2 -- Docker-Moby 19.03.12 +- Docker-Moby 19.03.13 - Git 2.28.0 - Git LFS 2.12.0 - Git-ftp 1.6.0 -- Google Cloud SDK 310.0.0 +- Google Cloud SDK 312.0.0 - Haveged 1.9.1 -- Heroku 7.43.0 -- HHVM (HipHop VM) 4.75.0 +- Heroku 7.44.0 +- HHVM (HipHop VM) 4.77.0 - jq 1.6 - Kind 0.9.0 - Kubectl 1.19.2 @@ -65,16 +66,19 @@ - Leiningen 2.9.4 - m4 1.4.18 - Mercurial 5.3.1 -- Minikube 1.13.0 +- Minikube 1.13.1 - Newman 5.2.0 - nvm 0.35.3 -- Packer 1.6.2 +- Packer 1.6.4 - PhantomJS 2.1.1 -- Podman 2.0.6 -- Skopeo 1.1.1 +- Podman 2.1.1 +- Pulumi 2.11.2 +- R 4.0.2 +- Skopeo 1.2.0 +- Sphinx Open Source Search Server 2.2.11 - SVN 1.13.0 - Swig 4.0.1 -- Terraform 0.13.3 +- Terraform 0.13.4 - unzip 6.00 - wget 1.20.3 - zip 3.0 @@ -82,17 +86,17 @@ ### CLI Tools - Alibaba Cloud CLI 3.0.59 -- AWS CLI 2.0.50 +- AWS CLI 2.0.54 - AWS CLI Session manager plugin 1.1.61.0 -- AWS SAM CLI 1.2.0 -- Azure CLI (azure-cli) 2.11.1 +- AWS SAM CLI 1.4.0 +- Azure CLI (azure-cli) 2.12.1 - Azure CLI (azure-devops) 0.18.0 - GitHub CLI 1.0.0 - Hub CLI 2.14.2 -- Netlify CLI 2.63.2 +- Netlify CLI 2.64.1 - oc CLI 4.5.0 - ORAS CLI 0.8.1 -- Vercel CLI 20.1.0 +- Vercel CLI 20.1.1 ### Java | Version | Vendor | Environment Variable | @@ -120,26 +124,26 @@ #### Packages - Bindgen 0.55.1 -- Cargo audit 0.12.0 +- Cargo audit 0.12.1 - Cargo outdated 0.9.11 - Cargo clippy 0.0.212 -- Cbindgen 0.14.5 +- Cbindgen 0.14.6 - Rustfmt 1.4.18 ### Browsers and Drivers -- Google Chrome 85.0.4183.102 +- Google Chrome 85.0.4183.121 - ChromeDriver 85.0.4183.87 -- Mozilla Firefox 80.0.1 +- Mozilla Firefox 81.0 - Geckodriver 0.27.0 ### .NET Core SDK - 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.508 2.1.509 2.1.510 2.1.511 2.1.512 2.1.513 2.1.514 2.1.515 2.1.516 2.1.517 2.1.518 2.1.602 2.1.603 2.1.604 2.1.605 2.1.606 2.1.607 2.1.608 2.1.609 2.1.610 2.1.611 2.1.612 2.1.613 2.1.614 2.1.615 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 2.1.808 2.1.809 2.1.810 3.1.100 3.1.101 3.1.102 3.1.103 3.1.104 3.1.105 3.1.106 3.1.107 3.1.108 3.1.200 3.1.201 3.1.202 3.1.300 3.1.301 3.1.302 3.1.401 3.1.402 ### Az Module -- 4.6.1 +- 4.7.0 ### Databases -- Postgre SQL 12.4 +- Postgre SQL 13.0 - MongoDB 4.4.1 - sqlite3 3.31.1 @@ -162,17 +166,17 @@ - 3.5.10 - 3.6.12 - 3.7.9 -- 3.8.5 +- 3.8.6 #### PyPy -- 2.7.13 [PyPy 7.3.1] -- 3.6.9 [PyPy 7.3.1] +- 2.7.13 [PyPy 7.3.2] +- 3.6.9 [PyPy 7.3.2] #### Node.js - 8.17.0 - 10.22.1 - 12.18.4 -- 14.11.0 +- 14.13.0 #### Go - 1.14.9 @@ -210,6 +214,6 @@ - ubuntu:14.04 ### Installed apt packages -- bison, brotli, bzip2, curl, dbus, dnsutils, dpkg, fakeroot, file, flex, ftp, gnupg2, iproute2, iputils-ping, jq, lib32z1, libc++-dev, libc++abi-dev, libcurl4, libgbm-dev, libgconf-2-4, libgtk-3-0, libsecret-1-dev, libsqlite3-dev, libunwind8, libxkbfile-dev, libxss1, locales, m4, netcat, openssh-client, parallel, patchelf, pkg-config, python-is-python2, rpm, rsync, shellcheck, sqlite3, ssh, sudo, telnet, texinfo, time, tk, tzdata, unzip, upx, wget, xorriso, xvfb, xz-utils, yamllint, zip, zstd, zsync +- bison, brotli, bzip2, curl, dbus, dnsutils, dpkg, fakeroot, file, flex, ftp, gnupg2, iproute2, iputils-ping, jq, lib32z1, libc++-dev, libc++abi-dev, libcurl4, libgbm-dev, libgconf-2-4, libgtk-3-0, libsecret-1-dev, libsqlite3-dev, libunwind8, libxkbfile-dev, libxss1, locales, m4, netcat, openssh-client, parallel, patchelf, pkg-config, python-is-python3, rpm, rsync, shellcheck, sqlite3, ssh, sudo, telnet, texinfo, time, tk, tzdata, unzip, upx, wget, xorriso, xvfb, xz-utils, yamllint, zip, zstd, zsync From fd42010ce6e8ab37603b0b9c898f559d2491aae6 Mon Sep 17 00:00:00 2001 From: Dibir Magomedsaygitov Date: Thu, 8 Oct 2020 10:16:53 +0300 Subject: [PATCH 53/61] enable spotlight indexing --- images/macos/provision/configuration/configure-machine.sh | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/images/macos/provision/configuration/configure-machine.sh b/images/macos/provision/configuration/configure-machine.sh index 81946f01..dbfae673 100644 --- a/images/macos/provision/configuration/configure-machine.sh +++ b/images/macos/provision/configuration/configure-machine.sh @@ -27,7 +27,4 @@ sudo "/Library/Application Support/VMware Tools/vmware-resolutionSet" 1176 885 # sudo security delete-certificate -Z FF6797793A3CD798DC5B2ABEF56F73EDC9F83A64 /Library/Keychains/System.keychain curl https://www.apple.com/certificateauthority/AppleWWDRCAG3.cer --output $HOME/AppleWWDRCAG3.cer --silent sudo security add-trusted-cert -d -r unspecified -k /Library/Keychains/System.keychain $HOME/AppleWWDRCAG3.cer -rm $HOME/AppleWWDRCAG3.cer - -# Disable spotlight indexing to prevent possible high CPU usage after startup -sudo mdutil -ai off \ No newline at end of file +rm $HOME/AppleWWDRCAG3.cer \ No newline at end of file From d934cf521404de706f417999cb3d23221fde3788 Mon Sep 17 00:00:00 2001 From: Maxim Lobanov Date: Thu, 8 Oct 2020 10:53:24 +0300 Subject: [PATCH 54/61] Update Xcode.Tests.ps1 --- images/macos/tests/Xcode.Tests.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/images/macos/tests/Xcode.Tests.ps1 b/images/macos/tests/Xcode.Tests.ps1 index 74bbee4a..250c8d8a 100644 --- a/images/macos/tests/Xcode.Tests.ps1 +++ b/images/macos/tests/Xcode.Tests.ps1 @@ -56,7 +56,7 @@ Describe "Xcode" { } Context "XCODE_DEVELOPER_DIR" { - $stableXcodeVersions = $testCases | Where-Object { Test-XcodeStableRelease -Version $_ } + $stableXcodeVersions = $XCODE_VERSIONS | ForEach-Object { $_.Split("_")[0] } | Where-Object { Test-XcodeStableRelease -Version $_ } $majorXcodeVersions = $stableXcodeVersions | ForEach-Object { $_.Split(".")[0] } | Select-Object -Unique $testCases = $majorXcodeVersions | ForEach-Object { $majorXcodeVersion = $_ From 5c26e32b91bf6fa74f033c8cf3774a90d1785018 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 8 Oct 2020 09:15:48 +0000 Subject: [PATCH 55/61] Ubuntu 1604 (20201004 update) (#1727) * Updating readme file for ubuntu16 version 20201004.1 * fix erlang version Co-authored-by: Image generation service account Co-authored-by: AlyonaSviridenko Co-authored-by: Actions service account --- images/linux/Ubuntu1604-README.md | 64 ++++++++++++++++--------------- 1 file changed, 34 insertions(+), 30 deletions(-) diff --git a/images/linux/Ubuntu1604-README.md b/images/linux/Ubuntu1604-README.md index be5b36b9..5e3c8ef2 100644 --- a/images/linux/Ubuntu1604-README.md +++ b/images/linux/Ubuntu1604-README.md @@ -1,17 +1,17 @@ -| Announcements | -|-| -| [Default Python will be switched to 3.8 on Ubuntu 20.04 on October, 6](https://github.com/actions/virtual-environments/issues/1591) | +| Announcements | +|-| +| [Default Python will be switched to 3.8 on Ubuntu 20.04 on October, 6](https://github.com/actions/virtual-environments/issues/1591) | | [Clang/LLVM 10 will be set as a default one and Clang/LLVM 6 will be deprecated for Ubuntu 20.04 on September, 23](https://github.com/actions/virtual-environments/issues/1536) | *** # Ubuntu 16.04.7 LTS -- Image Version: 20200920.1 +- Image Version: 20201004.1 ## Installed Software ### Language and Runtime - GNU C++ 5.5.0, 7.5.0, 8.4.0, 9.3.0 - GNU Fortran 5.5.0, 8.4.0, 9.3.0 - Clang 6.0.0, 8.0.0, 9.0.1 -- Erlang 11.0.3 +- Erlang 11.1 - Mono 6.12.0.90 - Node 12.18.4 - Python 2.7.12 @@ -19,10 +19,10 @@ - PowerShell 7.0.3 - Ruby 2.3.1p112 - Swift 5.3 -- Julia 1.5.1 +- Julia 1.5.2 ### Package Management -- Homebrew 2.5.1 +- Homebrew 2.5.2 - Gem 3.1.4 - Miniconda 4.8.3 - Helm @@ -43,19 +43,20 @@ - Ansible 2.9.13 - AzCopy10 10.6.0 (available by `azcopy10` alias) - AzCopy7 7.3.0 (available by `azcopy` alias) -- Bazel 3.5.0 +- Bazel 3.5.1 - Bazelisk 1.6.1 - CMake 3.17.0 +- CodeQL Action Bundle 2.2.5 - curl 7.47.0 -- Docker Compose 1.27.3 +- Docker Compose 1.27.4 - Docker-Buildx 0.4.2 -- Docker-Moby 19.03.12 +- Docker-Moby 19.03.13 - Git 2.28.0 - Git LFS 2.12.0 - Git-ftp 1.0.2 -- Google Cloud SDK 310.0.0 +- Google Cloud SDK 312.0.0 - Haveged 1.9.1 -- Heroku 7.43.0 +- Heroku 7.44.0 - HHVM (HipHop VM) 4.56.1 - jq 1.5 - Kind 0.9.0 @@ -64,14 +65,17 @@ - Leiningen 2.9.4 - m4 1.4.17 - Mercurial 4.4.1 -- Minikube 1.13.0 +- Minikube 1.13.1 - Newman 5.2.0 - nvm 0.35.3 -- Packer 1.6.2 +- Packer 1.6.4 - PhantomJS 2.1.1 +- Pulumi 2.11.2 +- R 4.0.2 +- Sphinx Open Source Search Server 2.2.9 - SVN 1.9.3 - Swig 3.0.8 -- Terraform 0.13.3 +- Terraform 0.13.4 - unzip 6.00 - wget 1.17.1 - zip 3.0 @@ -79,17 +83,17 @@ ### CLI Tools - Alibaba Cloud CLI 3.0.59 -- AWS CLI 1.18.142 +- AWS CLI 1.18.152 - AWS CLI Session manager plugin 1.1.61.0 -- AWS SAM CLI 1.2.0 -- Azure CLI (azure-cli) 2.11.1 +- AWS SAM CLI 1.4.0 +- Azure CLI (azure-cli) 2.12.1 - Azure CLI (azure-devops) 0.18.0 - GitHub CLI - Hub CLI 2.14.2 -- Netlify CLI 2.63.2 +- Netlify CLI 2.64.1 - oc CLI 4.5.0 - ORAS CLI 0.8.1 -- Vercel CLI 20.1.0 +- Vercel CLI 20.1.1 ### Java | Version | Vendor | Environment Variable | @@ -119,26 +123,26 @@ #### Packages - Bindgen 0.55.1 -- Cargo audit 0.12.0 +- Cargo audit 0.12.1 - Cargo outdated 0.9.11 - Cargo clippy 0.0.212 -- Cbindgen 0.14.5 +- Cbindgen 0.14.6 - Rustfmt 1.4.18 ### Browsers and Drivers -- Google Chrome 85.0.4183.102 +- Google Chrome 85.0.4183.121 - ChromeDriver 85.0.4183.87 -- Mozilla Firefox 80.0.1 +- Mozilla Firefox 81.0 - Geckodriver 0.27.0 ### .NET Core SDK - 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.508 2.1.509 2.1.510 2.1.511 2.1.512 2.1.513 2.1.514 2.1.515 2.1.516 2.1.517 2.1.518 2.1.602 2.1.603 2.1.604 2.1.605 2.1.606 2.1.607 2.1.608 2.1.609 2.1.610 2.1.611 2.1.612 2.1.613 2.1.614 2.1.615 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 2.1.808 2.1.809 2.1.810 3.0.100 3.0.101 3.0.102 3.0.103 3.1.100 3.1.101 3.1.102 3.1.103 3.1.104 3.1.105 3.1.106 3.1.107 3.1.108 3.1.200 3.1.201 3.1.202 3.1.300 3.1.301 3.1.302 3.1.401 3.1.402 ### Az Module -- 1.0.0 1.6.0 2.3.2 2.6.0 2.8.0 3.1.0 3.5.0 3.8.0 4.3.0 4.4.0 4.6.0 +- 1.0.0 1.6.0 2.3.2 2.6.0 2.8.0 3.1.0 3.5.0 3.8.0 4.3.0 4.4.0 4.6.0 4.7.0 ### Databases -- Postgre SQL 12.4 +- Postgre SQL 13.0 - MongoDB 4.4.1 - sqlite3 3.11.0 @@ -162,17 +166,17 @@ - 3.5.10 - 3.6.12 - 3.7.9 -- 3.8.5 +- 3.8.6 #### PyPy -- 2.7.13 [PyPy 7.3.1] -- 3.6.9 [PyPy 7.3.1] +- 2.7.13 [PyPy 7.3.2] +- 3.6.9 [PyPy 7.3.2] #### Node.js - 8.17.0 - 10.22.1 - 12.18.4 -- 14.11.0 +- 14.13.0 #### Go - 1.11.13 From 124b841acadf62b4e5db5486a5bfca9126cf06f9 Mon Sep 17 00:00:00 2001 From: Alena Sviridenko Date: Thu, 8 Oct 2020 12:27:44 +0300 Subject: [PATCH 56/61] updated triage rules (#1766) --- .github/workflows/issue-triager.yml | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/.github/workflows/issue-triager.yml b/.github/workflows/issue-triager.yml index 12d04db5..c7f4b9f8 100644 --- a/.github/workflows/issue-triager.yml +++ b/.github/workflows/issue-triager.yml @@ -24,9 +24,21 @@ jobs: with: github-token: ${{secrets.GITHUB_TOKEN}} script: | - github.issues.addLabels({ + const issueLabels = await github.issues.listLabelsOnIssue({ issue_number: context.issue.number, owner: context.repo.owner, - repo: context.repo.repo, - labels: ['needs triage'] - }) \ No newline at end of file + repo: context.repo.repo + }); + + const isAnnouncement = issueLabels.data && issueLabels.data + .map(label => label.name) + .includes('announcement'); + + if (!isAnnouncement) { + github.issues.addLabels({ + issue_number: context.issue.number, + owner: context.repo.owner, + repo: context.repo.repo, + labels: ['needs triage'] + }) + } \ No newline at end of file From 0a35359f4b9caec4fb0a7777b2a1ffbdb47e4f2d Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 8 Oct 2020 11:50:43 +0000 Subject: [PATCH 57/61] Ubuntu 1804 (20201004 update) (#1728) * Updating readme file for ubuntu18 version 20201004.1 * fixed erlang output * restore initial version * Revert "restore initial version" This reverts commit 089a6f2ca93146926455040e1a7438a02a685100. * Revert "fixed erlang output" This reverts commit e8ddae5ace2d7b79e04385bc314c7964f923e599. * fix erlang version Co-authored-by: Image generation service account Co-authored-by: Alena Sviridenko Co-authored-by: Actions service account --- images/linux/Ubuntu1804-README.md | 70 ++++++++++++++++--------------- 1 file changed, 37 insertions(+), 33 deletions(-) diff --git a/images/linux/Ubuntu1804-README.md b/images/linux/Ubuntu1804-README.md index f72a52ca..da48be72 100644 --- a/images/linux/Ubuntu1804-README.md +++ b/images/linux/Ubuntu1804-README.md @@ -1,17 +1,17 @@ -| Announcements | -|-| -| [Default Python will be switched to 3.8 on Ubuntu 20.04 on October, 6](https://github.com/actions/virtual-environments/issues/1591) | +| Announcements | +|-| +| [Default Python will be switched to 3.8 on Ubuntu 20.04 on October, 6](https://github.com/actions/virtual-environments/issues/1591) | | [Clang/LLVM 10 will be set as a default one and Clang/LLVM 6 will be deprecated for Ubuntu 20.04 on September, 23](https://github.com/actions/virtual-environments/issues/1536) | *** # Ubuntu 18.04.5 LTS -- Image Version: 20200920.1 +- Image Version: 20201004.1 ## Installed Software ### Language and Runtime -- GNU C++ 7.5.0, 8.4.0, 9.3.0 +- GNU C++ 7.5.0, 8.4.0, 9.3.0, 10.1.0 - GNU Fortran 7.5.0, 8.4.0, 9.3.0 - Clang 6.0.0, 8.0.0, 9.0.0 -- Erlang 11.0.3 +- Erlang 11.1 - Mono 6.12.0.90 - Node 12.18.4 - Python 2.7.17 @@ -19,10 +19,10 @@ - PowerShell 7.0.3 - Ruby 2.5.1p57 - Swift 5.3 -- Julia 1.5.1 +- Julia 1.5.2 ### Package Management -- Homebrew 2.5.1 +- Homebrew 2.5.2 - Gem 3.1.4 - Miniconda 4.8.3 - Helm @@ -43,21 +43,22 @@ - Ansible 2.9.13 - AzCopy10 10.6.0 (available by `azcopy10` alias) - AzCopy7 7.3.0 (available by `azcopy` alias) -- Bazel 3.5.0 +- Bazel 3.5.1 - Bazelisk 1.6.1 - Buildah - CMake 3.17.0 +- CodeQL Action Bundle 2.2.5 - curl 7.58.0 -- Docker Compose 1.27.3 +- Docker Compose 1.27.4 - Docker-Buildx 0.4.2 -- Docker-Moby 19.03.12 +- Docker-Moby 19.03.13 - Git 2.28.0 - Git LFS 2.12.0 - Git-ftp 1.3.1 -- Google Cloud SDK 310.0.0 +- Google Cloud SDK 312.0.0 - Haveged 1.9.1 -- Heroku 7.43.0 -- HHVM (HipHop VM) 4.75.0 +- Heroku 7.44.0 +- HHVM (HipHop VM) 4.77.0 - jq 1.5 - Kind 0.9.0 - Kubectl 1.19.2 @@ -65,16 +66,19 @@ - Leiningen 2.9.4 - m4 1.4.18 - Mercurial 4.5.3 -- Minikube 1.13.0 +- Minikube 1.13.1 - Newman 5.2.0 - nvm 0.35.3 -- Packer 1.6.2 +- Packer 1.6.4 - PhantomJS 2.1.1 - Podman -- Skopeo 1.1.1 +- Pulumi 2.11.2 +- R 4.0.2 +- Skopeo 1.2.0 +- Sphinx Open Source Search Server 2.2.11 - SVN 1.9.7 - Swig 3.0.12 -- Terraform 0.13.3 +- Terraform 0.13.4 - unzip 6.00 - wget 1.19.4 - zip 3.0 @@ -82,17 +86,17 @@ ### CLI Tools - Alibaba Cloud CLI 3.0.59 -- AWS CLI 1.18.142 +- AWS CLI 1.18.152 - AWS CLI Session manager plugin 1.1.61.0 -- AWS SAM CLI 1.2.0 -- Azure CLI (azure-cli) 2.11.1 +- AWS SAM CLI 1.4.0 +- Azure CLI (azure-cli) 2.12.1 - Azure CLI (azure-devops) 0.18.0 - GitHub CLI - Hub CLI 2.14.2 -- Netlify CLI 2.63.2 +- Netlify CLI 2.64.1 - oc CLI 4.5.0 - ORAS CLI 0.8.1 -- Vercel CLI 20.1.0 +- Vercel CLI 20.1.1 ### Java | Version | Vendor | Environment Variable | @@ -122,26 +126,26 @@ #### Packages - Bindgen 0.55.1 -- Cargo audit 0.12.0 +- Cargo audit 0.12.1 - Cargo outdated 0.9.11 - Cargo clippy 0.0.212 -- Cbindgen 0.14.5 +- Cbindgen 0.14.6 - Rustfmt 1.4.18 ### Browsers and Drivers -- Google Chrome 85.0.4183.102 +- Google Chrome 85.0.4183.121 - ChromeDriver 85.0.4183.87 -- Mozilla Firefox 80.0.1 +- Mozilla Firefox 81.0 - Geckodriver 0.27.0 ### .NET Core SDK - 2.1.300 2.1.301 2.1.302 2.1.401 2.1.402 2.1.403 2.1.500 2.1.502 2.1.503 2.1.504 2.1.505 2.1.506 2.1.507 2.1.508 2.1.509 2.1.510 2.1.511 2.1.512 2.1.513 2.1.514 2.1.515 2.1.516 2.1.517 2.1.518 2.1.602 2.1.603 2.1.604 2.1.605 2.1.606 2.1.607 2.1.608 2.1.609 2.1.610 2.1.611 2.1.612 2.1.613 2.1.614 2.1.615 2.1.700 2.1.701 2.1.801 2.1.802 2.1.803 2.1.804 2.1.805 2.1.806 2.1.807 2.1.808 2.1.809 2.1.810 3.0.100 3.0.101 3.0.102 3.0.103 3.1.100 3.1.101 3.1.102 3.1.103 3.1.104 3.1.105 3.1.106 3.1.107 3.1.108 3.1.200 3.1.201 3.1.202 3.1.300 3.1.301 3.1.302 3.1.401 3.1.402 ### Az Module -- 1.0.0 1.6.0 2.3.2 2.6.0 2.8.0 3.1.0 3.5.0 3.8.0 4.3.0 4.4.0 4.6.0 +- 1.0.0 1.6.0 2.3.2 2.6.0 2.8.0 3.1.0 3.5.0 3.8.0 4.3.0 4.4.0 4.6.0 4.7.0 ### Databases -- Postgre SQL 12.4 +- Postgre SQL 13.0 - MongoDB 4.4.1 - sqlite3 3.22.0 @@ -165,17 +169,17 @@ - 3.5.10 - 3.6.12 - 3.7.9 -- 3.8.5 +- 3.8.6 #### PyPy -- 2.7.13 [PyPy 7.3.1] -- 3.6.9 [PyPy 7.3.1] +- 2.7.13 [PyPy 7.3.2] +- 3.6.9 [PyPy 7.3.2] #### Node.js - 8.17.0 - 10.22.1 - 12.18.4 -- 14.11.0 +- 14.13.0 #### Go - 1.11.13 From cb16dfc17427f300f2ff3bf702df629116ffe441 Mon Sep 17 00:00:00 2001 From: Aleksandr Chebotov <47745270+al-cheb@users.noreply.github.com> Date: Thu, 8 Oct 2020 15:27:39 +0300 Subject: [PATCH 58/61] [images.CI] Delete macOS VMs on build canceling (#1742) * destroy vm * destroy vm * check clone status * fix vm state * remove exit 1 * fix params * suppress stop-vm output * replace or -> Or * rename doc terms --- .../azure-pipelines/image-generation.yml | 11 +++ images.CI/macos/destroy-vm.ps1 | 89 +++++++++++++++++++ 2 files changed, 100 insertions(+) create mode 100644 images.CI/macos/destroy-vm.ps1 diff --git a/images.CI/macos/azure-pipelines/image-generation.yml b/images.CI/macos/azure-pipelines/image-generation.yml index 7f02d90f..b70e4215 100644 --- a/images.CI/macos/azure-pipelines/image-generation.yml +++ b/images.CI/macos/azure-pipelines/image-generation.yml @@ -105,3 +105,14 @@ jobs: failTaskOnFailedTests: true displayName: Publish test results condition: always() + + - task: PowerShell@2 + displayName: 'Destroy VM (if build canceled only)' + condition: eq(variables['Agent.JobStatus'], 'Canceled') + inputs: + targetType: 'filePath' + filePath: ./images.CI/macos/destroy-vm.ps1 + arguments: -VMName "${{ variables.VirtualMachineName }}" ` + -VIServer "$(vcenter-server-v2)" ` + -VIUserName "$(vcenter-username-v2)" ` + -VIPassword "$(vcenter-password-v2)" diff --git a/images.CI/macos/destroy-vm.ps1 b/images.CI/macos/destroy-vm.ps1 new file mode 100644 index 00000000..0b808370 --- /dev/null +++ b/images.CI/macos/destroy-vm.ps1 @@ -0,0 +1,89 @@ +[CmdletBinding()] +param( + [Parameter(Mandatory)] + [ValidateNotNullOrEmpty()] + [string]$VMName, + + [Parameter(Mandatory)] + [ValidateNotNullOrEmpty()] + [string]$VIServer, + + [Parameter(Mandatory)] + [ValidateNotNullOrEmpty()] + [string]$VIUserName, + + [Parameter(Mandatory)] + [ValidateNotNullOrEmpty()] + [string]$VIPassword +) + +$ProgressPreference = "SilentlyContinue" +$WarningPreference = "SilentlyContinue" + +# connection to a vCenter Server system +try +{ + $null = Set-PowerCLIConfiguration -Scope Session -InvalidCertificateAction Ignore -ParticipateInCEIP $false -Confirm:$false -WebOperationTimeoutSeconds 600 + $securePassword = ConvertTo-SecureString -String $VIPassword -AsPlainText -Force + $cred = New-Object System.Management.Automation.PSCredential($VIUserName, $securePassword) + $null = Connect-VIServer -Server $VIServer -Credential $cred -ErrorAction Stop + Write-Host "Connection to the vSphere server has been established" +} +catch +{ + Write-Host "##vso[task.LogIssue type=error;]Failed to connect to the vSphere server" + exit 1 +} + +# check vm clone status +$chainId = (Get-VIEvent -Entity $VMName).ChainId +if ($chainId) +{ + $task = Get-Task -Status Running | Where-Object { ($_.Name -eq 'CloneVM_Task') -and ($_.ExtensionData.Info.EventChainId -in $chainId) } + if ($task) + { + try + { + Stop-Task -Task $task -Confirm:$false -ErrorAction Stop + Write-Host "The vm '$VMName' clone task has been cancelled" + } + catch + { + Write-Host "##vso[task.LogIssue type=error;]Failed to cancel the task" + } + } +} + +# remove a vm +$vm = Get-VM -Name $VMName -ErrorAction SilentlyContinue + +if ($vm) +{ + $vmState = $vm.PowerState + if ($vmState -ne "PoweredOff") + { + try + { + $null = Stop-VM -VM $vm -Confirm:$false -ErrorAction Stop + Write-Host "The vm '$VMName' has been powered off" + } + catch + { + Write-Host "##vso[task.LogIssue type=error;]Failed to shutdown '$VMName'" + } + } + + try + { + Remove-VM -VM $vm -DeletePermanently -Confirm:$false -ErrorAction Stop + Write-Host "The vm '$VMName' has been removed" + } + catch + { + Write-Host "##vso[task.LogIssue type=error;]Failed to remove '$VMName'" + } +} +else +{ + Write-Host "VM '$VMName' not found" +} \ No newline at end of file From a30fb6b0417f4ccc3fa4291468b228b1e8b04f68 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 8 Oct 2020 15:10:46 +0000 Subject: [PATCH 59/61] Updating readme file for win19 version 20201004.1 (#1730) Co-authored-by: Image generation service account Co-authored-by: Actions service account --- images/win/Windows2019-Readme.md | 192 +++++++++++-------------------- 1 file changed, 70 insertions(+), 122 deletions(-) diff --git a/images/win/Windows2019-Readme.md b/images/win/Windows2019-Readme.md index 50f161d2..c3a83a66 100644 --- a/images/win/Windows2019-Readme.md +++ b/images/win/Windows2019-Readme.md @@ -4,7 +4,7 @@ *** # Microsoft Windows Server 2019 Datacenter - OS Version: 10.0.17763 Build 1457 -- Image Version: 20200920.1 +- Image Version: 20201004.1 ## Enabled windows optional features - Windows Subsystem for Linux @@ -18,8 +18,8 @@ - Python 3.7.9 - Ruby 2.5.8p224 - Go 1.14.9 -- PHP 7.4.9 -- Julia 1.5.1 +- PHP 7.4.11 +- Julia 1.5.2 - Perl 5.32.0 - Node 12.18.4 @@ -27,16 +27,16 @@ - Chocolatey 0.10.15 - Vcpkg 2020.06.15 - NPM 6.14.6 -- Yarn 1.22.5 +- Yarn 1.22.10 - pip 20.2.3 (python 3.7) - Miniconda 4.6.14 - RubyGems 3.1.4 -- Helm 3.3.3 +- Helm 3.3.4 - Composer 1.10.13 - NuGet 5.7.0.6726 ### Project Management -- Ant 1.10.8 +- Ant 1.10.9 - Maven 3.6.3 - Gradle 6.6 - sbt 1.3.13 @@ -44,15 +44,16 @@ ### Tools - Azure CosmosDb Emulator 2.11.5.0 - azcopy 10.6.0 -- Bazel 3.5.0 +- Bazel 3.5.1 - Bazelisk 1.6.1 -- CMake 3.18.2 +- CMake 3.18.3 +- CodeQL Action Bundle 2.2.5 - R 4.0.2 - Docker 19.03.12 - Docker-compose 1.27.2 - Git 2.28.0 - Git LFS 2.11.0 -- Google Cloud SDK 310.0.0 +- Google Cloud SDK 312.0.0 - InnoSetup 6.0.5 - jq 1.6 - Kubectl 1.19.1 @@ -63,10 +64,10 @@ - NSIS v3.06.1 - Newman 5.2.0 - OpenSSL 1.1.1 -- Packer 1.6.2 -- Pulumi v2.10.1 +- Packer 1.6.3 +- Pulumi v2.11.2 - SQLPS 1.0 -- SQLServer PS 21.1.18226 +- SQLServer PS 21.1.18228 - Subversion (SVN) 1.14.0 - ghc 8.10.2 - Cabal 3.2.0.0 @@ -75,16 +76,17 @@ - zstd 1.4.5 - VSWhere 2.8.4 - 7zip 19.00 -- yamllint 1.24.2 +- yamllint 1.25.0 ### CLI Tools -- Azure CLI 2.11.1 +- Azure CLI 2.12.1 - Azure DevOps CLI extension 0.18.0 -- AWS CLI 2.0.50 -- AWS SAM CLI 1.2.0 +- Azure Dev Spaces CLI 1.0.20200921.3 +- AWS CLI 2.0.54 +- AWS SAM CLI 1.4.0 - AWS Session Manager CLI 1.1.61.0 - Alibaba Cloud CLI 3.0.59 -- Cloud Foundry CLI 6.52.0 +- Cloud Foundry CLI 6.53.0 - Hub CLI 2.14.2 - GitHub CLI 1.0.0 @@ -93,16 +95,16 @@ #### Packages - bindgen 0.55.1 -- cbindgen 0.14.5 -- cargo-audit 0.12.0 +- cbindgen 0.14.6 +- cargo-audit 0.12.1 - cargo-outdated v0.9.11 ### Browsers and webdrivers -- Google Chrome 85.0.4183.102 +- Google Chrome 85.0.4183.121 - Chrome Driver 85.0.4183.87 -- Microsoft Edge 85.0.564.51 -- Microsoft Edge Driver 85.0.564.51 -- Mozilla Firefox 80.0.1 +- Microsoft Edge 85.0.564.68 +- Microsoft Edge Driver 85.0.564.68 +- Mozilla Firefox 81.0.1 - Gecko Driver 0.27.0 - IE Driver 3.150.1.0 @@ -152,7 +154,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH. | 8.17.0 | x64 | | 10.22.1 | x64 | | 12.18.4 | x64 | -| 14.11.0 | x64 | +| 14.13.0 | x64 | #### Python @@ -162,7 +164,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH. | 3.5.4 | x64, x86 | | 3.6.8 | x64, x86 | | 3.7.9 (Default) | x64, x86 | -| 3.8.5 | x64, x86 | +| 3.8.6 | x64, x86 | #### Ruby @@ -177,8 +179,8 @@ Note: MSYS2 is pre-installed on image but not added to PATH. #### PyPy | Python Version | Architecture | PyPy Version | | -------------- | ------------ | ------------ | -| 2.7.13 | x86 | PyPy 7.3.1 with MSC v.1912 32 bit | -| 3.6.9 | x86 | PyPy 7.3.1 with MSC v.1912 32 bit | +| 2.7.13 | x86 | PyPy 7.3.2 with MSC v.1927 32 bit | +| 3.6.9 | x86 | PyPy 7.3.2 with MSC v.1927 32 bit | @@ -186,12 +188,12 @@ Note: MSYS2 is pre-installed on image but not added to PATH. #### PostgreSQL | Property | Value | | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | -| ServiceName | postgresql-x64-12 | -| Version | 12.4 | +| ServiceName | postgresql-x64-13 | +| Version | 13.0 | | ServiceStatus | Stopped | | ServiceStartType | Disabled | -| EnvironmentVariables | PGBIN=C:\Program Files\PostgreSQL\12\bin
PGDATA=C:\Program Files\PostgreSQL\12\data
PGROOT=C:\Program Files\PostgreSQL\12 | -| Path | C:\Program Files\PostgreSQL\12 | +| EnvironmentVariables | PGBIN=C:\Program Files\PostgreSQL\13\bin
PGDATA=C:\Program Files\PostgreSQL\13\data
PGROOT=C:\Program Files\PostgreSQL\13 | +| Path | C:\Program Files\PostgreSQL\13 | | UserName | postgres | | Password | root | @@ -206,13 +208,13 @@ Note: MSYS2 is pre-installed on image but not added to PATH. ### Visual Studio Enterprise 2019 | Name | Version | Path | | ----------------------------- | -------------- | -------------------------------------------------------------- | -| Visual Studio Enterprise 2019 | 16.7.30503.244 | C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise | +| Visual Studio Enterprise 2019 | 16.7.30523.141 | C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise | #### Workloads, components and extensions: | Package | Version | | ------------------------------------------------------------------------- | -------------- | -| Component.Android.NDK.R16B | 16.7.30427.251 | +| Component.Android.NDK.R16B | 16.7.30521.138 | | Component.Android.SDK25.Private | 16.0.28625.61 | | Component.Android.SDK28 | 16.2.29003.222 | | Component.Ant | 1.9.3.8 | @@ -427,7 +429,7 @@ Note: MSYS2 is pre-installed on image but not added to PATH. | Microsoft.VisualStudio.Workload.Universal | 16.7.30310.162 | | Microsoft.VisualStudio.Workload.VisualStudioExtension | 16.4.29409.204 | | SSDT Microsoft Analysis Services Projects | 2.9.13 | -| SSDT SQL Server Integration Services Projects | 3.9 | +| SSDT SQL Server Integration Services Projects | 3.10 | | SSDT Microsoft Reporting Services Projects | 2.6.7 | | Windows Driver Kit | 3.11.4516 | | Windows Driver Kit Visual Studio Extension | 10.1.19041.1 | @@ -446,12 +448,12 @@ Note: MSYS2 is pre-installed on image but not added to PATH. | Microsoft Visual C++ 2013 Minimum Runtime | x64 | 12.0.40660 | | Microsoft Visual C++ 2013 Additional Runtime | x86 | 12.0.21005 | | Microsoft Visual C++ 2013 Minimum Runtime | x86 | 12.0.21005 | -| Microsoft Visual C++ 2019 Additional Runtime | x64 | 14.27.29016 | -| Microsoft Visual C++ 2019 Debug Runtime | x64 | 14.27.29016 | -| Microsoft Visual C++ 2019 Minimum Runtime | x64 | 14.27.29016 | -| Microsoft Visual C++ 2019 Additional Runtime | x86 | 14.27.29016 | -| Microsoft Visual C++ 2019 Debug Runtime | x86 | 14.27.29016 | -| Microsoft Visual C++ 2019 Minimum Runtime | x86 | 14.27.29016 | +| Microsoft Visual C++ 2019 Additional Runtime | x64 | 14.27.29112 | +| Microsoft Visual C++ 2019 Debug Runtime | x64 | 14.27.29112 | +| Microsoft Visual C++ 2019 Minimum Runtime | x64 | 14.27.29112 | +| Microsoft Visual C++ 2019 Additional Runtime | x86 | 14.27.29112 | +| Microsoft Visual C++ 2019 Debug Runtime | x86 | 14.27.29112 | +| Microsoft Visual C++ 2019 Minimum Runtime | x86 | 14.27.29112 | ### .NET Core SDK `Location C:\Program Files\dotnet\sdk` @@ -479,95 +481,41 @@ Note: MSYS2 is pre-installed on image but not added to PATH. - PowerShell 7.0.3 #### Azure Powershell Modules -| Module | Version | Path | -| ------- | -------------------------------------------------------------------------------------- | ------------------------------ | -| Az | 1.0.0
1.6.0
2.3.2
2.6.0
3.1.0
3.5.0
3.8.0
4.3.0
4.4.0
4.6.0 | C:\Modules\az_\ | -| Azure | 2.1.0 [Installed]
3.8.0
4.2.1
5.1.1
5.3.0 | C:\Modules\azure_\ | -| AzureRM | 2.1.0 [Installed]
3.8.0
4.2.1
5.1.1
6.7.0
6.13.1 | C:\Modules\azurerm_\ | +| Module | Version | Path | +| ------- | ----------------------------------------------------------------------------------------------- | ------------------------------ | +| Az | 1.0.0
1.6.0
2.3.2
2.6.0
3.1.0
3.5.0
3.8.0
4.3.0
4.4.0
4.6.0
4.7.0 | C:\Modules\az_\ | +| Azure | 2.1.0 [Installed]
3.8.0
4.2.1
5.1.1
5.3.0 | C:\Modules\azure_\ | +| AzureRM | 2.1.0 [Installed]
3.8.0
4.2.1
5.1.1
6.7.0
6.13.1 | C:\Modules\azurerm_\ | ``` Azure PowerShell module 2.1.0 and AzureRM PowerShell module 2.1.0 are installed and are available via 'Get-Module -ListAvailable'. All other versions are saved but not installed. ``` #### Powershell Modules -| Module | Version | -| ------------------ | ------------------ | -| DockerMsftProvider | 1.0.0.8 | -| MarkdownPS | 1.9 | -| Pester | 3.4.0
5.0.4 | -| PowerShellGet | 1.0.0.1
2.2.4.1 | -| PSWindowsUpdate | 2.2.0.2 | -| SqlServer | 21.1.18226 | -| VSSetup | 2.2.16 | +| Module | Version | +| ------------------ | --------------------------- | +| DockerMsftProvider | 1.0.0.8 | +| MarkdownPS | 1.9 | +| Pester | 3.4.0
5.0.4 | +| PowerShellGet | 1.0.0.1
2.2.4.1
2.2.5 | +| PSWindowsUpdate | 2.2.0.2 | +| SqlServer | 21.1.18228 | +| VSSetup | 2.2.16 | -### Android SDK Tools -| Package Name | Description | -| -------------- | ------------------------------------------- | -| platform-tools | Android SDK Platform-Tools, Revision 30.0.4 | -| tools | Android SDK Tools 26.1.1, Revision 26.1.1 | - -### Android SDK Platforms -`Location C:\Program Files (x86)\Android\android-sdk\platforms` -| Package Name | Description | -| ------------ | ------------------------------------------ | -| android-19 | Android SDK Platform 19, Revision 4 | -| android-21 | Android SDK Platform 21, Revision 2 | -| android-22 | Android SDK Platform 22, Revision 2 | -| android-23 | Android SDK Platform 23, Revision 3 | -| android-24 | Android SDK Platform 24, Revision 2 | -| android-25 | Android SDK Platform 25, Revision 3 | -| android-26 | Android SDK Platform 26, Revision 2 | -| android-27 | Android SDK Platform 27, Revision 3 | -| android-28 | Android SDK Platform 28, rev 6, Revision 6 | -| android-29 | Android SDK Platform 29, Revision 5 | -| android-30 | Android SDK Platform 30, Revision 3 | - -### Android SDK Build-Tools -`Location C:\Program Files (x86)\Android\android-sdk\build-tools` -| Package Name | Description | -| ------------------ | ---------------------------------------- | -| build-tools-19.1.0 | Android SDK Build-Tools, Revision 19.1.0 | -| build-tools-20.0.0 | Android SDK Build-Tools, Revision 20.0.0 | -| build-tools-21.1.2 | Android SDK Build-Tools, Revision 21.1.2 | -| build-tools-22.0.1 | Android SDK Build-Tools, Revision 22.0.1 | -| build-tools-23.0.1 | Android SDK Build-Tools, Revision 23.0.1 | -| build-tools-23.0.2 | Android SDK Build-Tools, Revision 23.0.2 | -| build-tools-23.0.3 | Android SDK Build-Tools, Revision 23.0.3 | -| build-tools-24.0.0 | Android SDK Build-Tools, Revision 24.0.0 | -| build-tools-24.0.1 | Android SDK Build-Tools, Revision 24.0.1 | -| build-tools-24.0.2 | Android SDK Build-Tools, Revision 24.0.2 | -| build-tools-24.0.3 | Android SDK Build-Tools, Revision 24.0.3 | -| build-tools-25.0.0 | Android SDK Build-Tools, Revision 25.0.0 | -| build-tools-25.0.1 | Android SDK Build-Tools, Revision 25.0.1 | -| build-tools-25.0.2 | Android SDK Build-Tools, Revision 25.0.2 | -| build-tools-25.0.3 | Android SDK Build-Tools, Revision 25.0.3 | -| build-tools-26.0.0 | Android SDK Build-Tools, Revision 26.0.0 | -| build-tools-26.0.1 | Android SDK Build-Tools, Revision 26.0.1 | -| build-tools-26.0.2 | Android SDK Build-Tools, Revision 26.0.2 | -| build-tools-26.0.3 | Android SDK Build-Tools, Revision 26.0.3 | -| build-tools-27.0.0 | Android SDK Build-Tools, Revision 27.0.0 | -| build-tools-27.0.1 | Android SDK Build-Tools, Revision 27.0.1 | -| build-tools-27.0.2 | Android SDK Build-Tools, Revision 27.0.2 | -| build-tools-27.0.3 | Android SDK Build-Tools, Revision 27.0.3 | -| build-tools-28.0.0 | Android SDK Build-Tools, Revision 28.0.0 | -| build-tools-28.0.1 | Android SDK Build-Tools, Revision 28.0.1 | -| build-tools-28.0.2 | Android SDK Build-Tools, Revision 28.0.2 | -| build-tools-28.0.3 | Android SDK Build-Tools, Revision 28.0.3 | -| build-tools-29.0.0 | Android SDK Build-Tools, Revision 29.0.0 | -| build-tools-29.0.1 | Android SDK Build-Tools, Revision 29.0.1 | -| build-tools-29.0.2 | Android SDK Build-Tools, Revision 29.0.2 | -| build-tools-29.0.3 | Android SDK Build-Tools, Revision 29.0.3 | -| build-tools-30.0.0 | Android SDK Build-Tools, Revision 30.0.0 | -| build-tools-30.0.1 | Android SDK Build-Tools, Revision 30.0.1 | -| build-tools-30.0.2 | Android SDK Build-Tools, Revision 30.0.2 | - -### Android Extra Packages -| Package Name | Version | -| -------------------------- | ------------ | -| Android Support Repository | 47.0.0 | -| Google Play services | 49 | -| Google Repository | 58 | -| NDK | 21.3.6528147 | +### Android +| Package Name | Version | +| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| Android SDK Platform-Tools | 30.0.4 | +| Android SDK Tools | 26.1.1 | +| Android SDK Platforms | android-30 (rev 3)
android-29 (rev 5)
android-28 (rev 6)
android-27 (rev 3)
android-26 (rev 2)
android-25 (rev 3)
android-24 (rev 2)
android-23 (rev 3)
android-22 (rev 2)
android-21 (rev 2)
android-20 (rev 2)
android-19 (rev 4) | +| Android SDK Build-tools | 30.0.0 30.0.1 30.0.2
29.0.0 29.0.1 29.0.2 29.0.3
28.0.0 28.0.1 28.0.2 28.0.3
27.0.0 27.0.1 27.0.2 27.0.3
26.0.0 26.0.1 26.0.2 26.0.3
25.0.0 25.0.1 25.0.2 25.0.3
24.0.0 24.0.1 24.0.2 24.0.3
23.0.1 23.0.2 23.0.3
22.0.1
21.1.2
20.0.0
19.1.0 | +| NDK | 21.3.6528147 | +| Android Support Repository | 47.0.0 | +| Google APIs | addon-google_apis-google-21
addon-google_apis-google-22
addon-google_apis-google-23
addon-google_apis-google-24 | +| Google Play services | 49 | +| Google Repository | 58 | +| SDK Patch Applier v4 | 1 | +| CMake | 3.10.2
3.6.4111459 | ### Cached Docker images - mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019 From 9b09e359e84f9b2cad1c97600d1bf8218b40ce02 Mon Sep 17 00:00:00 2001 From: Mikhail Timofeev <48208649+miketimofeev@users.noreply.github.com> Date: Thu, 8 Oct 2020 19:34:59 +0300 Subject: [PATCH 60/61] [Ubuntu 20] Switch docker-moby installation to prod channel (#1768) * remove condition * remove os.sh --- images/linux/scripts/installers/docker-moby.sh | 6 ------ 1 file changed, 6 deletions(-) diff --git a/images/linux/scripts/installers/docker-moby.sh b/images/linux/scripts/installers/docker-moby.sh index 49ef6a56..9ae7f8c8 100644 --- a/images/linux/scripts/installers/docker-moby.sh +++ b/images/linux/scripts/installers/docker-moby.sh @@ -7,12 +7,6 @@ set -e # Source the helpers for use with the script source $HELPER_SCRIPTS/install.sh -source $HELPER_SCRIPTS/os.sh - -# There is no stable docker-moby for Ubuntu 20 at the moment -if isUbuntu20 ; then - add-apt-repository "deb [arch=amd64,armhf,arm64] https://packages.microsoft.com/ubuntu/20.04/prod testing main" -fi # Check to see if docker is already installed docker_package=moby From 791e5997fd1fa81801a82c2dffe4edde7f9a19b9 Mon Sep 17 00:00:00 2001 From: Dibir Magomedsaygitov <61747324+dibir-magomedsaygitov@users.noreply.github.com> Date: Thu, 8 Oct 2020 21:44:51 +0300 Subject: [PATCH 61/61] [WIndows] Fix ssh-keyscan on win16 (#1751) * fix ssh-keyscan on win16 * minor change --- images/win/scripts/Installers/Install-Git.ps1 | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/images/win/scripts/Installers/Install-Git.ps1 b/images/win/scripts/Installers/Install-Git.ps1 index bec4ec1e..27a61969 100644 --- a/images/win/scripts/Installers/Install-Git.ps1 +++ b/images/win/scripts/Installers/Install-Git.ps1 @@ -38,8 +38,11 @@ Choco-Install -PackageName hub Add-MachinePathItem "C:\Program Files\Git\bin" -# Add well-known SSH host keys to ssh_known_hosts +if (Test-IsWin16) { + $env:Path += ";$env:ProgramFiles\Git\usr\bin\" +} +# Add well-known SSH host keys to ssh_known_hosts ssh-keyscan -t rsa github.com >> "C:\Program Files\Git\etc\ssh\ssh_known_hosts" ssh-keyscan -t rsa ssh.dev.azure.com >> "C:\Program Files\Git\etc\ssh\ssh_known_hosts"