Skip to content

Commit b8f48e2

Browse files
authored
Merge pull request #649 from IBM/develop
Release zAppBuild 3.12.0
2 parents f4ba62d + 6dc6eae commit b8f48e2

32 files changed

+240
-124
lines changed

.gitattributes

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,5 +19,6 @@
1919
*.json zos-working-tree-encoding=utf-8 git-encoding=utf-8
2020
*.yaml zos-working-tree-encoding=utf-8 git-encoding=utf-8
2121

22-
# TAZ recording file
22+
# binary managed files
2323
*.rec binary
24+
*.png binary

CONTRIBUTIONS.md

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
# Contribution Guidelines
2+
23
* Read and agree to the [Developer Certificate of Origin](https://github.com/IBM/dbb-zappbuild/blob/development/DCO1.1.txt) document.
3-
* Fork and Create a Pull Request
4-
* Fork the dbb-zappbuild repo, create a new topic branch from development and apply your changes there. Create a Pull Request from your topic branch against the dbb-zappbuild development branch.
4+
* Fork this repository and Create a Pull Request
5+
* Fork the dbb-zappbuild repo, create a new topic branch from `main` and apply your changes there. Create a Pull Request from your topic branch against the dbb-zappbuild `main` branch.
56
* Limit each Pull Request to one enhancement or bug fix. Don't bundle multiple enhancements/changes (e.g. a new enhancement and a fix to an existing sample) into a single Pull Request - create one PR for the new enhancement, and a separate PR for the fix.
6-
* For complex changes, try to squash your changes into a single commit. Don't create a PR consisting of 20 commits that show your work in progress. Before you create the PR, squash your changes into a single commit.
7+
* For complex changes, try to squash your changes into a single commit. Don't worry if you have missed that, the reviewer can squash the commits when merging your PR.
78
* Send an email to drbruce@us.ibm.com with a link to the Pull Request and the following statement:
8-
```
9-
DCO 1.1 signed-off-by: Random J Developer random@developer.org.
10-
```
9+
10+
```
11+
DCO 1.1 signed-off-by: Random J Developer random@developer.org.
12+
```
13+
1114
* The contribution will be reviewed by a member of the IBM Dependency Based Build development team.

README.md

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,30 @@
22

33
zAppBuild is a generic build solution for building z/OS applications using Apache Groovy build scripts and IBM Dependency Based Build (DBB) APIs.
44

5+
IBM Dependency Based Build version 3.0 has introduced the zBuilder build framework - allowing your build configuration to be defined in YAML. This is an alternative build approach to zAppBuild. For further information see [Getting Started Guide for zBuilder](https://www.ibm.com/docs/en/adffz/dbb/3.0.0?topic=zbuilder-getting-started).
6+
57
## Resources
68

79
* [IBM Dependency Based Build Product Page](https://www.ibm.com/products/dependency-based-build)
8-
* [IBM DBB Knowledge Center](https://www.ibm.com/docs/en/adffz/dbb/3.0.0)
10+
* [IBM Docs](https://www.ibm.com/docs/en/adffz/dbb/latest)
911
* [IBM/dbb Repository](https://github.com/IBM/dbb/)
10-
* [IBM IDZ Community](https://community.ibm.com/community/user/ibmz-and-linuxone/groups/topic-home?CommunityKey=f461c55d-159c-4a94-b708-9f7fe11d972b)
11-
* [IBM DBB Community](https://community.ibm.com/community/user/ibmz-and-linuxone/groups/topic-home?CommunityKey=20c9b889-9450-4ab6-8f11-8a5eb2b3342d)
12-
12+
* [IBM/dbb-git-migration-modeler Repository](https://github.com/IBM/dbb-git-migration-modeler/)
13+
* [IBM Development and Pipeline Community](https://community.ibm.com/community/user/ibmz-and-linuxone/groups/topic-home?CommunityKey=f461c55d-159c-4a94-b708-9f7fe11d972b)
1314

1415
## Contributing
1516

1617
For instructions on how to contribute enhancements and bug fixes to zAppBuild, please read the [Contributions Guidelines](CONTRIBUTIONS.md).
1718

19+
## zAppBuild releases
20+
21+
zAppBuild publishes [releases](https://github.com/IBM/dbb-zappbuild/releases) with a New & Noteworthy summary via Github's release capability.
22+
23+
Contributions are reviewed and then merged into branch `main`. The maintainers of the repository will create a [release](https://docs.github.com/en/repositories/releasing-projects-on-github/managing-releases-in-a-repository) when the contents qualifies for a new release and the state of the repository passed the [zAppBuild test framework](test/).
24+
25+
The [version.properties](version.properties) file contains the recent version number, and is displayed when running zAppBuild with `--verbose` output option.
26+
27+
You'll find a [discussion](https://github.com/IBM/dbb-zappbuild/discussions) page for each zAppBuild release.
28+
1829
## How zAppBuild works
1930

2031
The zAppBuild repository is intended to be cloned to a single location on Unix Systems Services (USS) and used to build all of your z/OS applications. Global configuration properties are configured in the properties files in the [build-conf](build-conf/) directory. Specifying application-level properties is done by simply copying the supplied `application-conf` folder (located in the [samples folder](samples)) to the application source repository you want to build and then verify/update the contained default configuration property values to ensure they meet the build requirements of your application. See the included [MortgageApplication](samples/MortgageApplication) sample for an example of an application that has been modified to be built by zAppBuild.

build.groovy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -592,7 +592,7 @@ def createBuildList() {
592592
println("** Deleting collection ${props.applicationOutputsCollectionName}")
593593
metadataStore.deleteCollection(props.applicationOutputsCollectionName)
594594
}
595-
impactUtils.updateCollection(buildSet, null, null)
595+
impactUtils.updateCollection(buildSet, null, null, null)
596596
}
597597
// check if impact build
598598
else if (props.impactBuild) {

docs/GettingStarted.md

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ Here are the steps to make the zAppBuild repository available in a central repos
2222
1. In the terminal, navigate to the folder where you would like to clone the repository.
2323
2. Retrieve the Git repository URL or SSH path from IBM's public [zAppBuild repository](https://github.com/IBM/dbb-zappbuild):
2424

25-
![Retrieving the Git repository URL from IBM's public zAppBuild repository](../static/img/dbb-zappbuild-code.png)
25+
![Retrieving the Git repository URL from IBM's public zAppBuild repository](../img/code.png)
2626
3. In your terminal, enter the command for cloning the repository. (The following command uses the Git repository URL, but the SSH path can also be used if you have SSH keys set up.):
2727

2828
```shell
@@ -31,7 +31,7 @@ Here are the steps to make the zAppBuild repository available in a central repos
3131

3232
- Example Git clone command with output in a terminal:
3333

34-
![Example Git clone command with output in a terminal](../static/img/dbb-zappbuild-clone-output.png)
34+
![Example Git clone command with output in a terminal](../img/clone-output.png)
3535
3. Follow the instructions of your Git provider to push the contents of your newly-cloned local repository (from Step 2) to the central repository on your Git provider (created in Step 1). (Note: Exact instructions may vary from Git provider to Git provider.)
3636
1. Within the terminal session, execute the following commands to push an existing Git repository:
3737
- Replace `<existing_repo>` with the path to your newly-cloned local repository.
@@ -48,7 +48,7 @@ Here are the steps to make the zAppBuild repository available in a central repos
4848
2. On the Git provider's webpage for your new central repository in the browser, you will find that the repository is now populated with all of zAppBuild's files and history, just like on IBM's public [zAppBuild](https://github.com/IBM/dbb-zappbuild) repository.
4949
- The following screenshot shows an example of a populated central zAppBuild repository with GitLab as the Git provider:
5050
51-
![Example of a populated central zAppBuild repository in GitLab's web UI](../static/img/dbb-zappbuild-pushed.png)
51+
![Example of a populated central zAppBuild repository in GitLab's web UI](../img/pushed.png)
5252

5353
## Updating your customized version of zAppBuild
5454

@@ -58,7 +58,7 @@ Once you have a clone of zAppBuild in your Git provider, you can customize the p
5858
2. Add a new Git remote definition to connect to IBM's official public zAppBuild GitHub repository. (Note: This step requires internet connectivity.)
5959
1. First, list the remotes by issuing `git remote -v`:
6060

61-
![Output from initial listing of the remote tracked repositories](../static/img/dbb-zappbuild-remote-v1.png)
61+
![Output from initial listing of the remote tracked repositories](../img/remote-v1.png)
6262

6363
- For more on Git remotes, see the [git-remote](https://git-scm.com/docs/git-remote) documentation.
6464

@@ -70,36 +70,31 @@ Once you have a clone of zAppBuild in your Git provider, you can customize the p
7070

7171
3. Verify that the new remote is available by issuing the command to list the remotes again: `git remote -v`:
7272

73-
![Output from listing the remote tracked repositories after adding the zappbuild-official remote](../static/img/dbb-zappbuild-remote-v2.png)
73+
![Output from listing the remote tracked repositories after adding the zappbuild-official remote](../img/remote-v2.png)
7474

7575
4. Fetch the latest information from the official repository, by executing a Git fetch for the official dbb-zappubuild repository:
7676

7777
```shell
7878
git fetch zappbuild-official
7979
```
8080

81-
![Output from Git fetch of the zappbuild-official remote](../static/img/dbb-zappbuild-fetch.png)
81+
![Output from Git fetch of the zappbuild-official remote](../img/fetch.png)
8282

8383
5. Make sure that your feature branch is checked out, before attempting to merge the changes from zappbuild-official. To merge the changes run into your branch `update-zappbuild`, run the following command:
8484

8585
```shell
8686
git merge zappbuild-official/main
8787
```
8888

89-
![Merge conflict when attempting to merge in changes from zappbuild-official](../static/img/dbb-zappbuild-conflict.png)
89+
![Merge conflict when attempting to merge in changes from zappbuild-official](../img/conflict.png)
9090

9191
Potentially, you face merge conflicts. In the above case, the merge processor could not automatically resolve the `utilities/ImpactUtilities.groovy`.
9292

9393
Run the command `git status` to see which files changed:
9494

95-
![Output of Git status to view files changed during the merge attempt](../static/img/dbb-zappbuild-status.png)
96-
95+
![Output of Git status to view files changed during the merge attempt](../img/status.png)
9796
6. Open the unmerged files and resolve them manually. Either use the terminal, or an IDE for this task.
9897

99-
:::tip
100-
10198
The Git integration in many modern IDEs (for example, VS Code) is able to provide a side-by-side comparison highlighting the diff between your feature branch and the incoming changes from the merge attempt (in this case, from `zappbuild-official`). This can help make manual resolution of any merge conflicts much easier.
10299

103-
:::
104-
105100
7. Commit the changes and verify them with a sample application before committing it (or opening a pull request to commit it) to your main branch that is used for all your production DBB builds.

docs/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ This folder contains supplemental documentation to help explain the implementati
44

55
|File|Description|
66
|-|-|
7+
|[Getting Started](GettingStarted.md)|Getting started guidance to maintain zAppBuild in a customer's Git provider|
78
|[Build Management](BUILD.md)|Documentation of the main and start build script `build.groovy`, reference of the command line options of the build script and documentation of the build scenarios supported by zAppBuild |
89
|[Build Property Management](FilePropertyManagement.md)|Documentation on managing default and overriding build properties for specific application files|
910
|[Reporting Capabilities](REPORTS.md)|Documentation of zAppBuild reporting capabilities like reporting external impacted file and reporting of concurrent changes|
68.1 KB
Loading
31.2 KB
Loading
57.2 KB
Loading
71.4 KB
Loading

0 commit comments

Comments
 (0)