Giter Club home page Giter Club logo

fabric8-tenant-jenkins's Introduction

fabric8-tenant-jenkins's People

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

fabric8-tenant-jenkins's Issues

Delete dead code and add basic documentation for what is actually used

There is a just a lot of configuration files in this repository that makes it very hard for anyone new to understand what is going on. Adding some basic docs (like apps vs packages, what is being deployed etc) will also help.

A few things I can think of are,

  1. How are the yaml files applied? Are all of them used? Where is the code for it?
  2. What is apps vs packages?
  3. What is the pom.xml, release.groovy and jenkins file really doing there? Are we shipping all the files as a maven package and then downloading it back to osio while being deployed?
  4. Can we remove all the maven bits from here? Is it really necessary?
  5. Is apps/jenkins-test used at all?

cc: @aslakknutsen

consider removing -Dgroovy.use.classvalue=true

In conversation with Gabe Montero ([email protected]) doing alot of ci/cd on openshift.com he spotted we were using groovy.use.classvalue and he commented with these findings:

Some basic internet searching took me down an interesting path:

And the kicker ... this support article from cloudbees from Jan 2018 strongly advises to no longer use >this setting ... saying you could introduce a memory leak

So perhaps something to monitor, but I WILL NOT be putting this setting on by default in the openshift >jenkins image.

I'd also suggest that unless openshift.io is aware of something more recent, etc. that contradicts that >Jan 2018 article, you
should probably remove that setting as well.

The support article mentioned I assume is https://support.cloudbees.com/hc/en-us/articles/115001505172-Jenkins-hangs-due-to-Groovy-ClassInfo-deadlock which contains this msg:

"(Deprecated) Workaround

JENKINS-43197 mentions a workaround that is to add the system property -Dgroovy.use.classvalue=true on Jenkins startup to re-enable ClassValue. This is deprecated and we strongly advise to not do this. ClassValue was disabled by default to solve major memory leaks - see GROOVY-7591. Enabling ClassValue would replace a groovy memory leak by another one."

I haven't checked the impact but thought it was worth being aware of it if looking into optimizations/cleanup.

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.