Skip to content

kylef/goji

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

goji

goji is a minimal command line client for JIRA.

Installation

Installation on macOS using Homebrew:

$ brew install kylef/formulae/goji

Install goji using pip:

$ pip install goji

Configuration

Once installed, goji requires the base URL of your Atlassian suite to be configured to run commands. There are a few ways to configured goji.

Configuration File

The ~/.config/goji/config.toml file can be configured, by setting profiles for different JIRA instances. For example:

[profile.default]
url = "https://goji.atlassian.net"
email = "[email protected]"

Then:

$  export GOJI_PASSWORD='my password'
$ goji whoami

Without Configuration File

$ export GOJI_BASE_URL=https://example.atlassian.net
$ goji --base-url https://example.atlassian.net show GOJI-43

To authenticate, use the login command. This step is required to use the other commands:

$ goji login

To provide authentication only for the current command, you can pass email and password as options:

$ goji --email [email protected] --password pass whoami

Or alternatively, you may set the credentials using environment variables.

$ export [email protected]
$ export GOJI_PASSWORD=password

Usage

Subcommands:

  • login - Authenticate with JIRA server
  • whoami - View information regarding current user
  • show - Show details about issue
  • create - Create a new issue
  • assign - Assign an issue to a user
  • unassign - Unassign a user from an issue
  • comment - Comment on an issue
  • change-status - Change the status of an issue
  • edit - Edit issue description
  • link - Link an issue to another issue
  • attach - Attach file(s) to an issue
  • open - Open issue in a web browser
  • search - Search issues using JQL
  • sprint - Collection of commands to manage sprints

login

Authenticate with a JIRA server.

$ goji login

Email: [email protected]
Password:

show

Show detailed information about an issue.

$ goji show GOJI-1
-> GOJI-1
  As a user, I would like to view an issue status

  - Status: Closed
  - Creator: Kyle Fuller (kylef)
  - Assigned: Kyle Fuller (kylef)
  - URL: https://cocode.atlassian.net/browse/GOJI-1

  Related issues:
  - Relates to: GOJI-2 (Closed)

link

Link an issue to another issue, for example. To link GOJI-2 to GOJI-1 as GOJI-2 is a duplicate of GOJI-1:

$ goji link GOJI-2 GOJI-1 Duplicate

open

Opens an issue in your browser.

$ goji open GOJI-1

assign / unassign

Assigns yourself or another user to an issue.

$ goji assign GOJI-1
You have been assigned to GOJI-1.
$ goji assign GOJI-1 sam
sam has been assigned to GOJI-1.
$ goji unassign GOJI-1
GOJI-1 has been unassigned.

comment

Add a comment to an issue, editing text in your $EDITOR

$ goji comment GOJI-1

search

Search issues using JQL

$ goji search "project=GOJI AND assignee=sam"
GOJI-21 Update core metrics
GOJI-40 Remove expired food from fridge

change-status

Change the status of an issue

$ goji change-status GOJI-311 "done"
Fetching possible transitions...
Okay, the status for GOJI-311 is now "Done".
$ goji change-status GOJI-311
Fetching possible transitions...
0: To Do
1: In Progress
2: Done
Select a transition: 1
Okay, the status for GOJI-311 is now "In Progress".

sprint

  • create - Create a sprint

License

goji is released under the BSD license. See LICENSE.