Package hudson.init

Class InitStrategy


  • public class InitStrategy
    extends Object
    Strategy pattern of the various key decision making during the Jenkins initialization.

    Because the act of initializing plugins is a part of the Jenkins initialization, this extension point cannot be implemented in a plugin. You need to place your jar inside WEB-INF/lib instead.

    To register, put MetaInfServices on your implementation.

    Author:
    Kohsuke Kawaguchi
    • Constructor Detail

      • InitStrategy

        public InitStrategy()
    • Method Detail

      • listPluginArchives

        public List<File> listPluginArchives​(PluginManager pm)
                                      throws IOException
        Returns the list of *.jpi, *.hpi and *.hpl to expand and load.

        Normally we look at $JENKINS_HOME/plugins/*.jpi and *.hpi and *.hpl.

        Returns:
        never null but can be empty. The list can contain different versions of the same plugin, and when that happens, Jenkins will ignore all but the first one in the list.
        Throws:
        IOException
      • getBundledPluginsFromProperty

        protected void getBundledPluginsFromProperty​(List<File> r)
        Lists up additional bundled plugins from the system property hudson.bundled.plugins. Since 1.480 glob syntax is supported. For use in mvn jetty:run. TODO: maven-hpi-plugin should inject its own InitStrategy instead of having this in the core.
      • skipInitTask

        public boolean skipInitTask​(org.jvnet.hudson.reactor.Task task)
        Selectively skip some of the initialization tasks.
        Returns:
        true to skip the execution.