Awesome
jflint
A helper tool to lint a Declarative Jenkinsfile
Description
This tool helps to lint a Declarative Jenkinsfile.
The official document provides a ssh approach and a curl approach to lint a Declarative Jenkinsfile. However, both approaches are a bit complicated for daily use.
So I created this tool to lint easily. This tool itself does not lint a Jenkinsfile, but sends a request to Jenkins in the same way as curl approach and displays the result.
Install
$ npm install jflint -g
Usage
$ jflint [options] /path/to/Jenkinsfile
Options
-j
or --jenkins-url
Specify the URL of Jenkins to lint Jenkinsfile. The URL must be passed by this option or a config file.
-u
or --username
Specify username for Jenkins. Username is required when security is enabled on Jenkins.
-p
or --password
Specify password or API token for Jenkins. Password or API token is required when security is enabled on Jenkins.
--csrf-disabled
Specify this options when CSRF security setting is disabled on Jenkins.
-c
or --config
Specify a path to config file.
--ssl-verification-disabled
Disable SSL verification.
Config file
You can load options from json file like the following.
{
"jenkinsUrl": "http://jenkins.example.com",
"username": "admin",
"password": "p@ssword"
}
Config file is searched in the following order.
- the path specified by
-c|--config
.jflintrc
from the current directory all the way up to the filesystem root${HOME}/.jflintrc
If the same setting is specified in both option and config file, the option setting overrides the config setting.
Contribution
- Fork
- Create a feature branch
- Commit your changes
- Rebase your local changes against the master branch
- Run
npm test
- Create new Pull Request
License
MIT
Author
miyajan: Jumpei Miyata miyajan777@gmail.com