Skip to content

Commit

Permalink
Merge pull request #109 from keirthana/1.23.0-rn-updates
Browse files Browse the repository at this point in the history
1.23.0 release notes and updates
  • Loading branch information
keirthana authored Aug 14, 2024
2 parents cc51255 + 3bf2199 commit f2b8615
Show file tree
Hide file tree
Showing 8 changed files with 208 additions and 28 deletions.
2 changes: 2 additions & 0 deletions .custom_wordlist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,7 @@ Livepatch
LLVMpipe
LMA
localhost
logcat
LTS
LXC
LXD
Expand Down Expand Up @@ -330,6 +331,7 @@ Uber
upscaling
FSR
FidelityFX
ubuntu
uSampler
vTextureCoord
vec
Expand Down
14 changes: 7 additions & 7 deletions howto/update/upgrade-anbox.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,10 +106,10 @@ If you don't run any of the services in a high availability configuration, upgra

To upgrade all charms, run the following commands:

juju refresh --channel=1.22/stable anbox-cloud-dashboard
juju refresh --channel=1.22/stable anbox-stream-gateway
juju refresh --channel=1.22/stable anbox-stream-agent
juju refresh --channel=1.22/stable coturn
juju refresh --channel=1.23/stable anbox-cloud-dashboard
juju refresh --channel=1.23/stable anbox-stream-gateway
juju refresh --channel=1.23/stable anbox-stream-agent
juju refresh --channel=1.23/stable coturn
juju refresh --channel=latest/stable nats

