TAP IDE Plugins
In TAP one of the key elements and interaction points with the platform, are the IDE plugins which currently exist for 3 IDES:
- Visual Studio Code
- IntelliJ
- Visual Studio
These plugins are the key interaction point that developers utilize on a day to day basis, in order to develop their applications with TAP enabled kubernetes clusters.
In every release of TAP, many advances are made in these plugins, making them more and more capable, feature rich, and user friendly.
Let’s take a look at the key new features in TAP 1.5 for the IDE plugins.
Visual Studio Code Extensions
In visual studio code, we have 2 extensions available for TAP:
- Developer Tools
- Application Accelerator
The Developer tools, is the extension which allows us to utilize the key features for inner loop development which includes live update functionality, and remote debugging of Java applications.
The application accelerator extension, brings the app accelerator catalog from TAP GUI, directly into our IDE, to allow developers to bootstrap new applications, directly from their IDE!
In TAP 1.5, the major changes were made to the Developer Tools plugin, so lets dig into it and see what the changes are!
Developer Tools Enhancements
This extension got a bunch of really awesome new features in this release.
- A new Tanzu Activity panel was added
- Multi namespace visibility
- Tanzu quick actions are available in the workload panel
Lets see what these enhancements provide.
Tanzu Activity Panel
TAP is an amazing platform, and the user interface of a workload YAML, is truly awesome. One of the key selling points and benefits of TAP, is that the developer really does not need to be a kubernetes expert in order to use the platform, as TAP deals with all the underlying steps, and manifest generation etc.
While this is true in most cases, we all know that errors can happen, and getting an understanding of what is happening under the hoods, is also a really important thing.
Previously, if a developer wanted to understand what resources were created, what failed, what the logs of the failed step are, what the error is, etc., would need to use the terminal and start using Tanzu and kubectl commands.
With this release of the extension, we now have a new panel in the IDE called the activity panel, which shows us the entire resource hierarchy of our workloads, in a clear an easily understandable way. It also allows us to see where the errors if there are any are to be found, and allows us to get the logs, describe a resource, and receive the error message itself from any of the relevant resources.
Lets see what this looks like:
You can receive a list of all the running workloads:
You can then drill down and see the 3 sections the resources are broken up into:
Running Application:
Supply Chain:
Delivery:
On any of these resources, we can also click and get the action menu:
This is a huge improvement, and makes debugging when needed a breeze!
Multi Namespace Visibility
Till TAP 1.5, workloads that were shown in the Workloads panel, and had errors visible in the Tanzu Debug panel, all were visualized from a single namespace, which is the namespace you were targeting via your kubeconfig.
While this in it of itself was already very nice, in TAP 1.5, we now can visualize workloads across multiple namespaces!
Lets see what this looks like.
In the Tanzu Workload panel, you can click the three dots at the tops and select the option to select namespaces:
This will open up an action bar at the top of the window where you can select a set of namespaces you want to view:
From this point on, workloads in any of the selected namespaces, are visualized for you automatically when you open up VSCode!
This brings a much wider perspective to the developer directly in their IDE, again enhancing the Developer experience.
Quick Actions From The Workloads Panel
Previously, actions such as starting live update, deleting a workload, starting remote debugging and applying a workload, all were done in the file viewer under the relevant workspace. With TAP 1.5, we can now run any of these actions also from the Tanzu Workloads panel, again just making it easier for the developer to run what they need when then need it, without jumping around to find exactly where to click!
IntelliJ Extension Enhancements
In IntelliJ, the major changes that were made are:
- A new Application Accelerator Plugin
- Multi Namespace Visibility
New Application Accelerator Plugin
Regarding the new Application Accelerator plugin, I have written a dedicated blog, regarding the new functionality in the application accelerator component of TAP with details of the new plugin and the UX, but here I will just mention, that we now have this plugin available to us, bridging the Gap between the VSCode experience and the IntelliJ experience, and bringing a truly amazing developer experience directly to the IDE, from the initial phase of project generation, all the way through deployment to kubernetes, and remote debugging of our apps on kubernetes.
Multi Namespace Visibility
This addition, similar to the enhancement in the VSCode extension, allows us to visualize workloads across multiple namespaces at the same time. This is a great enhancement, making the UX for developers much smoother.
From the current Tanzu Activity Panel, one ca now click on the settings icon and select the new "Select Namespaces" option:
We then will be presented with a popup list, where you can select the namespaces you want to see workloads from:
As can be seen, the UX is very intuitive, and this small but powerful feature makes the developer experience much smoother in real world scenarios.
Summary
As you can see, the enhancements in the IDE plugins, makes the end user interface with TAP, much smoother, and user friendly, helping in making TAP the ultimate DevEx platform!
I’m truly excited to see where the extensions move forwards in the upcoming releases!