Skip to content

JobPulse is an innovative DevOps tool that provides an interface for managing Jenkins jobs. Built with React, Tailwind CSS, and Go, JobPulse allows users to effortlessly create, delete, build with delays, and monitor Jenkins jobs. This project aims to explore Go programming fundamentals, API integration, and CI/CD practices.

Notifications You must be signed in to change notification settings

captainhaddock18/JobPulse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 

Repository files navigation

JobPulse: Jenkins Jobs Managing Interface

Overview

JobPulse is an innovative web application designed to manage Jenkins jobs through a user-friendly interface. The frontend is developed using React with Tailwind CSS for sleek styling, while the backend is powered by Go. This application leverages Jenkins APIs to facilitate various operations on jobs, including creating new jobs, deleting jobs, building jobs with delays, retrieving job histories, listing all jobs, and fetching config.xml configurations.

Features

  • Create, delete, and manage Jenkins jobs
  • Build jobs with custom delays
  • View detailed job histories
  • List all jobs for easy management
  • Fetch and view job configurations (config.xml)

Prerequisites

  • Node.js and npm (for the frontend)
  • Go (for the backend)
  • Jenkins installed and running on localhost:8080
  • Jenkins API token and username

Installation

  1. Clone the repository:

    git clone https:/your-username/JobPulse.git
    cd JobPulse
  2. Set up the frontend:

    cd frontend
    npm install
  3. Set up the backend:

    cd ../backend
    go mod tidy

Running the Application

  1. Start the Jenkins server:

    Ensure Jenkins is running on localhost:8080. If Jenkins is not installed, follow the installation guide.

  2. Run the Go backend:

    cd backend
    go run main.go

    The backend will start on localhost:3010.

  3. Run the React frontend:

    cd ../frontend
    npm start

    The frontend will start on localhost:3000.

Jenkins Setup

  1. Obtain Jenkins API Token:

    • Log in to Jenkins.
    • Click on your username (top right corner).
    • Click on Configure (left sidebar).
    • Scroll down to API Token section.
    • Click on Add new Token.
    • Give it a name and click on Generate.
    • Copy the generated token and save it securely.

Usage

  • Open your browser and navigate to http://localhost:3000.
  • Use the interface to manage Jenkins jobs efficiently.
  • JobPulse utilizes REST APIs for updates on job activities.

Purpose

JobPulse was created to explore Go programming basics, API integrations, and Continuous Integration/Continuous Deployment (CI/CD) practices through a job management interface.

Contributing

Contributions are welcome! Please fork the repository and submit a pull request for any enhancements or bug fixes.

Authors

  • Tharakadatta D Hegde
  • Varshit Manikanta

About

JobPulse is an innovative DevOps tool that provides an interface for managing Jenkins jobs. Built with React, Tailwind CSS, and Go, JobPulse allows users to effortlessly create, delete, build with delays, and monitor Jenkins jobs. This project aims to explore Go programming fundamentals, API integration, and CI/CD practices.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published