Skip to main content

A CLI tool for Jenkins

Project description

Jenkins Terminal Tool

A powerful command-line tool for interacting with Jenkins, enabling easy configuration, build triggering, and status monitoring.

PyPI version License: MIT

Features

  • 🔧 Interactive and command-line Jenkins configuration
  • 🚀 Trigger Jenkins jobs with customizable parameters
  • 📊 Retrieve and display Jenkins job statuses
  • 📝 Fetch and show Jenkins job console outputs
  • 📋 List builds of specified Jenkins jobs
  • 💾 Template job feature for quick access to frequently used jobs

Installation

Using pip

pip install jenkins-terminal

Quick Start

  1. Set up your Jenkins configuration:

    jenkins config
    
  2. Trigger a Jenkins job:

    jenkins build <job> --param key1=value1 --param key2=value2
    
  3. Check job status:

    jenkins status <job>
    

Detailed Usage

Configuration

Set Jenkins configuration parameters interactively:

jenkins config

Or use command-line options:

jenkins config --username <username> --url <url> --token <token>

Build Triggering

Trigger a job with inline parameters:

jenkins build <job> -p key1=value1 -p key2=value2

Use parameters from a YAML file:

jenkins build <job> -f <file>

Load parameters from a specific build:

jenkins build <job> -l <build-number>

Combine options:

jenkins build <job> -l <build-number> -f <file> -p key1=value1

Job Status and Output

Get job status:

jenkins status <job> -b <build-number>

Fetch console output:

jenkins output <job> -b <build-number> -l <max-lines>

List job builds:

jenkins builds <job>

Template Job Feature

The tool automatically saves the last executed job as a template. Run without specifying job name:

jenkins build

Configuration File

The tool uses ~/.config/jenkins.yaml for storing configurations and templates.

Example:

template:
  builds:
    job1:
      build_number: 10
      parameters:
        SITE: tpe001
  job: job1

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Acknowledgements

  • Typer - CLI library for Python
  • Rich - Rich text formatting in the terminal
  • Jenkins - The leading open source automation server

License

This project is licensed under the MIT License. See the LICENSE file for details.

Support

If you encounter any problems or have any questions, please open an issue on GitHub.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

jenkins_terminal-0.7.1-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

Details for the file jenkins_terminal-0.7.1-py3-none-any.whl.

File metadata

File hashes

Hashes for jenkins_terminal-0.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 89dc604c5a3fda45fdbca2d1d737de1349d6be7c6fc0f91850c1ccbc13343c04
MD5 8042fcd1fd790d5aa98b033e3eefd450
BLAKE2b-256 5ecb01f7e90c39cbbbf86c52d11a31e6c4b386cfa206910d7dc4d476afb7e9a1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page