This is a major Ubuntu images update that might break some builds. Changes at a glance:
- Ubuntu 20.04 (Focal Fossa) image;
- Qt is now pre-installed on all Ubuntu images;
- .NET Core SDKs are unified across Ubuntu images with outdated versions removed;
- LLVM 10 is now pre-installed on all images;
- Updated versions of Node.js, Golang, Ruby, Python and other frameworks and tools;
- Image baking scripts were cleaned up and improved to be more consistent across multiple Ubuntu versions.
Ubuntu 20.04 (Focal Fossa)
ubuntu2004
image is available now. Give it a try and let us know how it worked!
ubuntu
image is still pointing to Ubuntu 18.04. There are no plans to switch defaultubuntu
image to Ubuntu 20.04 at the moment.
While we were able to pre-install most of the software available on 16.04 and 18.04 images Ubuntu 20.04 is still quite new OS and some packages are not ready, or not compatible, or work with quirks:
- PowerShell Core - manually installed to
/opt/microsoft/powershell/7-focal
with/usr/bin/pwsh
link; - .NET Core SDKs were installed from 18.04 feed with hack. Manual way is also possible.
- .NET Core SDKs 2.1.202 and 1.1.14 were not installed because of OpenSSL 1.0 dependency;
- VirtualBox is installed from Bionic repo, but the test is not passing;
- RVM was not able to pull/build Ruby 2.0, 2.1, 2.2 and 2.3;
- Mono 6.10.0.103 installed from Preview channel;
- Microsoft SQL Server is not supported on Ubuntu 20.04 yet;
- Azure CLI installed from Bionic repo;
- Firefox installed from Bionic repo.
Qt
Qt is now pre-installed on all Ubuntu images.
There are two versions available:
- 5.14.2 in
$HOME/Qt/5.14.2/gcc_64/bin
- 5.12.8 in
$HOME/Qt/5.12.8/gcc_64/bin
Similar to Windows images there are links created for latest and major versions:
$HOME/Qt/latest
$HOME/Qt/5.14
$HOME/Qt/5.12
Python
Starting this image update we are going to maintain only the latest patch version of every Python release with “minor” links to the latest patches:
- Python 3.9.0a6:
$HOME/venv3.9.0
and$HOME/venv3.9
- Python 3.8.2:
$HOME/venv3.8.2
and$HOME/venv3.8
- Python 3.7.7:
$HOME/venv3.7.7
and$HOME/venv3.7
- Python 3.6.10:
$HOME/venv3.6.10
and$HOME/venv3.6
- Python 3.5.9:
$HOME/venv3.5.9
and$HOME/venv3.5
- Python 3.4.10:
$HOME/venv3.4.10
and$HOME/venv3.4
- Python 2.7.18:
$HOME/venv2.7.18
and$HOME/venv2.7
- Python 2.6.9:
$HOME/venv2.6.9
and$HOME/venv2.6
Use stack: python <version>
in appveyor.yml
to activate required Python virtual environment, for example: stack: python 3.8
.
Versions removed: 3.8.0
, 3.8.1
, 3.7.0
3.7.1
3.7.2
3.7.3
3.7.4
3.7.5
.
Docker updates
Docker is now installed with docker.io
package.
Versions updates:
- Docker 19.03.8
- kubectl 2020.04.21
CMake 3.17.1 Git 2.26.2
Node.js
- Node v14.2.0
- Node v13.14.0
- Node v12.16.3
- Node v10.20.1
- Yarn 1.22.4
Ruby
- Ruby 2.4.9
- Ruby 2.5.7
- Ruby 2.6.5
Golang
- Go 1.13.10
- Go 1.14.2
JDK
- OpenJDK 14.0.1
- OpenJDK 15 early access 10
.NET Core SDK (Runtime)
- .NET Core SDK 5.0.100-preview.3 (v5.0.0-preview.3 runtime) - Preview
- .NET Core SDK 3.1.201 (3.1.3 runtime) - LTS
- .NET Core SDK 3.0.103 (3.0.3 runtime) - EOL
- .NET Core SDK 2.2.402 (2.2.8 runtime) - EOL
- .NET Core SDK 2.1.805 (2.1.17 runtime) - LTS
- .NET Core SDK 2.1.202 (2.0.9 runtime) - EOL
- .NET Core SDK 1.1.14 (1.1.13, 1.0.16 runtimes) - EOL
Other updates
- Azure CLI 2.5.0
- Firefox 76.0
- Google Chrome 81.0.4044
- GCC 4.8.5 (Ubuntu 16.04 only)
- GCC 5.5.0 (Ubuntu 16.04 only)
- GCC 6.5.0 (Ubuntu 16.04 only)
- GCC 7.5.0
- GCC 8.4.0
- GCC 9.3.0
- Clang 9.0.1
- Clang 10.0.0 (default, set with update-alternatives)
- Erlang 22.3.2
- VirtualBox 6.1.6
Previous worker images
There are build worker images available from previous deployment. You can use them in case of any issues with the current images:
Previous Ubuntu
Previous Ubuntu1604
Previous Ubuntu1804
You can select build worker image in “Build worker image” dropdown on Environment tab of project settings or if you use appveyor.yml
:
image: Previous Ubuntu