Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jorgechato/jenny

CLI that allows interaction with one of the most important CI/CD systems out there: Jenkins.
https://github.com/jorgechato/jenny

go golang jenkins public

Last synced: about 2 months ago
JSON representation

CLI that allows interaction with one of the most important CI/CD systems out there: Jenkins.

Awesome Lists containing this project

README

        

# Jenny
[![Go Report Card](https://goreportcard.com/badge/github.com/jorgechato/jenny)](https://goreportcard.com/report/github.com/jorgechato/jenny) [![Build Status](https://travis-ci.org/jorgechato/jenny.svg?branch=master)](https://travis-ci.org/jorgechato/jenny)
## Download and run
- Download the latest version from [here](https://github.com/jorgechato/jenny/releases/download/alpha-bones/jenny)
- Move it to your ***/usr/bin*** or add the folder where it lives into your **$PATH**.
- Use the command **jenny** to start using it

```bash
$ jenny
```
## Use
### Profile
Command | Action | Status
--- | --- | ---
profile uri \ | Location of the Jenkins server | ready
profile user \ | Username credential | ready
profile pwd \ | Password credential | ready
profile project \ | Unique id of the Job/Pipeline | ready
profile show | Show the current profile configuration | ready
profile show --uncover | Uncover the password. | ready
profile logout | Logout | ready
profile logout --force | Clean user and password in .jenny.yml. | ready
profile login | Login | ready
profile save | Save current configuration in .jenny.yml file. | ready
profile save --global | Create .jenny.yml in $HOME directory. | ready
profile save --force | Store user and password in the .jenny.yml file. | ready
profile clear | Remove .jenny.yml file. | ready
profile cancel | Discard configuration | ready

### Jenkins
Command | Action | Status
--- | --- | ---
open | Opens the UI dashboard of this project in the browser. | ready
status \ \ | Status of given build id or latest build. | ready
status \ --last | Get the last execution. | ready
logs \ \ | Print the logs for a build. | ready
logs \ --last | Get the last execution. | ready
stop \ \ | Stop a build execution. | ready
stop \ --last | Get the last execution. | ready
build \ | Trigger parametrized build. | in progress (ready without params)
describe \ | Describe build history of project. | ready

### Shortcuts
KeyBinding | Description
--------------------|---------------------------------------------------------
Ctrl + A | Go to the beginning of the line (Home)
Ctrl + E | Go to the End of the line (End)
Ctrl + P | Previous command (Up arrow)
Ctrl + N | Next command (Down arrow)
Ctrl + F | Forward one character
Ctrl + B | Backward one character
Ctrl + D | Delete character under the cursor
Ctrl + H | Delete character before the cursor (Backspace)
Ctrl + W | Cut the Word before the cursor to the clipboard.
Ctrl + K | Cut the Line after the cursor to the clipboard.
Ctrl + U | Cut/delete the Line before the cursor to the clipboard.

## Compile from scratch
### Structure
```bash
.
├── Dockerfile
├── jenny
│   ├── client.go
│   ├── completer.go
│   ├── executor.go
│   ├── filter.go
│   ├── model.go
│   ├── option.go
│   └── yaml.go
├── manage.go
└── README.md
```
### Get
```bash
$ git clone https://github.com/jorgechato/jenny.git
$ cd jenny
```
### Install
```bash
$ go get -v ./... # To install dependencies
$ go install
```
### Run without compile
```bash
$ go run manage.go
```