Skip to content

nkoester/iJenkinsCLI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iJenkinsCLI

An interactive command line interface for Jenkins CI on the base of urwid and autojenkins. For that situation when you dont want to use a browser.

Example Image

Features

  • Interactive browsing of Jobs and high level details in a Jenkins
  • Color coded Job status (Successful, Failed, Aborted, etc.)
  • Single keyword search, highlight and selection based on job names
  • View detailed job information
  • Trigger build of a job
  • View last build log of a job <3
  • Basic VIM like bindings ;)

Usage

  1. Clone the current version branch:
cd /tmp/
git clone -b 0.1 https://github.com/nkoester/iJenkinsCLI.git && cd iJenkinsCLI
  1. Install just like any other python lib:
export install_destination="/tmp/ijenkinscli"
mkdir -p $install_destination/lib/python2.7/site-packages/
export PYTHONPATH=$install_destination/lib/python2.7/site-packages/:$PATH
export PATH=$install_destination/bin:$PYTHONPATH
python setup.py install --prefix=$install_destination
  1. Run it:
iJenkinsCLI https://YOUR-SERVER-HERE:8080

Or use your credentials: ```bash iJenkins https://YOUR-SERVER-HERE:8080 --user=jon --password=doe -s


## Todos

Well, there is always a lot to do... For the first version I was driven by the features. There could be done much much more:

- [ ] Code cleanup. Currently the code is a mess.
- [ ] Improve visual layout and design. Currently a lot is feature driven and not design driven. 
- [ ] Create a urwid table with some more features
- [ ] Sort jobs by different columns
- [ ] Sort jobs by build status
- [ ] Add some sort of scrollbar
- [ ] Improve "Job Info" presentation. Currently it is simply displaying the dictionary with all content
- [ ] Add dialog for help (explaining commands etc.)
- [ ] Add dialog to login during runtime
- [ ] Expose further features of Jenkins (create job, show build number X, etc.)
- [ ] Parallelise/On demand Jenkins access. If you have many jobs, it may take a while to query all the data
- [ ] Allow different tree organisation (e.g. normal (current), build a tree based on job topology)
- [ ] Many more ...

## Feedback

Feel free to contact me if you have any ideas, pull-requests, remarks or feedback! :)

About

An interactive CLI for Jenkins

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages