Skip to content

Commit 2ac7673

Browse files
authored
Merge branch 'master' into imgbot
2 parents af23fee + d9b5491 commit 2ac7673

7 files changed

+114
-184
lines changed

docs/_data/sidebars/cdp_sidebar.yml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,8 @@ entries:
2727
- title: Deploying your first app
2828
url: /cdp-Deploying-your-first-app.html
2929
output: web
30-
- title: Developer pushing Node.js apps
31-
url: /cdp-Developer-pushing-Node.js-apps.html
32-
output: web
33-
- title: Developer deploying Node.js apps
34-
url: /cdp-Developer-deploying-Node.js-apps.html
30+
- title: Deploying using individual actions
31+
url: /cdp-Deploying-using-individual-actions.html
3532
output: web
3633

3734
- title: Concepts

docs/_data/topnav.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,5 @@ topnav:
55
items:
66
- title: GitHub
77
external_url: https://github.com/IBM/zowe-cli-cics-deploy-plugin
8-
#- title: News
9-
# url: /news
8+
- title: Change log
9+
external_url: https://github.com/IBM/zowe-cli-cics-deploy-plugin/blob/master/CHANGELOG.md

docs/pages/cdp/cdp-Create-Zowe-CLI-profiles.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -77,17 +77,17 @@ This profile identifies the CICS environment for deployment. You need to know th
7777
| Option | Description |
7878
| --- | --- |
7979
| cicsplex | CPSM CICSplex name. |
80-
| cicshlq | High Level Qualifier \(HLQ\) for the CICS data sets. |
81-
| cpsmhlq | High Level Qualifier \(HLQ\) for the CPSM data sets. |
80+
| cics-hlq | High Level Qualifier \(HLQ\) for the CICS data sets. |
81+
| cpsm-hlq | High Level Qualifier \(HLQ\) for the CPSM data sets. |
8282
| scope | CPSM scope to identify the CICS region or group of regions to deploy your application. |
83-
| resgroup or basgroup | CICS CSD group name or BAS resource group name into which the bundle is defined. If not specified, BUNDLE resources are defined in CPSM BAS for installation and then removed. |
84-
| jobcard | JCL jobcard to use when submitting JCL that will run the CICS utility DFHDPLOY. If not specified, a default jobcard will be used. |
85-
| targetdir | Target directory on z/OS to which CICS bundles should be uploaded. |
83+
| csd-group or res-group | CICS CSD group name or CPSM BAS resource group name into which the bundle is defined. If not specified, BUNDLE resources are defined in CPSM BAS for installation and then removed. |
84+
| job-card | JCL jobcard to use when submitting JCL that will run the CICS utility DFHDPLOY. If not specified, a default job card will be used. |
85+
| target-directory | Target directory on z/OS to which CICS bundles should be uploaded. |
8686

8787
For example to create a cics-deploy profile:
8888

8989
```console
90-
zowe profiles create cics-deploy-profile example --cicsplex PLEX1 --cicshlq CICSTS55.CICS720 --cpsmhlq CICSTS55.CPSM550 --scope TESTGRP1 --csdgroup BUNDGRP1 --targetdir /var/cicsts/bundles --overwrite
90+
zowe profiles create cics-deploy-profile example --cicsplex PLEX1 --cics-hlq CICSTS55.CICS720 --cpsm-hlq CICSTS55.CPSM550 --scope TESTGRP1 --csd-group BUNDGRP1 --target-directory /var/cicsts/bundles --overwrite
9191
```
9292

