-
Notifications
You must be signed in to change notification settings - Fork 144
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update zAppBuild to support IDE passed dependency information (#141)
* added -df/--dependencyFile parameter and add to buildProperties * added functionality to check properties for userBuildDependencyFile, if present, skip dep resolution and copy files over to dependencyPDS line by line as listed in file * added conversion to absolute paths if paths are provided as relative to workspace * updated print description for user build dependency file * added some verbose statements to print the json file * added conversion to absolute paths if paths are provided as relative to workspace * removed scanner creation is userbuild && userbuild dep file is provided Co-authored-by: Luke Burgess <[email protected]>
- Loading branch information
1 parent
8971bed
commit 5dd529a
Showing
6 changed files
with
192 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
## User Build Dependency File | ||
|
||
In order to increase performance of User Build running on ZD&T, the IDEs can **optionally** pass dependency information about the program being built to zAppBuild allowing it to skip running dependency resolution which depending on the size and number of build dependencies the program references can be time consuming on ZD&T platforms. | ||
|
||
### Dependency File Option | ||
Providing the following option when calling *build.groovy* will skip scanning and dependency resolution within zAppBuild. | ||
|
||
--dependencyFile <pathToFile> | ||
-df <pathToFile> | ||
If not provided, zAppBuild will run the traditional scan and dependency resolution on the build file. | ||
If it is provided, zAppBuild will skip scanning and resolution and refer to the dependencies and information from the file. | ||
|
||
### Dependency File Location | ||
|
||
The location of the user build dependency file on USS is unimportant, as long as that path is correctly specified when passing the **-\-dependencyFile \<path>** option to zAppBuild. | ||
|
||
### Additional Resources | ||
View the user build dependency file schema and a sample file using the links below. | ||
##### [Dependency File Schema](schema.json) | ||
##### [Sample Dependency File](sample.json) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
{ | ||
"fileName": "/u/burgess/dbb/dbb-zappbuild/samples/MortgageApplication/cobol/epscmort.cbl", | ||
"isCICS": true, | ||
"isSQL": true, | ||
"isDLI": false, | ||
"isMQ": false, | ||
"dependencies": [ | ||
"/u/burgess/dbb/dbb-zappbuild/samples/MortgageApplication/copybook/epsmtcom.cpy", | ||
"/u/burgess/dbb/dbb-zappbuild/samples/MortgageApplication/copybook/epsnbrpm.cpy", | ||
"MortgageApplication/copybook/epsmtinp.cpy", | ||
"MortgageApplication/copybook/epsmtout.cpy" | ||
], | ||
"schemaVersion": "1.0" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
{ | ||
"$schema": "http://json-schema.org/draft-06/schema#", | ||
"definitions": { | ||
"UserBuildDependencyFile": { | ||
"type": "object", | ||
"additionalProperties": false, | ||
"properties": { | ||
"fileName": { | ||
"description": "Represents the absolute or relative path (from the sandbox) of the source file to build. This field should include the file extension (if applicable) and is case sensitive. ", | ||
"type": "string" | ||
}, | ||
"isCICS": { | ||
"type": "boolean", | ||
"description": "Represents the existence of EXEC CICS statements in the program or its listed dependencies.", | ||
"default": "false" | ||
}, | ||
"isSQL": { | ||
"type": "boolean", | ||
"description": "Represents the existence of EXEC CICS statements in the program or its listed dependencies.", | ||
"default": "false" | ||
}, | ||
"isDLI": { | ||
"type": "boolean", | ||
"description": "Represents the existence of EXEC CICS statements in the program or its listed dependencies.", | ||
"default": "false" | ||
}, | ||
"isMQ": { | ||
"type": "boolean", | ||
"description": "Represents the existence of EXEC CICS statements in the program or its listed dependencies.", | ||
"default": "false" | ||
}, | ||
"dependencies": { | ||
"description": "An array of strings representing the list of program dependencies as paths. ", | ||
"type": "array", | ||
"minItems": 0, | ||
"uniqueItems": true, | ||
"items": { | ||
"description": "The absolute or relative path (from the sandbox) to a program dependency. Each entry should include the file extension (if applicable) and is case sensitive. ", | ||
"type": "string" | ||
} | ||
}, | ||
"schemaVersion": { | ||
"description": "Represents the schema version of this JSON structure. ", | ||
"type": "string", | ||
"default": "1.0" | ||
} | ||
}, | ||
"required": [ | ||
"fileName", | ||
"isCICS", | ||
"isSQL", | ||
"isDLI", | ||
"isMQ", | ||
"dependencies", | ||
"schemaVersion" | ||
|
||
], | ||
"title": ".userbuilddependencyfile" | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters