Coder Social home page Coder Social logo

mavericks-consulting / gocd-monitor Goto Github PK

View Code? Open in Web Editor NEW

This project forked from karmats/gocd-monitor

0.0 4.0 0.0 4.77 MB

Build monitor for Go cd build server https://www.go.cd/

License: MIT License

JavaScript 92.22% CSS 6.91% HTML 0.87%

gocd-monitor's Introduction

GoCD monitor Build Status Dependencies Maintainability

Build monitor for Go cd build server https://www.go.cd/

Pipeline status

  • Blue - Pipeline is building
  • Green - Pipeline build passed
  • Red - Pipeline has failed
  • Yellow - Pipeline has been paused
  • Orange - Pipeline build been cancelled

Pipelines

Pipeline attributes

Pipeline explanation

Setup

Open app-config.js and change the three lines

// Url for your go server
goServerUrl: 'https://ci.example.com',
// Go user to use for communication with go server
goUser: 'xxx',
// Password for go user
goPassword: 'xxx',

Alternatively you can configure via environment variables, these will override values within the config.js file:

gocdmonitor_gocd_host=https://ci.example.com
gocdmonitor_gocd_user=xxx
gocdmonitor_gocd_password=xxx

Optional environment variables:

gocdmonitor_gocd_poll_interval=60
gocdmonitor_gocd_showbuildlabels=true
gocdmonitor_gocd_poll_interval=true

This can be extremely useful for configuring in Docker environments.

Optionally, if you want to group pipelines by their pipeline groups.

groupPipelines: true

Then open a terminal and enter

npm install
npm start

Go to http://localhost:3000

Enjoy :)

Configuration

Go to http://localhost:3000?admin and click the settings button in the bottom-right corner to open the configuration dialog.

  • Sort Order - Sort pipelines by status or latest build time
  • Filter Pipelines - Disable/enable pipelines to retrieve from go server Configuration

Test reports

To configure test reports, go to http://localhost:3000/test-results?admin. Click the '+'-button and choose the pipeline you want to generate test reports for. The system then retrieves all test files and creates graph and possible error table for all tests found in that pipeline. For now only cucumber tests are supported. If defined, the system will switch between monitor and test report page every switchBetweenPagesInterval seconds. Test reports

How it works

The server polls the go server every goPollingInterval seconds. The results are then reported to the client using socket.io. The pipelines and its pause info are refreshed once every day.

Development

To run the application in development mode, open a terminal and enter npm run dev-start. The server and client will be rebuilt when a js or jsx-file changes. To run tests, enter npm test.

Troubleshooting

If the project has been installed with root user or by using sudo npm install there might be problems with the postinstall script since npm tries to downgrade its priviligies when running scripts. More information about this problem and how to fix it can be found here (hint, add the --unsafe-perm flag when running npm install)

gocd-monitor's People

Contributors

bzumhagen avatar flosell avatar gkumar7 avatar karmats avatar rb2610 avatar refinedcranberry avatar tegud avatar

Watchers

 avatar  avatar  avatar  avatar

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.