9393
For help on using the options:
Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
---
2+
title: Deploying using individual actions
3+
tags: [getting_started]
4+
keywords:
5+
summary: "The following steps take you through the individual actions to deploy a Node.js application in CICS."
6+
sidebar: cdp_sidebar
7+
permalink: cdp-Deploying-using-individual-actions.html
8+
folder: cdp
9+
toc: false
10+
---
11+
12+
The `zowe cics-deploy push bundle` command performs a set of actions to deploy applications to CICS, as can be seen in [Deploying your first app](cdp-cdp-Deploying-your-first-app). The main actions include:
13+
14+
* undeploy the old version of the CICS bundle in CICS
15+
* upload the new version of the CICS bundle to z/OS
16+
* run `npm install` on z/OS to resolve Node.js application dependencies
17+
* deploy the CICS bundle in CICS.
18+
19+
However, there may be situations where you need more control of these actions or perform alternate actions. The following sections describe how each of these actions can be performed independently, enabling you to form a sequence of commands to achieve your needs.
20+
21+
### Undeploy a CICS bundle
22+
23+
Undeploying a CICS bundle disables the CICS bundle resource (BUNDLE) in CICS. Disabling the CICS bundle causes the resources defined in it to also be disabled. For Node.js applications, CICS sends a SIGTERM signal that can be handled in the application to stop in a controlled manner, such as stopping new requests and completing existing requests. Once the CICS bundle has been disabled it is then discarded in CICS.
24+
25+
```console
26+
zowe cics-deploy undeploy bundle --name Express
27+
```
28+
29+
Alternatively, if you want to disable the CICS bundle, but to not discard it:
30+
31+
```console
32+
zowe cics-deploy undeploy bundle --name Express --target-state disabled
33+
```
34+
35+
{% include note.html content="This command does not remove the CICS bundle from the z/OS directory." %}
36+
37+
### Upload a CICS bundle to z/OS
38+
39+
Before uploading the CICS bundle to z/OS, you need to ensure the target directory is empty in order to prevent merging with a previously deployed version of the CICS bundle.
40+
41+
There are several ways to run shell commands and scripts on z/OS, such as SSH, batch jobs, and Zowe. When using Zowe, an SSH connection is established using information in the Zowe ssh profile, and then the shell .profile for the user will be run to setup the environment. The command is then run in the directory specified by the `--cwd` option. The return code from the Zowe CLI will be the same as that returned by the command run on z/OS, enabling you to take action in your script in error scenarios.
42+
43+
For example, to remove the target directory:
44+
45+
```console
46+
zowe zos-uss issue ssh "rm -Rv *" --cwd "/var/cicsts/bundles/myexpressapp_1.0.0" && echo RC=$?
47+
```
48+
49+
{% include tip.html content="You can run several commands in one request using the syntax described in [sh — Invoke a shell](https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.3.0/com.ibm.zos.v2r3.bpxa500/sh.htm)." %}
50+
51+
Typically you will need to upload some files as binary, some as text, and exclude others that are not required to run the application. In addition, it is best practice to tag files on z/OS as binary or with their text codepage to allow for correct codepage translation by editors and environments such as Node.js. You can specify these requirements in a `.zosattributes` file and use the Zowe CLI to upload and tag files in a single command.
52+
53+
For example, create file **~/myExpressApp/.zosattributes** in the CICS bundle:
54+
55+
```properties
56+
# Don't upload node_modules
57+
node_modules -
58+
59+
# Don't upload things that start with dots
60+
.* -
61+
62+
# Upload the following file types in binary
63+
*.jpg binary binary
64+
*.png binary binary
65+
*.gif binary binary
66+
*.zip binary binary
67+
*.eot binary binary
68+
*.svg binary binary
69+
*.ttf binary binary
70+
*.woff binary binary
71+
72+
# Convert CICS Node.js profiles to EBCDIC
73+
*.profile ISO8859-1 IBM-1047
74+
```
75+
76+
Then upload the CICS bundle to z/OS:
77+
78+
```console
79+
zowe zos-files upload dir-to-uss ~/myExpressApp/ /var/cicsts/bundles/myexpressapp_1.0.0 --recursive --attributes ~/myExpressApp/.zosattributes
80+
```
81+
82+
### Run npm on z/OS
83+
84+
A Node.js application typically depends on packages that are described in `package.json`. The dependencies can be installed by running `npm install` in the z/OS directory containing `package.json`, for example:
85+
86+
```console
87+
zowe zos-uss issue ssh "npm install" --cwd "/var/cicsts/bundles/myexpressapp_1.0.0"
88+
```
89+
90+
### Deploy a CICS bundle
91+
92+
Deploying a CICS bundle defines a CICS bundle resource (BUNDLE), then installs it, and finally enables it. When the CICS bundle is enabled, the Node.js application is started. For example:
93+
94+
```console
95+
zowe cics-deploy deploy bundle --name Express --bundle-directory /var/cicsts/bundles/myexpressapp_1.0.0
96+
```
97+
98+
Alternatively, to define and install the BUNDLE but not enable it:
99+
100+
```console
101+
zowe cics-deploy deploy bundle --name Express --bundle-directory /var/cicsts/bundles/myexpressapp_1.0.0 --target-state disabled
102+
```

docs/pages/cdp/cdp-Developer-deploying-Node.js-apps.md

Lines changed: 0 additions & 92 deletions
This file was deleted.

docs/pages/cdp/cdp-Developer-pushing-Node.js-apps.md

Lines changed: 0 additions & 77 deletions
This file was deleted.

docs/pages/cdp/cdp-zowe-profiles.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ zowe zosmf check status --zosmf-profile myprofile
3131
```
3232
Zowe CLI profiles really come into their own when you decide to deploy your Node.js application(s) using `push bundle`. Using three profiles, you might issue:
3333
```
34-
zowe push bundle --name EXAMPLE --targetdir /u/example/bundles --zosmf-profile testplex --cics-deploy-profile devcics --ssh-profile ssh
34+
zowe push bundle --name EXAMPLE --target-directory /u/example/bundles --zosmf-profile testplex --cics-deploy-profile devcics --ssh-profile ssh
3535
```
3636
This is a much more economical and concise command-line than if were it necessary to enumerate all of the individual arguments from all of the profiles.
3737

@@ -50,7 +50,7 @@ When you create a Zowe CLI profile, a representation is written to an operating-
5050
</ul>
5151
<div class="tab-content">
5252
<div role="tabpanel" class="tab-pane active" id="windows">
53-
<p>On Windows, Zowe CLI profiles are written by default to <tt>C:\Users\&lt;Your user name&gt;\.zowe\profiles</tt></p>
53+
<p>On Windows, Zowe CLI profiles are written by default to <tt>%userprofile%\.zowe\profiles</tt></p>
5454
</div>
5555

5656
<div role="tabpanel" class="tab-pane" id="linux">

0 commit comments

Comments
 (0)