Welcome! Any kinds of contributions are very welcome. Please go through our contribution
guide before you create a Pull Request for jcli
.
Go module proxy setting can speed the download of the dependencies:
export GOPROXY=https://mirrors.aliyun.com/goproxy/
jcli
is a command line interface. So a CLI framework is super important for us. Thanks to
cobra. It powers us to do a better job.
API is another important part of this project. jcli
manages Jenkins by the REST API.
There is no full specification for this API at the moment, Jenkins core and plugins provide documentation independently.
You can figure it by yourself, or just join our
gitter room to ask about specific APIs if needed.
Useful links:
Jenkins CLI allows you to write a plugin for it. You can follow these steps:
We use a BDD Testing Framework to test our project. Please make sure you're familiar with ginkgo before you get start to contribute.
Unit testing can help us a lot, but doing the manual test is still necessary. I highly suggest that you test it under a totally fresh environment. Here is list of free resources that you can use:
Provider | Link |
---|---|
Aliyun | https://api.aliyun.com/#/cli |
Google Could | https://ssh.cloud.google.com/cloudshell/environment/view |
For some cases, you need to make sure it works well in different operation system. Setup a virtual machine is a good practice.
vm | description |
---|---|
multipass | Multipass is a lightweight VM manager for Linux, Windows and macOS |
VirtualBox | VirtualBox is a powerful x86 and AMD64/Intel64 virtualization product for enterprise as well as home use. |
Before you get started, please fork this project into your GitHub account. Then create a git branch base on what you want to improve. Please consider never using the master branch as your development branch. And the behaviour of the git force push is not encouraged when submitting pull requests.
Please do not create another Pull Request if you messed up your git commit records.
In order to generate nice release notes, please consider writing a proper Pull Request title. release-draft will generate the notes base your title.
Quality is the heart of a project. So please make sure your Pull Request could pass the Sonar Quality Gate.
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 |
The newbie issues are the good start.
We use git-backup-actions to backup this repo into gitee.
If you want to involve in this project, you need to execute the following command: make tools
Name | Description |
---|---|
confinement |
devmode or strict
|
grade |
devel or stable
|
version |
git (will be replaced by a git describe based version string) or v0.0.26
|
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。