Skip to content

Commit 4b3875e

Browse files
authored
Merge pull request #302 from IBM/release/1.0.0
Release/1.0.0
2 parents 27cdbc8 + 2fff830 commit 4b3875e

27 files changed

+393
-488
lines changed

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,12 @@ Changes should be placed under the following headings:
1919
- in case of vulnerabilities
2020
-->
2121

22+
## [Release v1.0.0]
23+
24+
### Added
25+
26+
- The plugin is now on public npmjs registry (https://www.npmjs.com/package/zowe-cli-cics-deploy-plugin)
27+
2228
## [Unreleased]
2329

2430
### Added

CODE_OF_CONDUCT.md

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# Contributor Covenant Code of Conduct
2+
3+
## Our Pledge
4+
5+
In the interest of fostering an open and welcoming environment, we as
6+
contributors and maintainers pledge to making participation in our project and
7+
our community a harassment-free experience for everyone, regardless of age, body
8+
size, disability, ethnicity, sex characteristics, gender identity and expression,
9+
level of experience, education, socio-economic status, nationality, personal
10+
appearance, race, religion, or sexual identity and orientation.
11+
12+
## Our Standards
13+
14+
Examples of behavior that contributes to creating a positive environment
15+
include:
16+
17+
* Using welcoming and inclusive language
18+
* Being respectful of differing viewpoints and experiences
19+
* Gracefully accepting constructive criticism
20+
* Focusing on what is best for the community
21+
* Showing empathy towards other community members
22+
23+
Examples of unacceptable behavior by participants include:
24+
25+
* The use of sexualized language or imagery and unwelcome sexual attention or
26+
advances
27+
* Trolling, insulting/derogatory comments, and personal or political attacks
28+
* Public or private harassment
29+
* Publishing others' private information, such as a physical or electronic
30+
address, without explicit permission
31+
* Other conduct which could reasonably be considered inappropriate in a
32+
professional setting
33+
34+
## Our Responsibilities
35+
36+
Project maintainers are responsible for clarifying the standards of acceptable
37+
behavior and are expected to take appropriate and fair corrective action in
38+
response to any instances of unacceptable behavior.
39+
40+
Project maintainers have the right and responsibility to remove, edit, or
41+
reject comments, commits, code, wiki edits, issues, and other contributions
42+
that are not aligned to this Code of Conduct, or to ban temporarily or
43+
permanently any contributor for other behaviors that they deem inappropriate,
44+
threatening, offensive, or harmful.
45+
46+
## Scope
47+
48+
This Code of Conduct applies within all project spaces, and it also applies when
49+
an individual is representing the project or its community in public spaces.
50+
Examples of representing a project or community include using an official
51+
project e-mail address, posting via an official social media account, or acting
52+
as an appointed representative at an online or offline event. Representation of
53+
a project may be further defined and clarified by project maintainers.
54+
55+
## Enforcement
56+
57+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
58+
reported by contacting the project team at [email protected]. All
59+
complaints will be reviewed and investigated and will result in a response that
60+
is deemed necessary and appropriate to the circumstances. The project team is
61+
obligated to maintain confidentiality with regard to the reporter of an incident.
62+
Further details of specific enforcement policies may be posted separately.
63+
64+
Project maintainers who do not follow or enforce the Code of Conduct in good
65+
faith may face temporary or permanent repercussions as determined by other
66+
members of the project's leadership.
67+
68+
## Attribution
69+
70+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
71+
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
72+
73+
[homepage]: https://www.contributor-covenant.org
74+
75+
For answers to common questions about this code of conduct, see
76+
https://www.contributor-covenant.org/faq
77+

CONTRIBUTING.md

Lines changed: 46 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,38 @@ Please request new features via the issue tracker. When requesting features, try
2222

2323
If you're thinking of fixing a bug or adding new features, be sure to open an issue first. This gives us a place to have a discussion about the work.
2424

25+
### Setting up your development environment
26+
27+
First of all, install Zowe CLI. Our plug-in is designed to work with the `lts-incremental` version.
28+
```console
29+
npm config set @brightside:registry https://api.bintray.com/npm/ca/brightside
30+
npm install @brightside/core@lts-lncremental
31+
```
32+
33+
In order to make code changes to the cics-deploy plugin, you'll need to fork the repository, and build the plugin from source.
34+
35+
```console
36+
git clone https://github.com/<your_github_id>/zowe-cli-cics-deploy-plugin
37+
cd zowe-cli-cics-deploy-plugin
38+
npm install
39+
npm run build
40+
zowe plugins install .
41+
```
42+
43+
### Developing the cics-deploy plug-in
44+
45+
As a plug-in for Zowe CLI, we aim to follow their guidelines. Our plugin is based on the Imperative CLI framework.
46+
47+
| For more information about ... | See: |
48+
| ------------------------------ | ----- |
49+
| Conventions and best practices for creating packages and plug-ins for Zowe CLI | [Package and Plug-in Guidelines](https://github.com/zowe/zowe-cli/blob/master/docs/PackagesAndPluginGuidelines.md)|
50+
| Guidelines for running tests on the plug-ins that you build for Zowe CLI | [Plug-in Testing Guidelines](https://github.com/zowe/zowe-cli/blob/master/docs/PluginTESTINGGuidelines.md) |
51+
| Documentation that describes the features of the Imperative CLI Framework | [About Imperative CLI Framework](https://github.com/zowe/imperative/wiki) |
52+
53+
As per the testing guidelines above, all code should have unit tests. System tests should be written for cases where it's not necessary to interact with a remote CICS system.
54+
55+
Please make sure all tests pass before opening a PR.
56+
2557
### Licensing
2658

2759
All code must have an EPL v2.0 header. Please add the following to any new files you create:
@@ -93,16 +125,20 @@ To save you having to type the above for every commit, Git can add the `Signed-o
93125

94126
If you haven't signed each commit, then the pull request will fail to pass all checks.
95127

128+
## Branches and releases
96129

97-
## Developing Zowe CLI plug-ins
130+
We have three main branches in our repo:
131+
- *dev*: our main dev branch, which will work with Zowe CLI @lts-incremental. New pull requests should normally be made into this branch.
132+
- *master*: our release branch, which will work with Zowe CLI @lts-incremental. Project maintainers will merge code into here from `dev` when we're ready to release.
133+
- *zowe-dev*: a branch which works with Zowe CLI@daily so we can prepare for forthcoming major releases of Zowe CLI.
98134

99-
For guidelines on developing Zowe CLI plug-ins see the [Zowe CLI GitHub repository](https://github.com/zowe/zowe-cli). The following information is critical to working with the code, running/writing/maintaining automated tests, developing consistent syntax and ensuring that the plug-in integrates with Zowe CLI properly:
135+
### Release process
100136

101-
| For more information about ... | See: |
102-
| ------------------------------ | ----- |
103-
| General guidelines that apply to contributing to Zowe CLI and plug-ins | [Contribution Guidelines](https://github.com/zowe/zowe-cli/blob/master/CONTRIBUTING.md) |
104-
| Conventions and best practices for creating packages and plug-ins for Zowe CLI | [Package and Plug-in Guidelines](https://github.com/zowe/zowe-cli/blob/master/docs/PackagesAndPluginGuidelines.md)|
105-
| Guidelines for running tests on Zowe CLI | [Testing Guidelines](https://github.com/zowe/zowe-cli/blob/master/docs/TESTING.md) |
106-
| Guidelines for running tests on the plug-ins that you build for Zowe CLI | [Plug-in Testing Guidelines](https://github.com/zowe/zowe-cli/blob/master/docs/PluginTESTINGGuidelines.md) |
107-
| Documentation that describes the features of the Imperative CLI Framework | [About Imperative CLI Framework](https://github.com/zowe/imperative/wiki) |
108-
Versioning conventions for Zowe CLI and plug-ins| [Versioning Guidelines](https://github.com/zowe/zowe-cli/blob/master/docs/MaintainerVersioning.md) |
137+
1. Ensure all code to be released is merged into `dev`.
138+
2. Create a release branch locally based on `master`.
139+
3. Merge commits to be relaased into the release branch. Avoid cherry-picking changes so that `master` always remains a subset of `dev`.
140+
4. Update the version number in `package.json` according to [semantic versioning](https://semver.org/).
141+
- Note: if the only changes being made are to the documentation, do not update the version number. In this case the GitHub Pages site will be published when `master` is built, but no new version of the plug-in will be published.
142+
5. Make a PR to merge your release brnach into `master`. The reviewer should make sure all commits are suitable to release and version number has been updated appropriately.
143+
6. After the PR is merged, Jenkins will run a build of `master` and publish the new version to registry.npmjs.org.
144+
7. Delete the release branch.

README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1-
# zowe-cli-cics-deploy-plugin
1+
[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v1.4%20adopted-ff69b4.svg)](CODE_OF_CONDUCT)
22

3-
This project provides a plug-in for [Zowe CLI](https://github.com/zowe/zowe-cli) to deploy applications developed on a workstation to IBM CICS Transaction Server for z/OS (CICS). It aims to provide an experience similar to deploying to a cloud platform when deploying to CICS. It will also provide low-level commands for performing individual steps of the deployment process that could be used as part of a CI/CD pipeline.
3+
# zowe-cli-cics-deploy-plugin
44

5-
## Status
5+
This project provides a plug-in for [Zowe CLI](https://github.com/zowe/zowe-cli) to deploy applications developed on a workstation to IBM® CICS® Transaction Server for z/OS® (CICS). It aims to provide an experience similar to deploying to a cloud platform when deploying to CICS. It will also provide low-level commands for performing individual steps of the deployment process that could be used as part of a CI/CD pipeline.
66

7-
The project was started in February 2019 and is at an early stage of development. It will initially focus on generating and deploying CICS bundles containing Node.js applications.
7+
## Installing
88

9-
To try it out, build the plug-in from source as described in [setup](docs-internal/tutorials/Setup.md).
9+
Install the plug-in by following the steps in [installing](https://ibm.github.io/zowe-cli-cics-deploy-plugin/installing.html).
1010

1111
## Documentation
1212

1313
You can find information and tutorials on using this plug-in in our [documentation](https://ibm.github.io/zowe-cli-cics-deploy-plugin/index.html).
1414

1515
## Contributing
1616

17-
Contributions are welcome - see the [contribution guidelines](CONTRIBUTING.md). If you have a question or encounter a problem, please search the [issues](https://github.com/IBM/zowe-cli-cics-deploy-plugin/issues) in this repo before raising a [New issue](https://github.com/IBM/zowe-cli-cics-deploy-plugin/issues/new).
17+
Contributions are welcome - see the [contribution guidelines](CONTRIBUTING.md). If you have a question or encounter a problem, please search the [issues](https://github.com/IBM/zowe-cli-cics-deploy-plugin/issues) before raising a [New issue](https://github.com/IBM/zowe-cli-cics-deploy-plugin/issues/new).

__tests__/api/BundleDeploy/BundleDeployer.test.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -391,6 +391,14 @@ describe("BundleDeployer01", () => {
391391
parms.arguments.jobcard = "'//DFHDPLOY JOB DFHDPLOY,'some text',CLASS=A,MSGCLASS=X,TIME=NOLIMIT'";
392392
await testDeployJCL(parms);
393393
});
394+
it("should tolerate a single leading slash for jobcard", async () => {
395+
396+
let parms: IHandlerParameters;
397+
parms = DEFAULT_PARAMTERS;
398+
setCommonParmsForDeployTests(parms);
399+
parms.arguments.jobcard = "/DFHDPLOY JOB DFHDPLOY,CLASS=A,MSGCLASS=X,TIME=NOLIMIT";
400+
await testDeployJCL(parms);
401+
});
394402
it("should support long bundledir", async () => {
395403
let parms: IHandlerParameters;
396404
parms = DEFAULT_PARAMTERS;

__tests__/api/BundleDeploy/__snapshots__/BundleDeployer.test.ts.snap

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -578,6 +578,24 @@ UNDEPLOY BUNDLE(12345678)
578578
"
579579
`;
580580

581+
exports[`BundleDeployer01 should tolerate a single leading slash for jobcard 1`] = `
582+
"//DFHDPLOY JOB DFHDPLOY,CLASS=A,MSGCLASS=X,TIME=NOLIMIT
583+
//DFHDPLOY EXEC PGM=DFHDPLOY,REGION=100M
584+
//STEPLIB DD DISP=SHR,DSN=12345678901234567890123456789012345.SDFHLOAD
585+
// DD DISP=SHR,DSN=abcde12345abcde12345abcde12345abcde.SEYUAUTH
586+
//SYSTSPRT DD SYSOUT=*
587+
//SYSIN DD *
588+
*
589+
SET CICSPLEX(12345678);
590+
*
591+
DEPLOY BUNDLE(12345678)
592+
BUNDLEDIR(1234567890)
593+
SCOPE(12345678)
594+
STATE(ENABLED)
595+
/*
596+
"
597+
`;
598+
581599
exports[`BundleDeployer01 should tolerate bundledir with extra slasshes 1`] = `
582600
"//DFHDPLOY JOB DFHDPLOY,CLASS=A,MSGCLASS=X,TIME=NOLIMIT
583601
//DFHDPLOY EXEC PGM=DFHDPLOY,REGION=100M

0 commit comments

Comments
 (0)