diff --git a/.bumpversion.cfg b/.bumpversion.cfg index 93cbffc..1fb1431 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 0.1.0 +current_version = 0.1.1 commit = True tag = True allow_dirty = False diff --git a/README.md b/README.md index 106fbf2..cc62154 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,6 @@
@@ -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.
@@ -67,22 +66,21 @@ This video presents an overview of `yojenkins`, while demonstrating a few basic
+## :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
@@ -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
+```
diff --git a/VERSION b/VERSION
index 6e8bf73..17e51c3 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.1.0
+0.1.1
diff --git a/docs/source/cli_outline.md b/docs/source/cli_outline.md
index 880e5cb..8706d53 100644
--- a/docs/source/cli_outline.md
+++ b/docs/source/cli_outline.md
@@ -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
diff --git a/setup.py b/setup.py
index d2ea58c..b349e42 100644
--- a/setup.py
+++ b/setup.py
@@ -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"""
@@ -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',
@@ -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'
]
)
diff --git a/yojenkins/__init__.py b/yojenkins/__init__.py
index e1cb5c9..fe6d350 100644
--- a/yojenkins/__init__.py
+++ b/yojenkins/__init__.py
@@ -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__