Synchronize Elements from Endevor Directly to your VS Code Workspace

Zachariah Mullen
Modern Mainframe
Published in
4 min readNov 14, 2022

The recent release of the Explorer for Endevor version 1.3.0 brought with it an exciting and experimental (more on that later) feature called Workspace Sync.

With Workspace Sync, you can now synchronize elements from an Endevor inventory location directly to your VS Code workspace.

You can edit the elements, compare and discard or accept changes, and then push your changes back to Endevor, all using the standard file explorer and source control management views in the workspace.

If this sounds familiar, the Workspace Sync feature in Explorer for Endevor utilizes the commands available in the Endevor plug-in for Zowe CLI. Michal Vasak provides an excellent overview of the CLI experience in his blog here.

Read on to understand how to enable this feature, what you need to get started, and how best to leverage it for your work.

Experimental? How do I enable it?

Workspace Sync introduces a new paradigm and workflow for Explorer for Endevor, in that developers no longer have to work in the view specific to the extension. Instead, they stay where they normally work, in their workspace.

Synchronized Endevor workspace in the File Explorer view
Synchronized Endevor workspace in the Source Control view

Just as Workspace Sync provides a new perspective to working with Explorer for Endevor, it also provides a lot greater power, simply in the sense that you can synchronize an inventory location to your workspace and also push multiple changed elements to Endevor with the click of a button.

For these reasons, and simply because it is the first iteration, we have made the feature experimental and something that the user must enable in the extension Settings.

Enabling Sync Workspace from the Extensions view.

What do I need to get started?

Chances are, besides turning on the feature, you probably already have what you need to synchronize a workspace. Workspace Sync allows you to choose from among your previously created Endevor and Endevor location profiles in Explorer for Endevor, no matter the type.

As a reminder, you can work with profiles of all types, from Zowe V1 to Zowe V2 with a team configuration, or profiles created in the extension itself. Once you have profiles, you are largely ready to go.

To jump right in, open a Visual Studio Code window and click Initialize an Endevor Workspace. Select a folder where you want to work with your Endevor inventory location.

Initialize an opened folder as an Endevor workspace

Then click the Synchronize Workspace button in the Source Control view and select an Endevor profile and location in the command palette. Also provide the CCID or comment if they are not already specified in your location profile.

Synchronize a workspace using the Source Control view

Once you have specified the location, your elements will be synchronized to the workspace and you can start working.

A workspace with a synchronized Endevor inventory location in the File Explorer view

A good first use case

We recommend that you try out the Workspace Sync feature by working with an Endevor sandbox or subsystem where you have just a handful of elements.

As a reminder, you can even prepare your sandbox using the Generate with copyback command in the classic view of Explorer for Endevor.

Quickly copying back an element to the sandbox using Explorer for Endevor view

We hope that you enjoy working with Endevor elements in your VS Code workspace just the way you would any other files!

If you need any help or wish to provide feedback, use the Submit an Extension Issue icon (the person in front of a screen) at the top of the Explorer for Endevor extension view. This will connect you with the public GitHub repo for our project. Feel free to reach out to me directly as well. (zachariah.mullen@broadcom.com)

Thanks to Roman Kupriyanov for his contributions to this blog!

Additional Resources

Should you wonder about the CLI implementation or profiles, see the following blogs:

Also check out the many modernization resources on the Endevor page.

--

--

Zachariah Mullen
Modern Mainframe

Product Owner at the Broadcom Mainframe R&D Centre in Prague.