Skip to content

Commit

Permalink
docs: Update docs (#239)
Browse files Browse the repository at this point in the history
* docs: Update docs

* Bump version: 0.1.0 → 0.1.1
  • Loading branch information
ismet55555 authored Sep 9, 2024
1 parent 0268ff1 commit 7a31fc3
Show file tree
Hide file tree
Showing 6 changed files with 163 additions and 29 deletions.
2 changes: 1 addition & 1 deletion .bumpversion.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[bumpversion]
current_version = 0.1.0
current_version = 0.1.1
commit = True
tag = True
allow_dirty = False
Expand Down
179 changes: 156 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@

<h1 align="center">yojenkins</h1>


<p align="center">

<a href="https://pypi.org/project/yojenkins/">
Expand Down Expand Up @@ -41,24 +40,24 @@ This tool is able to be integrated into a script as middleware in order to autom

With **`yojenkins`** you can manage:

- **Authentication**: *Authentication structure similar to AWS API*
- **Server**: *Create, shutdown, view queue, and more*
- **User accounts**: *Create, delete, add/remove permission, and more*
- **Nodes/agents:** *Create, delete, shut down server, and more*
- **Credentials**: *Create, update, delete, list, and more*
- **Folders:** *Create items, delete items, disable, enable, and more*
- **Jobs:** *Create, delete, trigger, monitor, search, and more*
- **Builds:** *Monitor, abort, tail logs, follow logs, and more*
- **Stages:** *Get info, get logs, view steps, view status*
- **Steps:** *Get info*
- **Other tools and functions:** *Run groovy scripts remotely, run custom REST calls, setup a shared library, view command usage history, and more*
- **Authentication**: _Authentication structure similar to AWS API_
- **Server**: _Create, shutdown, view queue, and more_
- **User accounts**: _Create, delete, add/remove permission, and more_
- **Nodes/agents:** _Create, delete, shut down server, and more_
- **Credentials**: _Create, update, delete, list, and more_
- **Folders:** _Create items, delete items, disable, enable, and more_
- **Jobs:** _Create, delete, trigger, monitor, search, and more_
- **Builds:** _Monitor, abort, tail logs, follow logs, and more_
- **Stages:** _Get info, get logs, view steps, view status_
- **Steps:** _Get info_
- **Other tools and functions:** _Run groovy scripts remotely, run custom REST calls, setup a shared library, view command usage history, and more_

_For a complete CLI command outline, see [section below](#complete-cli-outline)_

## :blue_book: Documentation

For all information and documentation, please visit [yojenkins.com](https://yojenkins.com)


## :movie_camera: Overview Video

This video presents an overview of `yojenkins`, while demonstrating a few basic funcitonalities and workflow.
Expand All @@ -67,22 +66,21 @@ This video presents an overview of `yojenkins`, while demonstrating a few basic
<img width="35%" alt="overview_video" style="border:2px solid black;" src="https://img.youtube.com/vi/w1p-eMzKuLE/hqdefault.jpg">
</a>

## :ballot_box_with_check: Project Contact

## :ballot_box_with_check: Project Status

This project is in release phase **alpha**. Please report any issues, odd behavior, or suggestions.
This does not mean that this project is not usable. It just means that the project is still in development.
- Read more about the [release cycle](https://en.wikipedia.org/wiki/Software_release_life_cycle).
- See [Bug Reports](https://www.yojenkins.com/bug_report/) and [Feature Requests](https://www.yojenkins.com/feature_request/)
If you happen to find any issues with this project or think of any features that you want to
request, see the following links:

- Read more about the [release cycle](https://en.wikipedia.org/wiki/Software_release_life_cycle).
- [Bug Reports](https://www.yojenkins.com/bug_report/)
- [Feature Requests](https://www.yojenkins.com/feature_request/)

## :heartbeat: Help this Project!
## :heartbeat: Help this Project

This is a very young project and I am always looking for help in any way. If you like this project, please consider helping.

- For financial or marketing support options see [Support This Project!](https://www.yojenkins.com/support/).
- To contribute to this project, see [Contribute to This Project!](https://www.yojenkins.com/contribute/).

- For financial or marketing support options see [Support This Project!](https://www.yojenkins.com/support/).
- To contribute to this project, see [Contribute to This Project!](https://www.yojenkins.com/contribute/).

## :broken_heart: Similar Projects

Expand All @@ -93,3 +91,138 @@ which each one with their own advantages and disadvantages.
- [jenkins-cli](https://github.com/jenkins-zh/jenkins-cli)
- [jenni](https://github.com/m-sureshraj/jenni)
- [jenkins-job-cli](https://github.com/gocruncher/jenkins-job-cli)

## Complete CLI Outline

```txt
yojenkins
|
|-- account Manage user accounts
| |--- create Create a user account
| |--- delete Delete a user account
| |--- info Get user information
| |--- list List all users
| |--- password-reset Reset a user password
| |--- permission Add or remove user permission
| |--- permission-list List all available permissions
|
|
|-- auth Manage authentication and profiles
| |--- configure Configure authentication
| |--- show Show the local credentials profiles
| |--- token Generate authentication API token
| |--- user Show current user information
| |--- verify Check if credentials can authenticate
| |--- wipe Wipe all credentials for this device
|
|
|-- build Manage builds
| |--- abort Abort build
| |--- browser Open build in web browser
| |--- delete Delete build
| |--- diff Find difference between two builds
| |--- info Build information
| |--- logs Get build logs
| |--- monitor Start monitor UI
| |--- rebuild Rebuild a build with same parameters
| |--- stages Get build stages
| |--- status Build status text/label
|
|
|-- credential Manage credentials
| |--- config Get credential configuration
| |--- create Create new credentials
| |--- delete Remove credentials
| |--- get-template Cred. type template to create a cred.
| |--- info Credential information
| |--- list List credentials
| |--- move Move a credential to another folder/domain
| |--- update Reconfigure existing credentials
|
|
|-- folder Manage folders
| |--- browser Open folder in web browser
| |--- config Get folder configuration
| |--- copy Copy an existing item
| |--- create Create an item [folder, view, job]
| |--- delete Delete folder or view
| |--- info Folder information
| |--- items List all items in folder
| |--- jobs List all jobs in folder
| |--- search Search folders by REGEX pattern
| |--- subfolders List all subfolders in folder
| |--- views List all views in folder
|
|
|-- job Manage jobs
| |--- browser Open job in web browser
| |--- build Build a job
| |--- build-exist Check if build number exists
| |--- config Get job configuration
| |--- create Create a job
| |--- delete Delete job
| |--- diff Find difference between two jobs
| |--- disable Disable job
| |--- enable Enable job
| |--- info Job information
| |--- last Get previous build number
| |--- list List all builds for job
| |--- monitor Start monitor UI
| |--- next Get next build number
| |--- queue-cancel Cancel this job in queue
| |--- queue-check Check if this job is in queue
| |--- rename Rename job
| |--- search Search jobs by REGEX pattern
| |--- set Set the next build number
| |--- wipe Wipe job workspace
|
|
|-- node Manage nodes
| |--- config Get node configuration
| |--- create-ephemeral Setup a local or remote ephemeral node
| |--- create-permanent Setup a local or remote persistent node
| |--- delete Delete a node
| |--- disable Disable a node
| |--- enable Enable a node
| |--- info Node information
| |--- list List all nodes
| |--- logs Node logs
| |--- prepare Prepare a remote machine to become a node
| |--- reconfig Reconfigure the node
| |--- status Node status
|
|
|-- server Manage server
| |--- browser Open server home page in web browser
| |--- info Server information
| |--- people Show all people/users on server
| |--- plugins Show plugin information
| |--- queue Show current job build queues on server
| |--- quiet Server quite mode enable/disable
| |--- reachable Check if server is reachable
| |--- restart Restart the server
| |--- server-deploy Create a local development server (Docker)
| |--- server-teardown Remove a local development server
| |--- shutdown Shut down the server
|
|
|-- stage Manage build stages
| |--- info Stage information
| |--- logs Stage steps
| |--- status Stage status text
| |--- steps Get stage steps
|
|
|-- step Manage stage steps
| |--- info Step information
|
|
|-- tools Tools and more
|--- bug-report Report a bug
|--- docs Open browser to the documentation
|--- feature-request Request a feature
|--- history Show detailed command usage history
|--- rest-request Send a generic Rest request to server
|--- run-script Run Groovy script on server, return result
|--- shared-lib-setup Set up a Jenkins shared library
```
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.1.0
0.1.1
2 changes: 1 addition & 1 deletion docs/source/cli_outline.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
Below is a complete outline of the `yojenkins` CLI command structure.

!!! note
As of Version: **0.1.0**
As of Version: **0.1.1**

```text
yojenkins
Expand Down
5 changes: 3 additions & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
import setuptools

# Package version number (Updated via bump2version tool)
__version__ = "0.1.0"
__version__ = "0.1.1"

def check_py_version():
"""Check the python version"""
Expand Down Expand Up @@ -92,7 +92,7 @@ def read(fname):
]
},
classifiers=[
'Development Status :: 3 - Alpha',
'Development Status :: 4 - Beta',
'License :: OSI Approved :: Apache Software License',
'Natural Language :: English',
'Intended Audience :: System Administrators',
Expand All @@ -109,6 +109,7 @@ def read(fname):
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3 :: Only'
]
)
2 changes: 1 addition & 1 deletion yojenkins/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@

__title__ = 'yojenkins'
__summary__ = "A CLI tool to interface with Jenkins server"
__version__ = "0.1.0"
__version__ = "0.1.1"
__author__ = "Ismet Handzic"
__copyright__ = "Copyright 2022 %s" % __author__

0 comments on commit 7a31fc3

Please sign in to comment.