## Jira Terminal This application can be used for personal usage to manage jira from terminal. ## Installation This application can be used in multiple platform. ### MacOS This package is available in brew as `jira-terminal`. You can install it with following command: ``` brew tap amritghimire/jira-terminal brew install jira-terminal ``` ### Arch Linux This package is available in aur repository as [jira-terminal-bin](https://aur.archlinux.org/packages/jira-terminal-bin/) ### Debian/Ubuntu On debian based system, the deb file is available in [releases](https://github.com/amritghimire/jira-terminal/releases). You can download latest release from there. Please make sure libc is installed in your system. ### Cargo If you already have a Rust environment set up, you can use the cargo install command: ```cargo install jira-terminal``` Cargo will build the jira-terminal binary and place it in $HOME/.cargo/bin. You can also setup Rust toolchain from [Rust official site](https://www.rust-lang.org/tools/install) ### Manual Installation from Github Compiled binary versions of jira-terminal are uploaded to GitHub when a release is made. You can install jira-terminal manually by [downloading a release](https://github.com/amritghimire/jira-terminal/releases) , extracting it, and copying the binary to a directory in your $PATH, such as /usr/local/bin. ## Autocompletion Script The autocompletion script can be found in [the release section](https://github.com/amritghimire/jira-terminal/releases). You can download the autocompletion script from there or use our application to generate the script. To generate the script, run: ```bash jira-terminal autocompletion --shell [zsh|bash|fish|powershell|elvish] > _jira.terminal ``` Depending on your shell, you can move your autocompletion file to the following location: - *ZSH* - `/usr/share/zsh/site-functions/_jira-terminal` - *BASH* - `/usr/share/bash-completion/completions/_jira-terminal` - *Fish* - `/share/fish/vendor_completions.d/_jira-terminal` ## Usage When running the application for first time, you will be asked with following values. - hostname [This will be used to identify the jira hostname to be used.] - email [Email address you use to login with the application.] - token [You can obtain the app password from the link specified in the application] After that, you can use following commands for help. ``` jira-terminal help jira-terminal help list jira-terminal help transition jira-terminal help alias jira-terminal help detail jira-terminal help fields jira-terminal help update jira-terminal help new jira-terminal help assign jira-terminal help comment jira-terminal help autocompletion ``` ``` JIRA Terminal 2.0.0 Amrit Ghimire This is a command line application that can be used as a personal productivity tool for interacting with JIRA USAGE: jira-terminal [SUBCOMMAND] FLAGS: -h, --help Prints help information -V, --version Prints version information SUBCOMMANDS: alias Configuration for alias. One of add,list or remove is required. assign Assign a ticket to user. autocompletion Generate autocompletion script.. comment List or add comments to a ticket. Default action is adding. detail Detail of a JIRA tickets.. fields List of possible Fields for details... help Prints this message or the help of the given subcommand(s) list List the issues from JIRA. new Create a new ticket. transition Transition of ticket across status. update Update a field for a ticket ``` ### List of Tickets ``` jira-terminal-list List the issues from JIRA. USAGE: jira-terminal list [FLAGS] [OPTIONS] FLAGS: -h, --help Prints help information -J, --json JSON response -M, --me Issues assigned to you. -V, --version Prints version information OPTIONS: -A, --alias Save the applied options as an alias. You can use it with jql option later. -a, --assignee ... Assignee username or email to filter with. -c, --component ... Component name or ID to filter with. -C, --count Total number of issues to show. (Default is 50) -d, --display Comma separated list of fields to display. Possible options for fields are: key,resolution,priority,assignee,status,components,creator,reporter,issuetype,project,summary You can pass alias as option for display. You can save alias using alias subcommand for the application. Default options are key,summary,status,assignee -e, --epic ... EPIC name or issue key of epic to filter with. -f, --filter ... Filter name or filter id that you saved in JIRA. -j, --jql JQL Query or alias to JQL query to filter with. -l, --label