Skip to content

Commit

Permalink
Merge pull request #360 from IBM/develop
Browse files Browse the repository at this point in the history
Release zAppBuild 3.3.0
  • Loading branch information
dennis-behm authored Jul 13, 2023
2 parents 85e0df0 + 17a4b4d commit 9beaa58
Show file tree
Hide file tree
Showing 45 changed files with 974 additions and 1,178 deletions.
3 changes: 0 additions & 3 deletions build-conf/Assembler.properties
Original file line number Diff line number Diff line change
Expand Up @@ -59,9 +59,6 @@ assembler_eqalangx=EQALANGX
assembler_pgm=ASMA90
assembler_linkEditor=IEWBLINK

# ASM scanner language hint
dbb.DependencyScanner.languageHint=ASM :: **/*.asm, **/*.mac

#
# additional libraries for assembler SYSLIB concatenation, comma-separated, see definitions in application-conf
# assembler_assemblySyslibConcatenation=
Expand Down
4 changes: 0 additions & 4 deletions build-conf/Cobol.properties
Original file line number Diff line number Diff line change
Expand Up @@ -62,10 +62,6 @@ cobol_compileErrorFeedbackXmlOptions=tracks space(200,40) dsorg(PS) blksize(2799
# List of output datasets to document deletions
cobol_outputDatasets=${cobol_loadPDS}

#
# COBOL scanner language hint
dbb.DependencyScanner.languageHint=COB :: **/*.cbl, **/*.cpy

#
# Set filter used to exclude certain information from the link edit scanning.
# The value contains a comma separated list of patterns.
Expand Down
3 changes: 0 additions & 3 deletions build-conf/DBDgen.properties
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,3 @@ dbdgen_linkEditor=IEWBLINK
# DBDlib Deploy Type
#
dbdgen_deployType=DBDLIB

# dbdgen scanner language hint
dbb.DependencyScanner.languageHint=ASM :: **/*.asm, **/*.mac, **/*.psb
4 changes: 0 additions & 4 deletions build-conf/PLI.properties
Original file line number Diff line number Diff line change
Expand Up @@ -59,10 +59,6 @@ pli_compileErrorFeedbackXmlOptions=tracks space(200,40) dsorg(PS) blksize(27998)
# List of output datasets to document deletions
pli_outputDatasets=${pli_loadPDS},${pli_dbrmPDS}

#
# PL/I scanner language hint
dbb.DependencyScanner.languageHint=PLI :: **/*.pli, **/*.inc, **/*.cpy

#
# additional libraries for compile SYSLIB concatenation, comma-separated, see definitions in application-conf
# pli_compileSyslibConcatenation=
Expand Down
3 changes: 0 additions & 3 deletions build-conf/PSBgen.properties
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,3 @@ psbgen_linkEditor=IEWBLINK
# PSBlib Deploy Type
#
psbgen_deployType=PSBLIB

# psbgen scanner language hint
dbb.DependencyScanner.languageHint=ASM :: **/*.asm, **/*.mac, **/*.psb
39 changes: 25 additions & 14 deletions build-conf/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,24 +37,40 @@ General properties used mainly by `build.groovy` but can also be a place to decl
Property | Description
--- | ---
buildPropFiles | Comma separated list of additional build property files to load. Supports both absolute and relative file paths. Relative paths assumed to be relative to `zAppBuild/build-conf/`.
applicationDefaultPropFiles | Comma separated list of default application configuration property files to load. Supports both absolute and relative file paths. Relative paths assumed to be relative to `zAppBuild/build-conf/`.
buildListFileExt | File extension that indicates the build file is really a build list.
languagePropertyQualifiers | List of language script property qualifiers. Each language script property has a unique qualifier to avoid collision with other language script properties.
applicationConfRootDir | Alternate root directory for application-conf location. Allows for the deployment of the application-conf directories to a static location. Defaults to ${workspace}/${application}
createBuildOutputSubfolder | Option to create a subfolder with the build label within the build output dir (outDir). Default: true.
buildOutputTSformat | Defines the build timestamp format for build output subfolder and build label.
requiredDBBToolkitVersion | Minimum required DBB ToolkitVersion to run this version of zAppBuild.
requiredBuildProperties | Comma separated list of required build properties for zAppBuild/build.groovy. Build and language scripts will validate that *required* build properties have been set before the script runs. If any are missing or empty, then a validation error will be thrown.
formatConsoleOutput | Flag to log output in table views instead of printing raw JSON data
impactBuildOnBuildPropertyChanges | Boolean property to activate impact builds on changes of build properties within the application repository
impactBuildOnBuildPropertyList | List of build property lists referencing which language properties should cause an impact build when the given property is changed
continueOnScanFailure | Determine the behavior when facing a scanner failure. true (default) to continue scanning. false will terminate the process.
createBuildOutputSubfolder | Option to create a subfolder with the build label within the build output dir (outDir). Default: true.
documentDeleteRecords | Option determine if the build framework should document deletions of outputs in DBB Build Report. Default: false. Requires DBB Toolkit 1.1.3 and higher.
generateDb2BindInfoRecord | Flag to control the generation of a generic DBB build record for a build file to document the configured db2 bind information (application-conf/bind.properties). Default: false ** Can be overridden by a file property.
dbb.file.tagging | Controls compile log and build report file tagging. Default: true.
dbb.LinkEditScanner.excludeFilter | DBB configuration property used by the link edit scanner to exclude load module entries
metadataStoreType | DBB MetadataStore Type configuration property. Valid options are 'file' or 'db2'. Default: file
metadataStoreFileLocation | DBB File MetadataStore location. Default: $USER
metadataStoreDb2Url | DBB configuration property for Db2 URL. ***Can be overridden by build.groovy option -url, --url***
metadataStoreDb2ConnectionConf | DBB configuration property for Db2 configuration properties file.
dbb.gateway.type | DBB configuration property to determine which gateway type is used for the build process
dbb.gateway.procedureName | Interactive gateway Procedure Name
dbb.gateway.accountNumber | Interactive gateway Account Number
dbb.gateway.groupId | Interactive gateway Group ID
dbb.gateway.regionSize | Interactive gateway Region Size
dbb.gateway.logLevel | Interactive gateway Log Level

### defaultzAppBuildConf.properties
General application properties used by zAppBuild.

Property | Description
--- | ---
dbb.scannerMapping | DBB PropertyMapping specifying the scanner implementation to be used
gitRepositoryCompareService | Service URL for the Git provider to record a link to the git provider for a visual comparison of two hashes
continueOnScanFailure | Determine the behavior when facing a scanner failure. true (default) to continue scanning. false will terminate the process.
formatConsoleOutput | Flag to log output in table views instead of printing raw JSON data on verbose output
generateDb2BindInfoRecord | Flag to control the generation of a generic DBB build record for a build file to document the configured db2 bind information (application-conf/bind.properties). Default: false ** Can be overridden by a file property.
generateDb2BindInfoRecordProperties | Comma-separated list of the bind parameters to be added to the DBB build record.
impactBuildOnBuildPropertyChanges | Boolean property to activate impact builds on changes of build properties within the application repository
impactBuildOnBuildPropertyList | List of build property lists referencing which language properties should cause an impact build when the given property is changed
documentDeleteRecords | Option determine if the build framework should document deletions of outputs in DBB Build Report. Default: false.
dbb.LinkEditScanner.excludeFilter | DBB configuration property used by the link edit scanner to exclude load module entries

### dependencyReport.properties
Properties used by the impact utilities to generate a report of external impacted files
Expand Down Expand Up @@ -90,7 +106,6 @@ assembler_compileErrorFeedbackXmlOptions | BPXWDYN creation options for SYSXMLSD
assembler_outputDatasets | List of output datasets to document deletions ** Can be overridden by a file property.
assembler_pgm | MVS program name of the high level assembler
assembler_linkEditor | MVS program name of the link editor
dbb.DependencyScanner.languageHint | DBB configuration property used by the dependency scanner to disambiguate a source file's language
assembler_dependenciesDatasetMapping | DBB property mapping to map dependencies to different target datasets

### BMS.properties
Expand Down Expand Up @@ -140,7 +155,6 @@ cobol_linkEditor | MVS program name of the link editor
cobol_dependenciesAlternativeLibraryNameMapping | a map to define target dataset definition for alternate include libraries
cobol_dependenciesDatasetMapping | dbb property mapping to map dependencies to different target datasets

dbb.DependencyScanner.languageHint | DBB configuration property used by the dependency scanner to disambiguate a source file's language

### LinkEdit.properties
Build properties used by zAppBuild/language/LinkEdit.groovy
Expand Down Expand Up @@ -188,7 +202,6 @@ pli_outputDatasets | List of output datasets to document deletions ** Can be ov
pli_listOptions | BPXWDYN creation options for LIST data sets
pli_dependenciesAlternativeLibraryNameMapping | a map to define target dataset definition for alternate include libraries
pli_dependenciesDatasetMapping | dbb property mapping to map dependencies to different target datasets
dbb.DependencyScanner.languageHint | DBB configuration property used by the dependency scanner to disambiguate a source file's language

### MFS.properties
Build properties used by zAppBuild/language/MFS.groovy
Expand Down Expand Up @@ -226,7 +239,6 @@ dbdgen_outputDatasets | List of output datasets to document deletions ** Can be
dbdgen_pgm | MVS program name of the high level assembler
dbdgen_linkEditor | MVS program name of the link editor
dbdgen_deployType | Deploy Type of build outputs
dbb.DependencyScanner.languageHint | DBB configuration property used by the dependency scanner to disambiguate a source file's language

### PSBgen.properties
Build properties used by zAppBuild/language/PSBgen.groovy
Expand All @@ -247,7 +259,6 @@ psbgen_outputDatasets | List of output datasets to document deletions ** Can be
psbgen_pgm | MVS program name of the high level assembler
psbgen_linkEditor | MVS program name of the link editor
psbgen_deployType | Deploy Type of build outputs
dbb.DependencyScanner.languageHint | DBB configuration property used by the dependency scanner to disambiguate a source file's language

### ACBgen.properties
Build properties used by zAppBuild/language/PSBgen.groovy; ACBgen is part of the PSBgen process
Expand Down
4 changes: 0 additions & 4 deletions build-conf/REXX.properties
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,6 @@ rexx_printTempOptions=cyl space(5,5) unit(vio) blksize(133) lrecl(133) recfm(f,b
# List of output datasets to document deletions
rexx_outputDatasets=${rexx_cexecPDS},${rexx_loadPDS}

#
# rexx scanner language hint
dbb.DependencyScanner.languageHint=rexx :: **/*.rexx

#
# Set filter used to exclude certain information from the link edit scanning.
# The value contains a comma separated list of patterns.
Expand Down
114 changes: 30 additions & 84 deletions build-conf/build.properties
Original file line number Diff line number Diff line change
@@ -1,19 +1,27 @@
# Build properties used by build.groovy
#######################################################################
# build.properties configuration to specify
# global build properties for zAppBuild
#
#######################################################################


#######################################################################
# Global build properties used by zappbuild
#

#
# Comma separated list of additional build property files to load
# Supports both relative path (to zAppBuild/build-conf/) and absolute path
buildPropFiles=datasets.properties,dependencyReport.properties,Assembler.properties,BMS.properties,MFS.properties,PSBgen.properties,DBDgen.properties,ACBgen.properties,Cobol.properties,LinkEdit.properties,PLI.properties,REXX.properties,ZunitConfig.properties,Transfer.properties

#
# file extension that indicates the build file is really a build list or build list filter
buildListFileExt=txt
# Comma separated list of default application configuration property files to load
# Supports both relative path (to zAppBuild/build-conf/) and absolute path
applicationDefaultPropFiles=defaultzAppBuildConf.properties

#
# Service URL for the Git provider to have a visual comparision of two hashes
# Leveraged as a build result property <props.gitRepositoryURL>/compare/
# samples: GitHub : /compare/ ; GitLab : /-/compare/
gitRepositoryCompareService=/compare/
# file extension that indicates the build file is really a build list or build list filter
buildListFileExt=txt

#
# Alternate root directory for application-conf locations. Allows for the deployment of
Expand Down Expand Up @@ -42,74 +50,6 @@ gitRepositoryCompareService=/compare/
# Defaults to ${workspace}
applicationConfRootDir=

#
# Minimum required DBB ToolkitVersion to run this version of zAppBuild
# Build initialization process validates the DBB Toolkit Version in use and matches that against this setting
requiredDBBToolkitVersion=2.0.0

#
# Comma separated list of required build properties for zAppBuild/build.groovy
requiredBuildProperties=buildOrder,buildListFileExt

#
# Flag to log output in table views instead of printing raw JSON data
# default = false
formatConsoleOutput=false

#
# impactBuildOnBuildPropertyChanges controls if impact calculation should analyze
# build property changes for COBOL, PLI, ASM.
# default = false
impactBuildOnBuildPropertyChanges=false

#
# list of build property lists referencing which language properties should cause an impact build when the given property is changed
# properties need to be managed in property files within the application repository to detect the change; applies only to impact builds
# general pattern: langPrefix_impactPropertyList, optional: langPrefix_impactPropertyListCICS and langPrefix_impactPropertyListSQL
impactBuildOnBuildPropertyList=[${assembler_impactPropertyList},${assembler_impactPropertyListCICS},${assembler_impactPropertyListSQL},${bms_impactPropertyList},${cobol_impactPropertyList},${cobol_impactPropertyListCICS},${cobol_impactPropertyListSQL},${dbdgen_impactPropertyList},${linkedit_impactPropertyList},${mfs_impactPropertyList},${pli_impactPropertyList},${pli_impactPropertyListCICS},${pli_impactPropertyListSQL},${psbgen_impactPropertyList}]

# createTestcaseDependency controls if a dependency should be set up between the testcase
# and the corresponding application program. If this property set to true, a dependency
# to the program is created for the testcase, which is then impacted by a change
# of the program. In this case, the testcase is recompiled everytime the program is modified.
# When set to false, the testcase is not impacted by the change of the program.
# Default: false
createTestcaseDependency=false

# generateDb2BindInfoRecord controls if zAppBuild generates a generic DBB build record for a build file
# to document the configured db2 bind options (application-conf/bind.properties) .
# This allows to pass the information into the packaging step and on to your deployment manager, like UCD.
# Implemented in Assembler.groovy, Cobol.groovy and PLI.groovy
# See also generateDb2BindInfoRecordProperties for the list of properties which are documented
# Default: false
generateDb2BindInfoRecord=false

# generateDb2BindInfoRecordProperties is a comma-separated list of existing bind parameters configured to zAppBuild.
# See application-conf/bind.properties for available properties.
generateDb2BindInfoRecordProperties=bind_collectionID,bind_packageOwner,bind_qualifier

# dbb.file.tagging controls compile log and build report file tagging. If true, files
# written as UTF-8 or ASCII are tagged.
# If the environment variable _BPXK_AUTOCVT is set ALL, file tagging may have an
# adverse effect if viewing log files and build report via Jenkins.
# In this case, set dbb.file.tagging to false or comment out the line. Default: true
dbb.file.tagging=true

# Set filter used to exclude certain information from the link edit scanning.
# The value contains a comma separated list of patterns.
# example: A filter of *.SUB1, *.SUB2 will exclude modules SUB1 and SUB2
# from any dataset. To exclude member HELLO in PDS TEST.ASM will
# be matched by the pattern TEST.ASM.HELLO. The pattern TEST.ASM.*
# will match any member in the data set TEST.COBOL.
# The following filter excludes CICS and LE Library references.
dbb.LinkEditScanner.excludeFilter = ${SDFHLOAD}.*, ${SCEELKED}.*

#
# Determine the behavior when facing a scanner failure
# 'true' proceeds with the build and report the a warning (default)
# 'false' will terminate the build process
continueOnScanFailure=true

#
# Determine if a subfolder with a timestamp should be created in the buildOutDir location.
# Applies to all build types except userBuild
Expand All @@ -123,14 +63,20 @@ createBuildOutputSubfolder=true
buildOutputTSformat=yyyyMMdd.HHmmss.mmm

#
# Flag to determine if the build framework should document deletions of outputs in DBB Build Report
# for build files being mapped to language scripts
#
# Requires the DBB toolkit 1.1.3 or higher. Backward compatibility of zAppBuild is preserved,
# when feature is turned off
# Minimum required DBB ToolkitVersion to run this version of zAppBuild
# Build initialization process validates the DBB Toolkit Version in use and matches that against this setting
requiredDBBToolkitVersion=2.0.0

#
# Default : false
documentDeleteRecords=false
# Comma separated list of required build properties for zAppBuild/build.groovy
requiredBuildProperties=buildOrder,buildListFileExt

# dbb.file.tagging controls compile log and build report file tagging. If true, files
# written as UTF-8 or ASCII are tagged.
# If the environment variable _BPXK_AUTOCVT is set ALL, file tagging may have an
# adverse effect if viewing log files and build report via Jenkins.
# In this case, set dbb.file.tagging to false or comment out the line. Default: true
dbb.file.tagging=true

# MetadataStore configuration properties:

Expand All @@ -145,12 +91,12 @@ metadataStoreType=file
#metadataStoreDb2Url=jdbc:db2:<Db2 server location>

# Db2 connection configuration property file
# Sample is povided at $DBB_HOME/conf/db2Connection.conf
# Sample is povided at $DBB_HOME/conf/db2Connection.conf
#metadataStoreDb2ConnectionConf=


# The dbb.gateway.type property determines which gateway type is used for the entire build process
# Possible values are 'legacy' and 'interactive. Default if not indicated is 'legacy'
# Possible values are 'legacy' and 'interactive'. Default if not indicated is 'legacy'
dbb.gateway.type=legacy

# Procedure Name - specified with the procname parameter
Expand Down
Loading

0 comments on commit 9beaa58

Please sign in to comment.