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 hashes)

Uploaded Python 3

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