4 releases

0.2.8 Dec 29, 2020
0.2.6 Dec 22, 2020
0.2.5 Dec 21, 2020
0.2.4 Oct 25, 2019

#306 in Authentication

MIT license

46KB
1K SLoC

goji Build Status Software License Released API docs Master API docs

a rust interface for jira

install

Add the following to your Cargo.toml file

[dependencies]
goji = "0.2"

usage

Please browse the examples directory in this repo for some example applications.

Basic usage requires a jira host, and a flavor of jira::Credentials for authorization. For user authenticated requests you'll typically want to use jira::Credentials::Basic with your jira username and password.

Current support api support is limited to search and issue transitioning.

extern crate env_logger;
extern crate goji;

use goji::{Credentials, Jira};
use std::env;

fn main() {
    drop(env_logger::init());
    if let (Ok(host), Ok(user), Ok(pass)) =
        (
            env::var("JIRA_HOST"),
            env::var("JIRA_USER"),
            env::var("JIRA_PASS"),
        )
    {
        let query = env::args().nth(1).unwrap_or("assignee=doug".to_owned());

        let jira = Jira::new(host, Credentials::Basic(user, pass)).unwrap();

        match jira.search().iter(query, &Default::default()) {
            Ok(results) => {
                for issue in results {
                    println!("{:#?}", issue);
                }
            }
            Err(err) => panic!("{:#?}", err),
        }
    }
}

what's with the name

Jira's name is a shortened form of gojira, another name for godzilla. Goji is a play on that.

Doug Tangren (softprops) 2016-2018

Dependencies

~4–18MB
~284K SLoC