From 922bff062b73bc565f2c98697fc386e5852ce46e Mon Sep 17 00:00:00 2001 From: Rick Date: Wed, 18 Sep 2019 08:46:22 +0800 Subject: [PATCH] Add contribution guide --- CONTRIBUTING.md | 51 +++++++++++++++++++++++++++++++++++++++++++++++++ README-zh.md | 2 +- README.md | 3 ++- 3 files changed, 54 insertions(+), 2 deletions(-) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..ceeb194 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,51 @@ +Welcome! Any kinds of contributions are very welcomed. Please go through our contribution +guide before you try to create a Pull Request for `jcli`. + +## CLI + +`jcli` is a command line interface. So a CLI framework is super important for us. Thanks to +[cobra](https://github.com/spf13/cobra). It powers us to do a better job. + +## Jenkins API + +API is another important part of this project. `jcli` manages your Jenkins by the HTTP API. +There's no official documents for this. You can figure it by yourself, or just join our +[gitter room](https://gitter.im/jenkinsci/jenkins-cli). + +## Testing + +We use a BDD Testing Framework to test our project. Please make sure you're familar +with [ginkgo](https://github.com/onsi/ginkgo) before you get start to contribute. + +## Pull Requests + +Before you get start, please fork this project into your GitHub account firstly. Then +create a git branch base on what you want to improve. Please consider **never** using +the master branch as your develope branch. And the behaviour of the git **force push** is not +encourage. + +Please **don't** create another Pull Request if you messed up your git commit records. + +In order to generate a nice [release notes](https://github.com/jenkins-zh/jenkins-cli/releases), +please consider writing a proper Pull Request title. +[release-draft](https://github.com/toolmantim/release-drafter) will generate the notes base your title. + +## Qulity + +Qulity is the heart of a project. So please make sure your Pull Request could pass the +[Sonar Qulity Gate](https://sonarcloud.io/dashboard?id=jenkins-zh_jenkins-cli). + +|Metric|Operator|Value| +|---|---|---| +|Coverage|is less than|90.0%| +|Duplicated Lines(%)|is greater than|3.0%| +|Maintainablity Rating|is worse than|A| +|Blocker Issues|is greater than|1| +|Code Smells|is greater than|1| +|Reliablity Rating|is worse than|A| +|Security Rating|is worse than|A| + +## Good Start + +The [newbie](https://github.com/jenkins-zh/jenkins-cli/issues?q=is%3Aissue+is%3Aopen+label%3Anewbie) issues +are the good start. diff --git a/README-zh.md b/README-zh.md index 2a067be..c5849b1 100644 --- a/README-zh.md +++ b/README-zh.md @@ -55,4 +55,4 @@ sudo mv jcli /usr/local/bin/ # 贡献 -该工具还处在非常早期的开发阶段,我们欢迎任何形式的贡献。 +如果你对该项目感兴趣,请首先仔细阅读我们的[贡献指南](CONTRIBUTING.md)。我们欢迎任何形式的贡献。 diff --git a/README.md b/README.md index 905d083..ee67848 100644 --- a/README.md +++ b/README.md @@ -56,4 +56,5 @@ Read [this document](doc/README.md) to know more details about how to use `jcli` # Contribution -It's still under very early develope time. Any contribution is welcome. +If you're interested in this project. Please go through the +[contribution guide](CONTRIBUTING.md). Any contributions are welcome. -- GitLab