Skip to main content

odo v3.14.0 Released

· 6 min read

odo v3.14.0 is now out!

To install odo, follow the installation guide.

Notable Changes


odo dev Web UI out of the experimental mode

The odo web User Interface, which was previously available experimentally, is now out of the experimental mode. This means that it will be exposed and available out of the box whenever a Dev Session is started with odo dev, regardless of the experimental mode status.

This web UI currently aims at providing a simplified way to:

  1. understand the Devfile and how odo interprets it.
  2. edit the Devfile and tailor it to your project needs.

It is still a work in progress; so we are looking for feedback to improve it.

To use it, just start odo dev (regardless of the target platform) and navigate to the URL displayed in the output (or retrievable via the odo describe component command).

Example Output
$ odo dev --platform podman                                                                                                                                                                    

↪ Running on podman in Dev mode
✓ Web console accessible at http://localhost:20000/
✓ API Server started at http://localhost:20000/api/v1
✓ API documentation accessible at http://localhost:20000/swagger-ui/
✓ Deploying pod [13s]
✓ Syncing files into the container [2s]
✓ Executing post-start command in container (command: 0-install-yarn) [1s]
✓ Building your application in container (command: doc-install-deps) [25s]
• Executing the application (command: doc-start) ...
✓ Waiting for the application to be ready [1s]
- Forwarding from -> 3000

↪ Dev mode
Watching for changes in the current directory /home/user/project

Web console accessible at http://localhost:20000/

Keyboard Commands:
[Ctrl+c] - Exit and delete resources from podman
[p] - Manually apply local changes to the application on podman

Support for Volumes in the odo Web UI

It is now possible to create Volumes in the odo Web UI and also to specify volume mounts from the Containers tab:

Add Volume

Add Volume Mount

--filter in odo registry now supports a list of terms

When running odo registry --filter, you can now pass a list of terms to filter the results. --filter is now a comma-separated list of terms for filtering, and search is done using a logical AND against the name or description or supported architectures of the Devfile Stacks.

Example Output
$ odo registry --filter s390x,java

java-maven DefaultDevfileRegistry Java application based on Maven 3.6 and ... 1.2.0
java-openliberty DefaultDevfileRegistry Java application based on Java 11 and Ma... amd64, ppc64le, s390x 0.9.0
java-openliberty-gradle DefaultDevfileRegistry Java application based on Java 11, Gradl... amd64, ppc64le, s390x 0.4.0
java-quarkus DefaultDevfileRegistry Java application using Quarkus and OpenJ... 1.3.0
java-springboot DefaultDevfileRegistry Spring Boot using Java 1.2.0, 2.0.0
java-vertx DefaultDevfileRegistry Java application using Vert.x and OpenJD... 1.2.0
java-websphereliberty DefaultDevfileRegistry Java application based Java 11 and Maven... amd64, ppc64le, s390x 0.9.0
java-websphereliberty-gradle DefaultDevfileRegistry Java application based on Java 11 and Gr... amd64, ppc64le, s390x 0.4.0
java-wildfly DefaultDevfileRegistry JakartaEE application using WildFly 1.1.0, 2.0.0
java-wildfly-bootable-jar DefaultDevfileRegistry Java application using WildFly in bootab... 1.1.0

Filtering devfile stacks based on the architecture field in metadata when running odo init

When running odo init either interactively or non-interactively, the supported architectures declared in the Devfile are now handled.

In the interactive mode, odo init now allows you to pick the architectures you want or displays it from the Devfile suggested for your project.

Example Output
$ odo init
Interactive mode enabled, please answer the following questions:
✓ Determining a Devfile for the current directory [603ms]
⚠ Could not determine a Devfile based on the files in the current directory: No valid devfile found for project in /tmp/test2
? Select architectures to filter by: [Use arrows to move, space to select, <right> to all, <left> to none, type to filter]
> [x] amd64
[ ] arm64
[ ] ppc64le
[ ] s390x

In the non-interactive mode, odo init allows you to specify the architectures using a repeatable --architecture option.

Example Output
$ odo init --name my-app --devfile nodejs \
--architecture amd64 \
--architecture s390x


Your new component 'my-app' is ready in the current directory.
To start editing your component, use 'odo dev' and open this folder in your favorite IDE.
Changes will be directly reflected on the cluster.

Detailed Changelog

As with every release, you can find the full list of changes and bug fixes on the GitHub release page.

Full Changelog


  • Move UI out of experimental mode #7012 (feloy)
  • [ui] Create/Delete volumes #7029 (feloy)
  • Set Save button on top, enable it only when devfile changed #7015 (feloy)
  • odo init filters devfile stacks by supported architectures #7004 (feloy)
  • Do not display API logs by default #7008 (feloy)



  • Update README main title and display preview video #7037 (rm3l)
  • Update home page preview video with support of Podman #7023 (rm3l)
  • Update Quickstart Guides with Podman support #7016 (rm3l)
  • Document how to change the dev container image pull policy #7014 (rm3l)
  • Use image selector feature in "Deploying application" guides #7013 (rm3l)

Merged pull requests:

Contributing to odo

If odo interests you, and you would like to contribute to it, we welcome you!

You can contribute to odo in a lot of different ways!

Take it for a spin 🚘 and report back bugs🐞 that you encountered, or features🌟 that you would like to see.

Help us with the documentation📜, or tell us how you used odo 🖍.

Review the PRs👀, or help us fix a failing test 🚩.

Work on the TODOs📝, or help us cleanup the code🚮.

Or, simply tune in📻 to our contributor calls and learn more about odo.

odo is your playground!

Read the developer reference guide on contributing to odo to know more.