Code Pipeline External Function Process Enhancement
This section explains the Code Pipeline External Function Processor Enhancement.
Background Information
For Code Pipeline’s Promotion Analysis and Build functions to work properly, Code Pipeline needs accurate and complete “generate impact” information. To collect this information, the source must be parsed. Code Pipeline currently parses your source at the following times:
- When you generate a source member (if the Code Pipeline DNA Facility is in use).
- When you promote an include file (if the Code Pipeline DNA Facility is in use).
- When you promote a source member or include file (if the Code Pipeline DNA Facility is not in use and parsing is enabled).
- When you manually trigger a parse (M.CR panel in ISPF).
The current parsing methodology can lead to inaccurate or incomplete information. The following scenarios describe how this can occur.
Scenario #1
- Initially, COBOL program PROGA makes use of copybook COPYA.
- Initially, COBOL program PROGB makes use of copybook COPYB.
- A Code Pipeline for Eclipse user changes PROGA and now it also uses copybook COPYB.
- A Code Pipeline for Eclipse user also changes copybook COPYB.
- A Code Pipeline for Eclipse user does a Build on COPYB.
Until PROGA is parsed, Code Pipeline is unaware of the relationship between COPYB and PROGA. As a result, the Build will only compile PROGB.
Scenario #2
- Using the same initial program relationships from Scenario #1, a Code Pipeline for Eclipse user updates PROGA to also use COPYB and updates COPYB.
- The Code Pipeline for Eclipse user does a Git commit, causing the two changed files to be uploaded to Code Pipeline on the mainframe.
- The Code Pipeline for Eclipse user does a Build on COPYB.
Again, until PROGA is parsed, the Build will only compile PROGB.
Scenario #3
- Using the same initial program relationships from Scenario #1, a Code Pipeline for Eclipse user updates PROGA to also use COPYB and updates COPYB.
- The Code Pipeline for Eclipse user compiles PROGA and PROGB because both use COPYB.
- The Code Pipeline for Eclipse user runs Generate Impacts (GI) or Promotion Analysis (PA) against COPYB.
If the Code Pipeline DNA Facility is not in use, until PROGA is parsed, only PROGB will be identified by GI and PA.
The Solution
The Code Pipeline External Function Processor Enhancement allows the Code Pipeline administrator to set a series of options that cause Code Pipeline to parse the source when a Code Pipeline for Eclipse user saves the source member, or a member is uploaded (for example, for a Git Commit operation).
The files are parsed using the standard Code Pipeline parsers. If you are using the Code Pipeline DNA Facility, you cannot use the Code Pipeline External Function Processor Enhancement to parse source members because the Code Pipeline DNA Facility disables the standard Code Pipeline parsers.