IBM / dbb-zappbuild

zAppBuild is a generic build solution for building z/OS applications using Apache Groovy build scripts and IBM Dependency Based Build (DBB) APIs.
Apache License 2.0
40 stars 140 forks source link

Print details of logical file in human readable format #339

Closed dennis-behm closed 12 months ago

dennis-behm commented 1 year ago

When processing the build list in the language scripts, the details of the logical file should be printed including all defined attribute overrides (cics, sql, dli, mq flag) in a human readable format.

Something like :

*** Building MortgageApplication/cobol/epscmort.cbl
| ------ - ----- - ----- - ----- |
| File attributes:               |
| ------ - ----- - ----- - ----- |
| CICS   |  SQL  |  DLI  |  MQ   |
| ------ | ----- | ----- | ----- |
|   x    |   x   |       |       |

Looking for additional suggestions

donnellt commented 1 year ago

I like the idea of exposing these flags as verbose output, whether with println or a table. Since these flags can be set either by the scanner or via a property override, I think it would be desirable to indicate how they were set. If I understand the table correctly, an x indicates the scanner set that flag to true. And if I understand our conversation regarding how it was set, you suggested an * next the the x to indicate the flag was set true by a property override. I'm Okay with that. I wonder if we could reduce the number of rows to a single line.

File attributes: CICS=Yes, SQL=Yes*, DLI=No, MQ=No

Where: SQL=Yes* - Indicates override by the property file.

dennis-behm commented 1 year ago

Thanks @donnellt , yes - I agree with your suggestion. A single line seems easier and produces less messages than the table.

dennis-behm commented 1 year ago

Here is a preview of verbose output:

*** Building file MortgageApplication/cobol/epscsmrt.cbl
*** Resolution rules for MortgageApplication/cobol/epscsmrt.cbl:
search:/u/dbehm/userBuild/?path=MortgageApplication/copybook/*.cpy
/u/dbehm/userBuild>
*** Physical dependencies for MortgageApplication/cobol/epscsmrt.cbl:
{"excluded":false,"sourceDir":"\/u\/dbehm\/userBuild\/","lname":"EPSMTCOM","library":"SYSLIB","file":"MortgageApplication\/copybook\/epsmtcom.cpy","category":"COPY","resolved":true}
{"excluded":false,"sourceDir":"\/u\/dbehm\/userBuild\/","lname":"EPSMTINP","library":"SYSLIB","file":"MortgageApplication\/copybook\/epsmtinp.cpy","category":"COPY","resolved":true}
{"excluded":false,"sourceDir":"\/u\/dbehm\/userBuild\/","lname":"EPSMTOUT","library":"SYSLIB","file":"MortgageApplication\/copybook\/epsmtout.cpy","category":"COPY","resolved":true}
{"excluded":false,"sourceDir":"\/u\/dbehm\/userBuild\/","lname":"EPSPDATA","library":"SYSLIB","file":"MortgageApplication\/copybook\/epspdata.cpy","category":"COPY","resolved":true}
File attributes: CICS=true*, SQL=false, DLI=false, MQ=false
Cobol compiler parms for MortgageApplication/cobol/epscsmrt.cbl = LIB,CICS,ADATA,EX(ADX(ELAXMGUX))
Link-Edit parms for MortgageApplication/cobol/epscsmrt.cbl = MAP,RENT,COMPAT(PM5)
donnellt commented 1 year ago

@dennis-behm I like it. Another tool in the tool box to assist the app developers and support.

dennis-behm commented 12 months ago

Delivered via zAppBuild Release 3.2.0 (#354)