Milestone 12: Starting the Started Tasks
This milestone invokes the Code Pipeline Started Tasks.
Memory considerations
Code Pipeline needs to run in LE 31-bit memory mode. If you know you are running in LE 31-bit memory mode, then nothing additional needs to be done to CM.
If you are unsure of the default Language Environment (LE) settings, you can do the following to determine what you have. You will need to add a CEEOPTS DD card to the CM proc. An example of a suitable data set would be the one that holds their SDEFREFR member.
The member should contain the following:
This will cause LE to write out all the options and memory usage statistics for every subtask that uses LE to DD SYSOUT. (It will dynamically allocate this DD.)
Add the DD, stop CM, start CM, remove the DD after data is captured, stop CM, and start CM.
The output will include information for about 60 settings. Two of these are key: ALL31 and STACK. Here is an example of what you might see in the captured data for these two parameters:
If you see ALL31(OFF) or BELOW as a STACK parameter, you are running in 24-bit memory mode. You will need to add ALL31 and STACK parameters to the CEEOPTS member. Specify ALL31(ON) and make sure the STACK parameter matches the settings displayed in the report—but with BELOW replaced by ANYWHERE.
When you are done determining what your settings are, RPTOPTS(ON) and RPTSTG(ON) can be removed because they are no longer needed.
Task 12.1 Start the CM
Start the CM Started Task as follows:
- Access the SDSF facility (or whatever spool reader product you normally use).
- In the COMMAND INPUT field, type the following (where CM PROC Name is the name of your CM procedure), and press Enter:
/S CM PROC Name
Job output for a successful invocation of the CM task is shown in the following figure. Make sure the following message indicates that the Code Pipeline Server is running APF-Authorized in the following figure. Various log and trace messages are turned on by the default settings in the SDEFISPW input cards.
CM Invocation Job Output
09.03.46 S0597506 MPWMTDSP STARTING...
09.03.46 S0597506 MPWMTDSP COMPLETE
09.03.46 S0597506 WZZPA001I COMPUWARE PARMLIB DSN = CMSC.PARMLIB
09.03.46 S0597506 WZZPA002I COMPUWARE PARMLIB MEMBER = IWCMPROD
09.03.46 S0597506 WZZPA003I COMPUWARE PARMLIB CMSC ID = ISPW
09.03.46 S0597506 WZZPA003I SERVERID = PROD
09.03.46 S0597506 WZZPA003I DPROCESS = 1
09.03.46 S0597506 WZZPA003I GPROCESS = 2
09.03.46 S0597506 WZZPA003I SPROCESS = 2
09.03.46 S0597506 WZZPA003I AUTHUSER = USER001
09.03.46 S0597506 WZZPA003I AUTHUSER = USER002
09.03.46 S0597506 WZZPA003I AUTHUSER = USER003
09.03.46 S0597506 WZZPA003I AUTHUSER = USER004
09.03.46 S0597506 WZZPA003I DB2SSID = DSN1
09.03.46 S0597506 WZZPA003I XSYSPROT = TCPIP
09.03.46 S0597506 WZZPA003I WZCMNAME = ISPWPCM
09.03.46 S0597506 WZZPA003I WZCMPORT = 12345
09.03.46 S0597506 WZZPA003I WZCMXPRT = 12346
09.03.46 S0597506 WZZPA003I WZCMADDR = YOUR.COMPANY.COM
09.03.46 S0597506 WZZPA003I TCPUSERID = TCPIP
09.03.46 S0597506 WZZPA003I WZCINAME = ISPWPCI
09.03.46 S0597506 WZZPA003I WZCTNAME = ISPWPCT
09.03.46 S0597506 WZZPA003I WEBAPI = Y
09.03.46 S0597506 WZZPA003I CUSTOMDIALOGS = N
09.03.46 S0597506 WZZPA003I CONFIGNAMES = N
09.03.46 S0597506 WZZPA003I DB2PLAN = WZZT220
09.03.46 S0597506 WZZPA003I SECCLASS = $ISPW
09.03.46 S0597506 WZZPA003I SETPROC = ISPWPSX
09.03.46 S0597506 WZZPA001I COMPUWARE PARMLIB DSN = CMSC.PARMLIB
09.03.46 S0597506 WZZPA002I COMPUWARE PARMLIB MEMBER = CWGLISPW
09.03.46 S0597506 WZZPA003I COMPUWARE PARMLIB CMSC ID = ISPW
09.03.46 S0597506 WZZPA003I ZADVISER = YES
09.03.46 S0597506 WZZPA003I ZADVISER_SMF_VERSION = 17.02.07
09.03.46 S0597506 WZZPA003I ZADVISER_SMF_BUFF_INT = 120
09.03.47 S0597506 WZZPA003I ZADVISER_QUEUE_ENTRIES = 15
09.03.47 S0597506 WCM80401I ISPW Server Started, Version is 22.01
09.03.47 S0597506 WCM80408I ISPW API Level is XZ 18.02.30
09.03.47 S0597506 WZZLI009 SCM SERVER LICENSED TO YOUR COMPANY
09.03.47 S0597506 WZZLI002 RUNNING ON CPU=0628F8 EXPIRY=2022/07/05
09.03.47 S0597506 WZZLI004 MAXIMUM USERS=009999
09.03.47 S0597506 WZZLI010 DEPLOY SERVER LICENSED TO YOUR COMPANY
09.03.47 S0597506 WZZLI011 RUNNING ON CPU=0628F8 EXPIRY=2022/07/05
09.03.47 S0597506 WZZLI013 MAXIMUM LPARS=009999
09.03.47 S0597506 WZZCM002 ISPW SERVER RUNNING APF-AUTHORIZED, SECURITY FUNCTIONS AVAILABLE
09.03.47 S0597506 +WZZPA003I SECRULE = '* * DUMMY.RESOURCE.NAME NONE'
09.03.47 S0597506 +00 20220509090347143 I rparc Active APVR version is 2
09.03.47 S0597506 +00 20220509090347144 I rparc APVR row count is 8
09.03.47 S0597506 +00 20220509090347147 I rpctc CT row count is 41
09.03.47 S0597506 +00 20220509090347155 I rpbcc Active BCT version is 1
09.03.47 S0597506 +00 20220509090347155 I rpbcc BCT row count is 10
09.03.47 S0597506 +00 20220509090347158 I rpccc Active CCAT version is 1
09.03.47 S0597506 +00 20220509090347159 I rpccc CCAT row count is 4
Starting CM Without an SAF Class Defined
If the SAF Class has not been defined, CM will still be operational but with no internal security. The messages shown in the following figure will be displayed.
CM SAF class message
R15=00000004 RC=00000000 REA=00000000
Task 12.2 Start the CI
Start the CI Started Task as follows:
- Access the SDSF facility (or whatever spool reader product you normally use).
- In the COMMAND INPUT field, type the following (where CI PROC Name is the name of your CI procedure), and press Enter:
/S CI PROC Name
Job output for a successful invocation of the CI task is shown in the following figure.
CI Invocation Job Output
07.47.32 S0597054 IEF403I ISPWPCI - STARTED - TIME=07.47.32
07.47.32 S0597054 MPWMTDSP STARTING...
07.47.32 S0597054 MPWMTDSP COMPLETE
07.47.32 S0597054 WZZPA001I COMPUWARE PARMLIB DSN = CMSC.PARMLIB
07.47.32 S0597054 WZZPA002I COMPUWARE PARMLIB MEMBER = IWCIPROD
07.47.32 S0597054 WZZPA003I COMPUWARE PARMLIB CMSC ID = ISPW
07.47.32 S0597054 WZZPA003I XMEMID = ISPW
07.47.32 S0597054 WZZPA003I SERVERID = ISPW
07.47.32 S0597054 WZZPA003I WZCINAME = ISPWPCI
07.47.32 S0597054 WZZPA003I XSYSPROT = TCPIP
07.47.32 S0597054 WZZPA003I WZCMNAME = ISPWPCM
07.47.32 S0597054 WZZPA003I WZCMADDR = YOUR.COMPANY.COM
07.47.32 S0597054 WZZPA003I WZCMPORT = 12345
07.47.32 S0597054 WZZPA003I TCPUSERID = TCPIP
07.47.32 S0597054 WCI00220I Cross memory initialization complete
07.47.32 S0597054 WCI80201I Communications Interface initialisation complete
07.47.32 S0597054 WCI80204I Communications Interface name is ISPWPCI, Version is
22.01
07.47.32 S0597054 WCI00205I Cross system signon to ISPWPCM complete
07.47.37 S0597054 WCI80805I Using ASCII codepage 1252 from M.ER variable ACCSID
07.47.37 S0597054 WCI80805I Using EBCDIC codepage 1047 from M.ER variable ECCSID
07.47.37 S0597054 WCI80800I Conversion tables built for z/OS codepage 1047 and
open systems codepage 1252
07.47.37 S0597054 WCI80206I Reference Data Cache load starting
07.47.37 S0597054 WCI80230I WZZCIRSM loaded into CSA
Task 12.3 Start the CT
Start the CT Started Task as follows:
- Access the SDSF facility (or whatever spool reader product you normally use).
- In the COMMAND INPUT field, type the following (where CT PROC Name is the name of your CT procedure), and press Enter:
/S CT PROC Name
Job output for a successful invocation of the CT task is shown in the following figure.
CT Invocation Job Output
07.47.34 S0597055 MPWMTDSP STARTING...
07.47.35 S0597055 MPWMTDSP COMPLETE
07.47.35 S0597055 WZZPA001I COMPUWARE PARMLIB DSN = .CMSC.PARMLIB
07.47.35 S0597055 WZZPA002I COMPUWARE PARMLIB MEMBER = IWCTPROD
07.47.35 S0597055 WZZPA003I COMPUWARE PARMLIB CMSC ID = ISPW
07.47.35 S0597055 WZZPA003I WZCTNAME = ISPWPCT
07.47.35 S0597055 WZZPA003I XSYSPROT = TCPIP
07.47.35 S0597055 WZZPA003I SERVERID = PROD
07.47.35 S0597055 WZZPA003I WZCMNAME = ISPWPCM
07.47.35 S0597055 WZZPA003I WZCMADDR = YOUR.COMPANY.COM
07.47.35 S0597055 WZZPA003I WZCMPORT = 12345
07.47.35 S0597055 WZZPA003I TCPUSERID = TCPIP
07.47.35 S0597055 WZZPA003I CWIDLE = 1
07.47.35 S0597055 WZZPA003I HSMINT = Y
07.47.35 S0597055 WZZPA003I COMPSTAT = Y
07.47.35 S0597055 WZZPA003I HKINTERVAL = 60
07.47.35 S0597055 WZZPA003I TEMPUNIT = SYSDA
07.47.35 S0597055 WZZPA003I TEMPPREFIX = ISPW.PROD.TEMP
07.47.35 S0597055 WZZPA003I AUDITGDG = ISPW.PROD.CT.LOG
07.47.35 S0597055 WZZPA003I AUDITMAX = 5
07.47.35 S0597055 WZZPA003I AUDITUNIT = SYSDA
07.47.35 S0597055 WZZPA003I AUDITVOL = *
07.47.35 S0597055 WZZPA003I AUDITSIZE = 45
07.47.35 S0597055 WZZPA003I HFSDIRCREATEMODE = 755
07.47.35 S0597055 WZZPA003I HFSFILECREATEMODE = 750
07.47.35 S0597055 WCT81001I Component Transport initialisation complete
07.47.35 S0597055 WCT81004I Component Transport name is ISPWPCT, Version is 22.01
07.47.35 S0597055 WCT00205I Cross system signon to ISPWPCM complete
07.47.35 S0597055 IGD101I SMS ALLOCATED TO DDNAME (AUDIT001) 293
DSN (ISPW.PROD.CT.LOG.G0001V00 )
The highlighted message is only written when the CT task has established communication with the CM task. If this message does not appear, there is a problem with the communications setup and definition.
The final message indicates that the CT Task has communicated with CM and retrieved a list of Warehouses that it manages. If this message does not appear after a few seconds, it may be possible that the Code Pipeline definitions for M.SV and M.WH are incorrect. Correcting these can be done through the Code Pipeline Client after Start the CT, after which the CT Task needs to be re-cycled.
Task 12.4 ISPF dialog
The objective of this task is to be able to invoke the Code Pipeline TSO/ISPF Client in a quick way for the install process. Each Installation should review how they invoke ISPF Applications and change this invocation as necessary.
Panel invocation
Code Pipeline can be invoked directly from a panel, specifying the appropriate configuration name. The following table is an example of different invocations based on the sample WZZRCCNF member delivered:
Sample WZZRCCNF panel invocations
Panel statement in )PROC section | Description |
---|---|
W,’CMD(WZZRCSPF ISPP) NEWAPPL(WZ) NOCHECK PASSLIB’ | Prod Code Pipeline with SITE PROD allocations |
WPH,’CMD(WZZRCSPF ISPPHOLD) NEWAPPL(WZ) NOCHECK PASSLIB’ | Prod Code Pipeline with SITE HOLD/PROD allocations |
WT,’CMD(WZZRCSPF ISPT) NEWAPPL(WZ) NOCHECK PASSLIB’ | Test Code Pipeline with SITE PROD allocations |
WTH,’CMD(WZZRCSPF ISPTHOLD) NEWAPPL(WZ) NOCHECK PASSLIB’ | Test Code Pipeline with SITE HOLD/PROD allocations |
WTT,’CMD(WZZRCSPF ISPTTEST) NEWAPPL(WZ) NOCHECK PASSLIB’ | Test Code Pipeline with SITE TEST/HOLD/PROD allocations |
The examples in this table are suggestions based upon the sample allocations macro delivered. They may be different at your organization.
Quick test
To quickly see whether Code Pipeline is setup correctly, before the panel option is added it is possible to type TSO WZZRCSPF ISPT (where ISPT is the configuration name defined in the table earlier).
Successful invocation
If the Code Pipeline invocation works successfully, a Code Pipeline welcome screen will appear for the first invocation as shown in the following figure.
Code Pipeline Welcome screen
Command ===>
W W EEEEE L CCCC OOO M M EEEEE
W W E L C O O M M M M E
W W W EEEE L C O O M M M EEEE
W W W W E L C O O M M E
W W EEEEE LLLLL CCCC OOO M M EEEEE
to BMC AMI DevX Code Pipeline
Please enter your personal details:
First Name ==>
Last Name ==>
Telephone ==>
E-Mail ==>
Node ==>
Department ==>
Function ==>
Press ENTER to confirm your changes or END to continue
Once your name is entered, the Code Pipeline main menu will appear as shown in the following figure.
Code Pipeline Main menu
OPTION ===>
U USER - User Preferences USERID – USER003
PREFIX – USER003
A ANALYSIS - Cross Reference Analysis TIME - 16:06
P CONTAINERS - Container List DATE - 2022/05/09
W WORK - Work List - 2022.129
R REPOSITORY - Repository List PROC - ISPFPROC
DP DEPLOY - Deploy Requests CONFIG - PROD
GI GENERATE IMPACTS - Generate Impacts SERVER - PROD
M MAINTENANCE - Maintenance Functions
Z FUNCTIONS - Add Special Functions (Z1 - Z8)
Z1
Z2
Z3
Z4
Z5
Z6
Z7
Z8
Enter END command to return to the Primary Menu.
Once this screen is displayed, you have connected to the Code Pipeline Server.