Developers love command-line productivity. We get that. This article describes how odo, a developer-focused command-line interface (CLI) for Red Hat OpenShift and Kubernetes, simplifies cloud-native development.
odo supports fast, iterative development and lets developers focus on what's most important to them—code. The odo 3.0 GA release provides new and improved user experience and security. This new release also allows developers to automatically detect bindable resources, making it easier to connect applications to services.
6 ways odo 3.0 GA improves the developer experience
The following sections describe six odo 3.0 GA features and commands that improve the developer experience.
1. Interactive commands
odo has new interactive commands to help developers with the discoverability of capabilities. Many odo commands provide an interactive and direct mode. In interactive mode, enter the command without options, and then you get a prompt for responses. In direct mode, enter the full command, including options, and there are no prompts provided.
2. The odo init command
Now, developers can use
odo init. Version 3.0 can auto-detect your source code and inject the appropriate language/framework template. Alternatively, you can begin with a starter project quickly.
3. The odo dev command
Start development on your application with
odo dev to deploy the app to the cluster in dev mode. This command watches for changes in your local folder and automatically redeploys them to your cluster, allowing you to see real-time updates as you code.
odo dev runs in the foreground until the user hits Ctrl+C. It continuously watches the directory for any new changes (including the changes occurring in the Devfile) and automatically syncs them with the application running on the cluster.
4. The odo deploy command
Run the outer loop of your development cycle with
odo deploy. Use
odo deploy for the following scenarios:
- You are working in a production environment.
- The application is ready for public viewing.
- You require building and pushing the container.
- You need custom Kubernetes YAML for your production environment.
5. The odo add binding command
odo add binding to connect to an operator-backed service in any namespace. This command has an interactive mode that lists bindable services across all the namespaces and a way to customize the related configuration, providing a fast and easy experience for connecting to a service. Currently, the bindable services listed are operator-backed services that support binding via the service binding operator. To learn more about the operators supported by the service binding operator, refer to its README.
6. odo works with OpenShift and Kubernetes
Last but not least, odo works with OpenShift or any Kubernetes cluster. You pick! We have even added aliases to match the mental models that worked with OpenShift or Kubernetes.
OpenShift developers can use the following commands:
odo create project
odo list project
odo set project
odo delete project
The following commands may resonate better on Kubernetes:
odo create namespace
odo list namespace
odo set namespace
odo delete namespace
Ready to try odo 3.0?
OpenShift Toolkit for IDEs on Visual Studio Code and IntelliJ will soon support these new odo development workflows. Stay tuned for updates later this month.
For more information about odo 3.0 GA, check out the following resources: