IBM / zopeneditor-about

IBM Z Open Editor: File issues here!
https://ibm.github.io/zopeneditor-about
Apache License 2.0
47 stars 25 forks source link

A way to configure for which files the User Build action is available/enabled #351

Open dennis-behm opened 12 months ago

dennis-behm commented 12 months ago

I would like to see a new setting to configure the visibility of the DBB User Build Action in Z Open Editor.

Today, the action is only available on a predefined set of files, but DBB builds can occur on various files and basically any file extension. Let's provide a configuration to the users, either through settings and/or the ZAPP file.

FALLAI-Denis commented 12 months ago

I confirm that all our mainframe artifacts managed in Git repositories, and therefore handled by IBM ZOE, are subject to User Build, even if this User Build is a simple "transfer" for zAppbuild.

Following this User Build we must chain a deployment action on a test environment, confer our issue:

For now we've been considering creating our own VS Code extension to handle User Builds by calling the IBM User Build commands exposed by IBM ZOE, but we'd prefer ZOE to do this natively.

For information, we will also explore the possibilities of IBM Wazi Deploy to manage deployments. It would be interesting for us if there was a continuity of actions between the different tools: IBM Z Open Editor / IBM Dependency Based Build / IBM Wazi Deploy.

James-Cockshott commented 11 months ago

This is also a very important feature for us to have. We are currenlty using the DBB process in IDZ to create custom automation to validate and translate some JCL. Since developers want the choice of IDE, the feature of running UserBuilds on types such as JCL, SYSN, JPRO etc are very important in VScode.

Our current process is:

  1. User rightclicks on a file
  2. Run a userbuild via the drop down menu
  3. This then runs some groovy scripts by hooking into the build.groovy / Transfer.groovy files.
  4. Validate & Translate JCL
  5. return logs back to the user etc

Hence the option to run the 'DBB UserBuild' process should be available for any type needed. Perhaps a setting should be added so users can run userbuilds for file extensions they chose.

For example how you can add Include file extensions for PL1 in the zopeneditor vscode extension settings.

Eric-Dev-Ops commented 9 months ago

Just to add to the above; I work for a customer engaged with IBM on its DevOps Acceleration Program, and this would also be an important function for our use-case that we would love to see as part of the product.

dennis-behm commented 5 months ago

Easter Egg to enable the User Build action for alternative file extensions?

I don't know the implications of this, but I still would prefer to have this enhancement being implemented soon.

Here is the tweak:

This enables the user build action for my lnk file.

image

FALLAI-Denis commented 5 months ago

Hi,

I think that « IBM User Build » should be a separate VS Code (Theia) extension with its own « activate » event in package.json.

As « IBM User Build » relate to IBM Dependency Bases Build, this extension could be named « IBM User Build for IBM Dependency Based Build ».

This new extension should also manage « application-conf» folder with dedicated editors, (syntax textmate, validation, auto completion…) and all other facilities to manage informations need by zAppbuild and DBB.

That said, this extension should cooperate with IBM Z Open Editor to identify the artifacts required to process the User Build (copybooks, includes, macros...). Transferring these artifacts to the build workspace would remain the responsibility of this new extension. IBM Z Open Editor would therefore be a prerequisite extension to this new extension, (like Zowe Explorer is a prerequisite extension to IBM Z Open Editor). Cooperation also in sharing information carried by the zapp file.

This separation of functionalities into two extensions, even if they remain dependent, would lighten the weight of the IBM Z Open Editor extension which is starting to become significant (it also includes the interface for WatsonX for Z). This would also allow functionalities to evolve more independently.

This new extension should be highly customizable to adapt to the customization of the zAppbuild application which can be done by customers of the IBM DBB solution, or perhaps even more of a framework for developing a User Build type extension, more than a real extension.

Subject to making public the function allowing the listing of the artifacts required to process the User Build, and the provision of a development framework for a proprietary User Build extension, would also make it possible to respond to our issues:

JamesWRC commented 4 months ago

Hi,

I would create a PR to propose this very simple feature.. but funnily enough zopeneditor isnt actually open.

I created a script that enables this. For anyone who cant wait for IBM to get around to properly implement this you can find a script that will patch a users zopeneditor plugin install.

https://gist.github.com/JamesWRC/85bf4e49a4a3d2f0a9a153500acf91ea

All this does is:

Then add a block in your settings.json like so:

{
    "extraUserBuildExt": [".jcl", ".sysn", ".example"]
}