```{note}
Expand All @@ -122,19 +122,19 @@ Since the NATS charm has been overhauled to use the modern charm framework (Ops

The AMS service needs to be updated independently of the other service components to ensure minimal down time. The charm can be upgraded by running the following command.

juju refresh --channel=1.22/stable ams
juju refresh --channel=1.23/stable ams

### Upgrade LXD

As the last step, you have to upgrade the LXD cluster. Upgrading LXD will not restart running instances but it's recommended to take a backup before continuing.

As the first step, you need to upgrade the AMS node controller by running:

juju refresh --channel=1.22/stable ams-node-controller
juju refresh --channel=1.23/stable ams-node-controller

Once the upgrade is completed, you can continue upgrading LXD:

juju refresh --channel=1.22/stable lxd
juju refresh --channel=1.23/stable lxd

In some cases, specifically when you maintain bigger LXD clusters or want to keep a specific set of LXD nodes active until users have dropped, it makes sense to run the upgrade process manually on a per node basis. To enable this, you can set the following configuration option for the LXD charm before running the refresh command above:

Expand Down
65 changes: 65 additions & 0 deletions reference/component-versions.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,70 @@ This documents the versions of the different components for each Anbox Cloud rel

Not all components are updated with each release. When components are not updated, they are marked with `n/a` below.

## 1.23.0

### Charms

#### Ubuntu 22.04

| Name | Channel | Revision |
|----------|--------------|--------------|
| `anbox-cloud-dashboard` | `1.23/stable` | 449 |
| `ams-node-controller` (Deprecated) | `1.23/stable` | 457 |
| `coturn` | `1.23/stable` | 451 |
| `ams` | `1.23/stable` | 481 |
| `anbox-stream-gateway` | `1.23/stable` | 467 |
| `ams-lxd` | `1.23/stable` | 454 |
| `anbox-stream-agent` | `1.23/stable` | 462 |
| `nats` | `latest/stable` | 9 (AMD64), 11 (ARM64) |

#### Ubuntu 20.04 (Deprecated)

| Name | Channel | Revision |
|----------|--------------|--------------|
| `anbox-cloud-dashboard` | `1.23/stable` | 448 |
| `ams-node-controller` (Deprecated) | `1.23/stable` | 456 |
| `coturn` | `1.23/stable` | 450 |
| `ams` | `1.23/stable` | 480 |
| `anbox-stream-gateway` | `1.23/stable` | 466 |
| `ams-lxd` | `1.23/stable` | 454 |
| `anbox-stream-agent` | `1.23/stable` | 461 |
| `nats` | `latest/stable` | 10 (AMD64), 12 (ARM64) |

### Bundles

| Name | Channel | Revision |
|----------|--------------|--------------|
| `anbox-cloud` | `1.23/stable` | 240 |
| `anbox-cloud-core` | `1.23/stable` | 249 |

### Snaps

| Name | Channel | Version |
|----------|--------------|---------|
| `ams` | `1.23/stable` | 1.23.0 |
| `aar` | `1.23/stable` | 1.23.0 |
| `amc` | `latest/stable` | 1.23.0 |
| `ams-node-controller` (Deprecated) | `1.23/stable` | 1.23.0 |
| `anbox-cloud-dashboard` | `1.23/stable` | 1.23.0 |
| `anbox-stream-agent` | `1.23/stable` | 1.23.0 |
| `anbox-stream-gateway` | `1.23/stable` | 1.23.0 |
| `anbox-connect` | `latest/stable` | 1.23.0 |
| `anbox-cloud-appliance` | `1.23/stable` | 1.23.0 |

### Anbox images

The following Anbox images are available in two variants: one based on a container and one based on a virtual machine.

| Name | Version |
|----------|--------------|
| `jammy:android13:amd64` | 1.23.0 |
| `jammy:android13:arm64` | 1.23.0 |
| `jammy:android12:amd64` | 1.23.0 |
| `jammy:android12:arm64` | 1.23.0 |
| `jammy:aaos13:amd64` | 1.23.0 |
| `jammy:aaos13:arm64` | 1.23.0 |

## 1.22.2

### Charms
Expand All @@ -25,6 +89,7 @@ N/A
| `anbox-cloud-dashboard` | `1.22/stable` | 1.22.2 |
| `anbox-stream-agent` | `1.22/stable` | 1.22.2 |
| `anbox-stream-gateway` | `1.22/stable` | 1.22.2 |
| `anbox-cloud-appliance` | `1.22/stable` | 1.22.2 |


### Anbox images
Expand Down
23 changes: 17 additions & 6 deletions reference/deprecation-notices.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,27 @@

This document contains a list of deprecation notices for Anbox Cloud and its components.

## Node controller
*Deprecated in 1.23.0* ; *Removal in 1.24.0*

Use of node controller to manage the port forwarding from an instance to expose a service is deprecated in 1.23.0. Instead, the Anbox Management Service (AMS) will use a LXD proxy device to manage the port forwarding.

(sec-appliance-deprecation)=
## Anbox Cloud Appliance `epoch=0` snap
*Deprecated in 1.22.0* ; *Removal in 1.25.0*

The Anbox Cloud Appliance is being reworked. We will provide the new Anbox Cloud Appliance implementation using [Snap epochs](https://snapcraft.io/docs/snap-epochs).

The snap with `epoch=0` is the existing implementation that was deprecated in 1.22.0. Existing installations of the appliance will receive updates until Anbox Cloud 1.24.2.

Starting from 1.23.0, the snap with `epoch=1` will be the new implementation which is the default for new appliance installations. This implementation of the appliance will no longer use the Juju charmed operators internally but package all necessary service components directly within the snap. This helps to simplify the installation process and reduce overall footprint.

## Ubuntu 20.04 (focal)
*Deprecated in 1.22.0* ; *Removal in 1.24.0*

Support for Ubuntu 20.04 (focal) is deprecated in 1.22.0 and is planned to be removed in Anbox Cloud 1.24.0.

## EmuGL
*Deprecated in 1.22.0* ; *Removal in 1.23.0*

Support for the EmuGL renderer is deprecated in 1.22.0 and planned to be removed in Anbox Cloud 1.23.0. Starting with 1.22.0, VirGL will be the default renderer for NVIDIA GPUs with driver version 545 and later.

## Anbox Cloud Appliance

The Anbox Cloud Appliance is being reworked and the current implementation is deprecated in 1.22.0. Existing installations of the current implementation will receive updates until Anbox Cloud 1.24.2. Starting from 1.23.0, new installations will receive the new implementation of the appliance.

The new implementation of the appliance will no longer use the Juju charmed operators internally but package all necessary service components directly within the snap. This helps to simplify the installation process and reduce overall footprint.
102 changes: 102 additions & 0 deletions reference/release-notes/1.23.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
---
orphan: true
---
# 1.23.0

The Anbox Cloud team is pleased to announce the release of Anbox Cloud 1.23.0.

Please see [component versions](https://anbox-cloud.io/docs/reference/component-versions) for a list of updated components.

## New features & improvements

### Anbox Cloud Appliance
The Anbox Cloud Appliance is overhauled to deliver a much simpler and streamlined version. This new version of the appliance is made available using the [snap epoch feature](https://snapcraft.io/docs/snap-epochs). Existing installations of the appliance are not affected but the old snap with `epoch=0` is {ref}`deprecated <sec-appliance-deprecation>`. For all new installations of the appliance, use the `epoch=1` snap. See the [appliance installation tutorial](https://documentation.ubuntu.com/anbox-cloud/en/latest/tutorial/installing-appliance/) for instructions.

The `anbox-cloud-appliance` status command now displays the initialisation status of the appliance and its version. <!--AC-2513-->

### Seamless ADB connections

Anbox Cloud now offers a way to connect to remote Android instances securely using the Android Debug Bridge (ADB). You can set up an ADB connection using the dashboard or the CLI. See {ref}`howto-access-instance` for more information.

### Full support for AAOS

Android Automotive OS based images are fully supported starting from this release and no longer considered an experimental feature.<!--AC-2660-->

### Anbox Cloud dashboard

The Anbox Cloud dashboard has the following improvements:

* The *Instances* and the *Sessions* pages and their functionalities are merged to provide an enhanced user experience while creating and streaming an application.
* The initial VHAL values upon joining a stream are now captured as a default. You can revert to these values using the *Reset* button, while you are on the stream page.
* You can easily authorise ADB connections for any stream-enabled instance from the dashboard.

### Anbox Cloud charms

All Anbox Cloud charms now install Snaps directly from the Snap Store instead of using deb packages. Existing installations automatically switch to snap refresh from the store on upgrade.<!--AC-2523-->

### Android vendor image

The Android vendor images used in Anbox are now based on Android 14. Building on the latest version of Android helps us provide the latest updates and security fixes.

### Security updates

Android security updates for August 2024 (see [Android Security Bulletin - August 2024](https://source.android.com/docs/security/bulletin/2024-08-01) for more information).

### WebView updates

The Android WebView has been updated to [127.0.6533.84](https://chromereleases.googleblog.com/2024/07/chrome-for-android-update_30.html).

### Documentation

Our documentation is now hosted at [documentation.ubuntu.com](https://documentation.ubuntu.com/anbox-cloud/en/latest). Previous documentation links from the [earlier website](https://anbox-cloud.io) will be redirected to new targets.

The documentation source is hosted at the public [Anbox Cloud documentation repository on GitHub](https://github.com/canonical/anbox-cloud-docs). We welcome all contributions to the Anbox Cloud documentation using this repository. See [Contribute to Anbox Cloud documentation](https://documentation.ubuntu.com/anbox-cloud/en/latest/contribute/landing/) for more information.

## Removed functionality

Support for EmuGL is removed with this release.

## Deprecations

Use of a node controller to manage port forwarding from an instance is deprecated, starting with this release. In 1.23.0, the node controller will still be used for the full Anbox Cloud deployment. For the appliance, the Anbox Management Service (AMS) now uses a LXD proxy device to manage the port forwarding from an instance to expose a service externally or internally.

In the 1.24.0 release, the node controller will be fully replaced with LXD proxy device for both regular and appliance deployments.<!--AC--2487-->

## Known issues

* WiFi support is not available with any of the images. This issue will be fixed in the 1.23.1 release. <!--AC-2647-->
* No crash dump is generated for the `anbox session` or `container-manager` process when running an Anbox session on ARM64.
* Occasionally, the VHAL panel will not show up on AAOS streams. Reloading the stream page fixes the issue in most cases. In case it doesn't, restarting the instance will fix the issue.
* In a multi-cluster deployment that has more than one AMS, you cannot use a single web dashboard to control all the clusters in the deployment.
* When connecting to an Android instance using `anbox-connect <connection_url>`, you might occasionally encounter the following error:
```
Failed to communicate with the signaler: Failed to add ICE candidate: InvalidStateError: remote description is not set
```
Retrying the command resolves the issue.
* In the Anbox Cloud appliance, a service declared to be publicly available in the application manifest is not exposed publicly. If your deployment is behind a NAT, you can run the following command to overcome this issue:
```
amc node set lxd0 public-address <public-address-of-lxd0>
```
* Disabling GPU accelerated encoding (setting `video-encoder` to `software` in an application's manifest) for instances causes Anbox to fail on startup due to incorrectly linking the NVIDIA encoding libraries. See the [bug report on Launchpad](https://bugs.launchpad.net/anbox-cloud/+bug/2076893) for more information.
## Bug fixes
- [LP 2058004](https://bugs.launchpad.net/anbox-cloud/+bug/2058004) Deploying Anbox Cloud dashboard fails when using AMI that has a Ubuntu Pro subscription.
- [LP 2065281](https://bugs.launchpad.net/anbox-cloud/+bug/2065281) Android 13 unable to use Vulkan 1.3 despite Vulkan 1.3 being supported.
- [LP 2067314](https://bugs.launchpad.net/anbox-cloud/+bug/2067314) Current `amc shell` is a plain bash shell and will not source any common profile scripts.
- [LP 2067316](https://bugs.launchpad.net/anbox-cloud/+bug/2067316) The `pprof` endpoint exposed by AMS for profiling heap allocations does not expose `allocs` handler.
- [LP 2067252](https://bugs.launchpad.net/anbox-cloud/+bug/2067252) Incorrect `Error: api extension "zip_archive_support" not supported` error while creating an application.
- [LP 2069021](https://bugs.launchpad.net/anbox-cloud/+bug/2069021) Updating the AMS SDK to 1.21.0 prevents building the AMS client.
- [LP 2070252](https://bugs.launchpad.net/anbox-cloud/+bug/2070252) When running an Android application, the `SensorListener` runs into a hot loop and the following messages can be seen in the logs:
```
06-13 12:12:16.403 3221 3221 D SensorMonitor: Temperature Sensor value changed
06-13 12:12:16.408 3221 3221 D SensorMonitor: Temperature Sensor value changed
06-13 12:12:16.413 3221 3221 D SensorMonitor: Temperature Sensor value changed
```
- [LP 2072367](https://bugs.launchpad.net/anbox-cloud/+bug/2072367) When initialising the Anbox Cloud Appliance, if you provide an empty public address, invalid STUN/TURN server details are generated.
- [LP 2071903](https://bugs.launchpad.net/anbox-cloud/+bug/2071903) Stream gateway swagger API is missing `/1.0/sessions POST` documentation.
- [LP 2072955](https://bugs.launchpad.net/anbox-cloud/+bug/2072955)
## Upgrade instructions
See [Upgrade Anbox Cloud](https://anbox-cloud.io/docs/howto/update/upgrade-anbox) or [Upgrade the Anbox Cloud Appliance](https://anbox-cloud.io/docs/howto/update/upgrade-appliance) for instructions on how to update your Anbox Cloud deployment to the 1.23.0 release.
24 changes: 12 additions & 12 deletions reference/release-notes/release-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,31 +10,31 @@ The following dates for upcoming releases are not final and could vary depending

| Tentative Release date | Planned release version |
|----|----|
| August 14 2024 | Anbox Cloud 1.23.0 |
| September 18 2024 | Anbox Cloud 1.23.1 |
| October 16 2024 | Anbox Cloud 1.23.2 |
| November 14 2024 | Anbox Cloud 1.24.0 |

## Recent releases

| Release date | Release notes |
|----|----|
| July 18 2024 | [Anbox Cloud 1.22.2](https://discourse.ubuntu.com/t/46495) |
| August 14 2024 | [Anbox Cloud 1.23.0](1.23.0.md) |
| July 18 2024 | [Anbox Cloud 1.22.2](1.22.2.md) |
| June 13 2024 | [Anbox Cloud 1.22.1](1.22.1.md) |
| May 15 2024 | [Anbox Cloud 1.22.0](1.22.0.md) |

### What's new in 1.22.x?
### What's new in 1.23.x?

Along with bug fixes and general improvements, Anbox Cloud 1.22.x includes:
Along with bug fixes and general improvements, Anbox Cloud 1.23.x includes:

* Support for 64-bit only systems
* Support for custom images
* Support for Vulkan 1.3 for Android 13 images
* VirGL as the default renderer
* Stream-enabled instance creation
* Upgrade to NVIDIA 550 driver series
* Support for pointer lock
* VHAL enhancements
* Improved Anbox Cloud Appliance
* Seamless ADB connections to remote Android instances
* Dashboard improvements
- Merge of sessions and instances pages
- Ability to authorise ADB connections
* Improved documentation delivery
* Android 14 based vendor images
* Reworked charms that install snaps from the snap store
* Android security updates

## Older releases
Expand Down
2 changes: 1 addition & 1 deletion reference/roadmap.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,6 @@ Anbox Cloud follows a defined release cycle with frequent minor and patch releas

| Release | Target Date | What to expect|
|---------|-------------|---------------|
| 1.23.0 | August 14 2024 | * Improvements to VHAL support<br/> *Overhaul of Anbox Cloud Appliance snap<br/> * AAOS enhancements<br/> * Support for multiple subclusters in the web dashboard<br/> * Android security updates for August 2024<br/> * Bug fixes|
| 1.23.1 | September 18 2024 | * Android security updates for September 2024<br/> * Bug fixes |
| 1.23.2 | October 16 2024 | * Android security updates for October 2024<br/> * Bug fixes |
| 1.24.0 | November 13 2024 | * VHAL improvements<br/> * Android 14 images<br/> * Support for additional upscaling algorithms in the streaming SDK<br/> * Android security updates for November 2024<br/> * Reworked charms<br/> * Bug fixes
4 changes: 2 additions & 2 deletions reference/supported-versions.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ Anbox Cloud currently officially supports only the most recent release. Older re

To ensure you receive latest security updates and bug fixes you should upgrade to a new release of Anbox Cloud shortly after it was released.

Current release: **1.22**
Current release: **1.23**

Next release: **1.23** (scheduled for August 2024)
Next release: **1.24** (scheduled for November 2024)

See the {ref}`ref-roadmap` for details on the exact schedule of upcoming Anbox Cloud versions.

Expand Down

0 comments on commit f2b8615

Please sign in to comment.