JIRA CLI focused on simple ticket creation, written in Node.
> npm install -g jicliOn first usage, run jicli and you will be asked for your Jira credentials:
> jicli Jira host: example.atlassian.com Jira username : user1 Jira password: *********** HTTP protocol (http or https) httpsConfig settings will be saved in <project-root>/.jicli/config.json.
Run jicli or jicli --help to get usage:
Usage: jicli [options] [command] Commands: create [options] Create a new issue Options: -h, --help output usage information -V, --version output the version number Usage: create [options] Create a new issue Options: -h, --help output usage information -p, --project [key] Project key -t, --issue-type [type] Issue type (numeric or enum{task, story, sub-task, epic, bug}) -s, --summary [string] Summary (title) -d, --description [string] Description (opens in editor) -x, --skip-description Skip entering the description field -l, --labels [l1,l2,l3] Labels (comma-delimited) -a, --assignee [username] Assignee (use `me` to assign to yourself) Usage: config [options] Re-initialize your config Options: -h, --help output usage information Jicli uses the find-config package to look for the .jicli folder. The order used:
- Current working directory
- Navigate up parent directories under getting to
/ - Finally, look in home directory
If not found, the following is done to determine where to create the .jicli folder:
- If current working directory has a
package.jsonfile, create folder here - If not, navigate up parent directories looking for
package.jsonuntil you hit/ - If not found, create folder in current directory
Create issue interactively with prompts:
jicli create ? Project: Mobile ? Issue Type: Task ? Issue Title: My new issue Supply some of the required fields and jicli will ask for the missing items:
jicli create -p MOB -t Task ? Issue Title: My new issue Notice that project and issue type prompts are skipped
Holy grail with all required and optional fields ()
jicli create -p MOB -t task -s "My issue title" -d "My issue description" -l 'label1,label2' -a me When you first set up jicli, it will prompt for your username / password. From this, it will create a token and add it to the config file <root>/.jicli/config.json
Project uses debug module with debug key jicli. Run:
DEBUG=jicli* jicli create ... This will add additional debugging information to file <root>/.jicli/logger.log instead of stdout as it's awkward to output to the console while requesting stdin.
PRs accepted. Note that code uses standard styling.
MIT © Dan Caddigan