Skip to content

Commit dcab05c

Browse files
Update README and CONTRIBUTING
Signed-off-by: Matthew Wilson <[email protected]>
1 parent bf567ef commit dcab05c

File tree

2 files changed

+52
-22
lines changed

2 files changed

+52
-22
lines changed

CONTRIBUTING.md

Lines changed: 45 additions & 18 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,24 +125,19 @@ 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

96-
### Build and install the cics-deploy plugin
97-
```console
98-
git clone https://github.com/IBM/zowe-cli-cics-deploy-plugin
99-
cd zowe-cli-cics-deploy-plugin
100-
npm install
101-
npm run build
102-
zowe plugins install .
103-
```
128+
## Branches and releases
104129

105-
## 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.
106134

107-
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
108136

109-
| For more information about ... | See: |
110-
| ------------------------------ | ----- |
111-
| General guidelines that apply to contributing to Zowe CLI and plug-ins | [Contribution Guidelines](https://github.com/zowe/zowe-cli/blob/master/CONTRIBUTING.md) |
112-
| 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)|
113-
| Guidelines for running tests on Zowe CLI | [Testing Guidelines](https://github.com/zowe/zowe-cli/blob/master/docs/TESTING.md) |
114-
| 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) |
115-
| Documentation that describes the features of the Imperative CLI Framework | [About Imperative CLI Framework](https://github.com/zowe/imperative/wiki) |
116-
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+
4. 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+
5. After the PR is merged, Jenkins will run a build of `master` and publish the new version to registry.npmjs.org.

README.md

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

33
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.
44

5-
## Status
5+
## Installing
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+
To use the cics-deploy plug-in, you'll first need Zowe CLI.
88

9-
To try it out, build the plug-in from source as described in [setup](docs-internal/tutorials/Setup.md).
9+
Then you can install the plug-in from the public npm registry by running the command
10+
```
11+
zowe plugins install zowe-cli-cics-deploy-plugin
12+
```
1013

1114
## Documentation
1215

1316
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).
1417

1518
## Contributing
1619

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).
20+
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).

0 commit comments

Comments
 (0)