Giter Site home page Giter Site logo

jenkinsci / postgresql-fingerprint-storage-plugin Goto Github PK

View Code? Open in Web Editor NEW
3.0 3.0 8.0 1.25 MB

Configures PostgreSQL as the fingerprint storage engine in Jenkins ✨

Home Page: https://plugins.jenkins.io/postgresql-fingerprint-storage/

License: MIT License

Java 99.52% Groovy 0.48%
jenkins postgresql fingerprint cloud-native java plugin external-storage

postgresql-fingerprint-storage-plugin's Introduction

PostgreSQL Fingerprint Storage Plugin

Caution

This plugin is in alpha stage and is not recommended for production instance

It's configuration might change in future releases

Build Coverage LOC Contributors Gitter GitHub release Jenkins Plugin Installs

image

Introduction

The plugin allows users to configure PostgreSQL for storing fingerprints.

Another plugin which supports storing fingerprints externally, but inside Redis instances is also available. Consider trying it out too! It is much more stable than this plugin at the moment, and also supports fingerprint cleanup, which is currently unsupported in this plugin.

Installation

Clone the repository

git clone https://github.com/jenkinsci/postgresql-fingerprint-storage-plugin
cd postgresql-fingerprint-storage-plugin

To obtain the postgresql-fingerprint-storage.hpi and postgresql-fingerprint-storage.jar files, run: mvn clean install

They will be available inside ./plugin/target. (Note that docker is required for running tests. If Docker is not installed, consider skipping tests)

To run the plugin on a local instance, run:

cd plugin mvn hpi:run

Configuring the plugin

Using the Web UI

Once the plugin has been installed, you can configure the PostgreSQL server details by following the steps below:

Ensure you have PostgreSQL as global database. Plugin will not work for other database engine.

  1. Select Manage Jenkins
  2. Select Configure System

image

  1. Save the config
  2. Scroll to the section Fingerprints
  3. Select PostgreSQL Fingerprint Storage from the dropdown for Fingerprint Storage Engine and fill in the required details:

image

  1. Use the Test PostgreSQL Connection to verify that the details are correct and Jenkins is able to connect to the PostgreSQL instance.
  2. [IMPORTANT] When configuring the plugin for the first time, it is highly important to press the Perform PostgreSQL Schema Initialization button. The button can also be used in the case the database is wiped out and schema needs to be recreated.
  3. Press the Save button.
  4. Now, all the fingerprints produced by this Jenkins instance should be saved in the configured PostgreSQL server!

Using Jenkins Configuration as Code Plugin (JCasC)

The plugin can also be configured using the configuration as code plugin

A sample YAML file is provided below for configuring this plugin using JCasC:

unclassified:
  fingerprints:
    storage:
      postgreSQL:
        host: "localhost"
        port: 6379
        ssl: false
        databaseName: 0
        connectionTimeout: 3000
        socketTimeout: 3000
        credentialsId: "foo"

Reaching Out

Feel free to reach out to us for any questions, feedback, etc. on the project’s Gitter Channel or the Jenkins Developer Mailing list

We use Jenkins Jira to track issues. Feel free to file issues under postgresql-fingerprint-storage-plugin component.

References

postgresql-fingerprint-storage-plugin's People

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

postgresql-fingerprint-storage-plugin's Issues

Migrate schema init script to flyway

What feature do you want to see added?

Right now the initialization is performed via a button on the UI

Migrate scripts to flyway

Upstream changes

No response

Are you interested in contributing this feature?

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.