Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-35234

Support the new workflow/pipeline model

    XMLWordPrintable

Details

    Description

      Pipeline jobs appears to be the standard interface for Jenkins 2.0 and forward.

      I think it requires implementing the 'SimpleBuildStep' class interface.

      Similar issue with many other publisher plugins, eg:
      https://github.com/jenkinsci/cobertura-plugin/issues/50#issuecomment-222680913

      Attachments

        Activity

          hieber Thomas Hieber added a comment -

          I also think this is really important. The new model is really helpful, to get things done more easily, but we can't make the switch, as long as not all required plugins are supported by the new model.

          hieber Thomas Hieber added a comment - I also think this is really important. The new model is really helpful, to get things done more easily, but we can't make the switch, as long as not all required plugins are supported by the new model.

          This would help us out a lot too +1

          consolati1 John Consolati added a comment - This would help us out a lot too +1
          misieq Piotr Mis added a comment -

          I have updated SloccountPlugin to support pipelines, tested with my project and looks to work.

          I will ask maintaners of this plugin to check changes and introduce them into master.

          In meantime you can find sources: https://github.com/piomis/sloccount-plugin/tree/JENKINS-35234_pipeline_support

          misieq Piotr Mis added a comment - I have updated SloccountPlugin to support pipelines, tested with my project and looks to work. I will ask maintaners of this plugin to check changes and introduce them into master. In meantime you can find sources:  https://github.com/piomis/sloccount-plugin/tree/JENKINS-35234_pipeline_support
          oleg_nenashev Oleg Nenashev added a comment -

          misieq Could you please create a pull request to the plugin's main repo? Also consider adding the plugin to https://github.com/jenkinsci/pipeline-plugin/blob/master/COMPATIBILITY.md

          oleg_nenashev Oleg Nenashev added a comment - misieq Could you please create a pull request to the plugin's main repo? Also consider adding the plugin to https://github.com/jenkinsci/pipeline-plugin/blob/master/COMPATIBILITY.md
          misieq Piotr Mis added a comment - - edited

          Looks that sloccount plugin is not actively maintained.

          My pull request is unresponded for over a week.

          https://github.com/jenkinsci/sloccount-plugin/pull/48

          I'm not an expert in Jenkins development thus it would be good if someone more advanced review it and merge - I am quite sure that at least in dependencies to other plugins versions are a little bit to high (but I am not able to locate which one would be appropriate).

          misieq Piotr Mis added a comment - - edited Looks that sloccount plugin is not actively maintained. My pull request is unresponded for over a week. https://github.com/jenkinsci/sloccount-plugin/pull/48 I'm not an expert in Jenkins development thus it would be good if someone more advanced review it and merge - I am quite sure that at least in dependencies to other plugins versions are a little bit to high (but I am not able to locate which one would be appropriate).
          oleg_nenashev Oleg Nenashev added a comment -

          Pinged code reviewers in the PR

          oleg_nenashev Oleg Nenashev added a comment - Pinged code reviewers in the PR
          misieq Piotr Mis added a comment -

          Any chance to proceed with review any time soon?

          misieq Piotr Mis added a comment - Any chance to proceed with review any time soon?
          misieq Piotr Mis added a comment -

          Looks that PR will not be merged any time soon.

          Snapshow build can be found under following link: https://jenkins.ci.cloudbees.com/job/plugins/job/sloccount-plugin/91/hudson.plugins.sloccount$sloccount/

          It has been used in my company production environment for nearly 2 months and no issues observed.

           

          misieq Piotr Mis added a comment - Looks that PR will not be merged any time soon. Snapshow build can be found under following link:  https://jenkins.ci.cloudbees.com/job/plugins/job/sloccount-plugin/91/hudson.plugins.sloccount$sloccount/ It has been used in my company production environment for nearly 2 months and no issues observed.  
          oleg_nenashev Oleg Nenashev added a comment -

          misieq You can always claim ownership of the plugin if the maintainer is not responsive. Just drop an email to the ML. Regarding the reviews, do not hesitate to ping people regularly. It's almost impossible to process all incoming notifications, but by increasing the frequesncy you increase chances that it gets processed. Sounds weird, I know

          oleg_nenashev Oleg Nenashev added a comment - misieq You can always claim ownership of the plugin if the maintainer is not responsive. Just drop an email to the ML. Regarding the reviews, do not hesitate to ping people regularly. It's almost impossible to process all incoming notifications, but by increasing the frequesncy you increase chances that it gets processed. Sounds weird, I know

          Code changed in jenkins
          User: piomis
          Path:
          pom.xml
          src/main/java/hudson/plugins/sloccount/SloccountAreaRenderer.java
          src/main/java/hudson/plugins/sloccount/SloccountBuildAction.java
          src/main/java/hudson/plugins/sloccount/SloccountProjectAction.java
          src/main/java/hudson/plugins/sloccount/SloccountPublisher.java
          src/main/java/hudson/plugins/sloccount/SloccountResult.java
          src/main/java/hudson/plugins/sloccount/dashboard/SloccountTablePortlet.java
          src/main/java/hudson/plugins/sloccount/model/SloccountLanguageStatistics.java
          src/main/java/hudson/plugins/sloccount/model/SloccountParser.java
          src/main/java/hudson/plugins/sloccount/model/cloc/ClocFile.java
          src/main/java/hudson/plugins/sloccount/model/cloc/ClocFiles.java
          src/main/java/hudson/plugins/sloccount/model/cloc/ClocHeader.java
          src/main/java/hudson/plugins/sloccount/model/cloc/ClocReport.java
          src/main/java/hudson/plugins/sloccount/model/cloc/ClocTotal.java
          src/main/java/hudson/plugins/sloccount/util/FileFinder.java
          src/main/java/jenkins/plugins/sloccount/steps/SloccountPublisherStep.java
          src/main/resources/hudson/plugins/sloccount/SloccountBuildAction/statistics.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountBuildAction/summary.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountProjectAction/floatingBox.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountProjectAction/jobMain.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountPublisher/config.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountResult/files.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountResult/folders.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountResult/index.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountResult/languages.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountResult/modules.jelly
          src/main/resources/hudson/plugins/sloccount/dashboard/SloccountTablePortlet/portlet.jelly
          src/main/resources/hudson/plugins/sloccount/dashboard/SloccountTablePortlet/table.jelly
          src/main/resources/index.jelly
          src/main/resources/jenkins/plugins/sloccount/steps/SloccountPublisherStep/config.jelly
          src/main/resources/tabview/css.jelly
          src/main/resources/tabview/distribution-graph.jelly
          src/main/resources/tabview/main.jelly
          src/test/java/jenkins/plugins/sloccount/steps/SloccountPublisherStepTest.java
          http://jenkins-ci.org/commit/sloccount-plugin/784fc4905bb71e64cae78f74397c14a94cdf40f5
          Log:
          JENKINS-35234 Resolved issue - Support the new workflow/pipeline model

          pom.xml
          Added dependencies to workflow modules
          Sloccount plugin now requires Jenkins 2.63

          Refactored for new workflow (AbstractBuild and AbstractProject replaced
          with Run<> and Job<>)
          SloccountAreaRenderer.java
          SloccountBuildAction.java
          SloccountProjectAction.java
          SloccountPublisher.java
          SloccountResult.java

          Solved NPE:
          SloccountResult.java

          Ignored FindBug errors:
          SloccountAreaRenderer.java

          Solved javadoc complains:
          SloccountTablePortlet.java
          SloccountLanguageStatistics.java
          SloccountParser.java
          ClocFile.java
          ClocFiles.java
          ClocHeader.java
          ClocReport.java
          ClocTotal.java

          Updated API for new Jenkins:
          FileFinder.java

          Added escape-by-default in all jelly files:
          index.jelly
          SloccountTablePortlet/portlet.jelly
          SloccountTablePortlet/table.jelly
          SloccountBuildAction/statistics.jelly
          SloccountBuildAction/summary.jelly
          SloccountProjectAction/floatingBox.jelly
          SloccountProjectAction/jobMain.jelly
          SloccountPublisher/config.jelly
          SloccountResult/files.jelly
          SloccountResult/folders.jelly
          SloccountResult/index.jelly
          SloccountResult/languages.jelly
          SloccountResult/modules.jelly
          tabview/css.jelly
          tabview/distribution-graph.jelly
          tabview/main.jelly

          Added SloccountPublisher step supporting workflow (with jelly file and
          tests)
          steps/SloccountPublisherStep.java
          SloccountPublisherStep/config.jelly
          test/SloccountPublisherStepTest.java

          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: piomis Path: pom.xml src/main/java/hudson/plugins/sloccount/SloccountAreaRenderer.java src/main/java/hudson/plugins/sloccount/SloccountBuildAction.java src/main/java/hudson/plugins/sloccount/SloccountProjectAction.java src/main/java/hudson/plugins/sloccount/SloccountPublisher.java src/main/java/hudson/plugins/sloccount/SloccountResult.java src/main/java/hudson/plugins/sloccount/dashboard/SloccountTablePortlet.java src/main/java/hudson/plugins/sloccount/model/SloccountLanguageStatistics.java src/main/java/hudson/plugins/sloccount/model/SloccountParser.java src/main/java/hudson/plugins/sloccount/model/cloc/ClocFile.java src/main/java/hudson/plugins/sloccount/model/cloc/ClocFiles.java src/main/java/hudson/plugins/sloccount/model/cloc/ClocHeader.java src/main/java/hudson/plugins/sloccount/model/cloc/ClocReport.java src/main/java/hudson/plugins/sloccount/model/cloc/ClocTotal.java src/main/java/hudson/plugins/sloccount/util/FileFinder.java src/main/java/jenkins/plugins/sloccount/steps/SloccountPublisherStep.java src/main/resources/hudson/plugins/sloccount/SloccountBuildAction/statistics.jelly src/main/resources/hudson/plugins/sloccount/SloccountBuildAction/summary.jelly src/main/resources/hudson/plugins/sloccount/SloccountProjectAction/floatingBox.jelly src/main/resources/hudson/plugins/sloccount/SloccountProjectAction/jobMain.jelly src/main/resources/hudson/plugins/sloccount/SloccountPublisher/config.jelly src/main/resources/hudson/plugins/sloccount/SloccountResult/files.jelly src/main/resources/hudson/plugins/sloccount/SloccountResult/folders.jelly src/main/resources/hudson/plugins/sloccount/SloccountResult/index.jelly src/main/resources/hudson/plugins/sloccount/SloccountResult/languages.jelly src/main/resources/hudson/plugins/sloccount/SloccountResult/modules.jelly src/main/resources/hudson/plugins/sloccount/dashboard/SloccountTablePortlet/portlet.jelly src/main/resources/hudson/plugins/sloccount/dashboard/SloccountTablePortlet/table.jelly src/main/resources/index.jelly src/main/resources/jenkins/plugins/sloccount/steps/SloccountPublisherStep/config.jelly src/main/resources/tabview/css.jelly src/main/resources/tabview/distribution-graph.jelly src/main/resources/tabview/main.jelly src/test/java/jenkins/plugins/sloccount/steps/SloccountPublisherStepTest.java http://jenkins-ci.org/commit/sloccount-plugin/784fc4905bb71e64cae78f74397c14a94cdf40f5 Log: JENKINS-35234 Resolved issue - Support the new workflow/pipeline model pom.xml Added dependencies to workflow modules Sloccount plugin now requires Jenkins 2.63 Refactored for new workflow (AbstractBuild and AbstractProject replaced with Run<> and Job<>) SloccountAreaRenderer.java SloccountBuildAction.java SloccountProjectAction.java SloccountPublisher.java SloccountResult.java Solved NPE: SloccountResult.java Ignored FindBug errors: SloccountAreaRenderer.java Solved javadoc complains: SloccountTablePortlet.java SloccountLanguageStatistics.java SloccountParser.java ClocFile.java ClocFiles.java ClocHeader.java ClocReport.java ClocTotal.java Updated API for new Jenkins: FileFinder.java Added escape-by-default in all jelly files: index.jelly SloccountTablePortlet/portlet.jelly SloccountTablePortlet/table.jelly SloccountBuildAction/statistics.jelly SloccountBuildAction/summary.jelly SloccountProjectAction/floatingBox.jelly SloccountProjectAction/jobMain.jelly SloccountPublisher/config.jelly SloccountResult/files.jelly SloccountResult/folders.jelly SloccountResult/index.jelly SloccountResult/languages.jelly SloccountResult/modules.jelly tabview/css.jelly tabview/distribution-graph.jelly tabview/main.jelly Added SloccountPublisher step supporting workflow (with jelly file and tests) steps/SloccountPublisherStep.java SloccountPublisherStep/config.jelly test/SloccountPublisherStepTest.java

          Code changed in jenkins
          User: Piotr Mis
          Path:
          pom.xml
          src/main/java/hudson/plugins/sloccount/SloccountBuildAction.java
          src/main/java/hudson/plugins/sloccount/SloccountResult.java
          http://jenkins-ci.org/commit/sloccount-plugin/6d883661b6aad00a8ac1e4aad1ce51e50e3f8694
          Log:
          JENKINS-35234 Resolved issue - Support the new workflow/pipeline model

          pom.xml

          • Corrected dependencies to master-pom, Jenkins version and workflow plugins

          SloccountResult

          • owner is not serializable so setter must be added and user when SloccountBuildAction is loaded

          SloccountBuildAction.java

          • Run<> must be passed to SloccountResult when build is loaded
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Piotr Mis Path: pom.xml src/main/java/hudson/plugins/sloccount/SloccountBuildAction.java src/main/java/hudson/plugins/sloccount/SloccountResult.java http://jenkins-ci.org/commit/sloccount-plugin/6d883661b6aad00a8ac1e4aad1ce51e50e3f8694 Log: JENKINS-35234 Resolved issue - Support the new workflow/pipeline model pom.xml Corrected dependencies to master-pom, Jenkins version and workflow plugins SloccountResult owner is not serializable so setter must be added and user when SloccountBuildAction is loaded SloccountBuildAction.java Run<> must be passed to SloccountResult when build is loaded

          Code changed in jenkins
          User: Ivaïlo Marinkov
          Path:
          pom.xml
          src/main/java/hudson/plugins/sloccount/SloccountAreaRenderer.java
          src/main/java/hudson/plugins/sloccount/SloccountBuildAction.java
          src/main/java/hudson/plugins/sloccount/SloccountChartBuilder.java
          src/main/java/hudson/plugins/sloccount/SloccountProjectAction.java
          src/main/java/hudson/plugins/sloccount/SloccountPublisher.java
          src/main/java/hudson/plugins/sloccount/SloccountResult.java
          src/main/java/hudson/plugins/sloccount/dashboard/SloccountTablePortlet.java
          src/main/java/hudson/plugins/sloccount/model/SloccountLanguageStatistics.java
          src/main/java/hudson/plugins/sloccount/model/SloccountParser.java
          src/main/java/hudson/plugins/sloccount/model/cloc/ClocFile.java
          src/main/java/hudson/plugins/sloccount/model/cloc/ClocFiles.java
          src/main/java/hudson/plugins/sloccount/model/cloc/ClocHeader.java
          src/main/java/hudson/plugins/sloccount/model/cloc/ClocReport.java
          src/main/java/hudson/plugins/sloccount/model/cloc/ClocTotal.java
          src/main/java/hudson/plugins/sloccount/util/FileFinder.java
          src/main/java/jenkins/plugins/sloccount/steps/SloccountPublisherStep.java
          src/main/resources/hudson/plugins/sloccount/SloccountBuildAction/statistics.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountBuildAction/summary.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountProjectAction/floatingBox.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountProjectAction/jobMain.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountPublisher/config.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountResult/files.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountResult/folders.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountResult/index.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountResult/languages.jelly
          src/main/resources/hudson/plugins/sloccount/SloccountResult/modules.jelly
          src/main/resources/hudson/plugins/sloccount/dashboard/SloccountTablePortlet/portlet.jelly
          src/main/resources/hudson/plugins/sloccount/dashboard/SloccountTablePortlet/table.jelly
          src/main/resources/index.jelly
          src/main/resources/jenkins/plugins/sloccount/steps/SloccountPublisherStep/config.jelly
          src/main/resources/tabview/css.jelly
          src/main/resources/tabview/distribution-graph.jelly
          src/main/resources/tabview/main.jelly
          src/test/java/jenkins/plugins/sloccount/steps/SloccountPublisherStepTest.java
          http://jenkins-ci.org/commit/sloccount-plugin/f7d1b6a6e355e8bc2af228fe37be4ac65f0ac591
          Log:
          Merge pull request #49 from ivaivalous/JENKINS-35234_pipeline_support

          JENKINS-35234 pipeline support

          Compare: https://github.com/jenkinsci/sloccount-plugin/compare/29c846b00a3f...f7d1b6a6e355

          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Ivaïlo Marinkov Path: pom.xml src/main/java/hudson/plugins/sloccount/SloccountAreaRenderer.java src/main/java/hudson/plugins/sloccount/SloccountBuildAction.java src/main/java/hudson/plugins/sloccount/SloccountChartBuilder.java src/main/java/hudson/plugins/sloccount/SloccountProjectAction.java src/main/java/hudson/plugins/sloccount/SloccountPublisher.java src/main/java/hudson/plugins/sloccount/SloccountResult.java src/main/java/hudson/plugins/sloccount/dashboard/SloccountTablePortlet.java src/main/java/hudson/plugins/sloccount/model/SloccountLanguageStatistics.java src/main/java/hudson/plugins/sloccount/model/SloccountParser.java src/main/java/hudson/plugins/sloccount/model/cloc/ClocFile.java src/main/java/hudson/plugins/sloccount/model/cloc/ClocFiles.java src/main/java/hudson/plugins/sloccount/model/cloc/ClocHeader.java src/main/java/hudson/plugins/sloccount/model/cloc/ClocReport.java src/main/java/hudson/plugins/sloccount/model/cloc/ClocTotal.java src/main/java/hudson/plugins/sloccount/util/FileFinder.java src/main/java/jenkins/plugins/sloccount/steps/SloccountPublisherStep.java src/main/resources/hudson/plugins/sloccount/SloccountBuildAction/statistics.jelly src/main/resources/hudson/plugins/sloccount/SloccountBuildAction/summary.jelly src/main/resources/hudson/plugins/sloccount/SloccountProjectAction/floatingBox.jelly src/main/resources/hudson/plugins/sloccount/SloccountProjectAction/jobMain.jelly src/main/resources/hudson/plugins/sloccount/SloccountPublisher/config.jelly src/main/resources/hudson/plugins/sloccount/SloccountResult/files.jelly src/main/resources/hudson/plugins/sloccount/SloccountResult/folders.jelly src/main/resources/hudson/plugins/sloccount/SloccountResult/index.jelly src/main/resources/hudson/plugins/sloccount/SloccountResult/languages.jelly src/main/resources/hudson/plugins/sloccount/SloccountResult/modules.jelly src/main/resources/hudson/plugins/sloccount/dashboard/SloccountTablePortlet/portlet.jelly src/main/resources/hudson/plugins/sloccount/dashboard/SloccountTablePortlet/table.jelly src/main/resources/index.jelly src/main/resources/jenkins/plugins/sloccount/steps/SloccountPublisherStep/config.jelly src/main/resources/tabview/css.jelly src/main/resources/tabview/distribution-graph.jelly src/main/resources/tabview/main.jelly src/test/java/jenkins/plugins/sloccount/steps/SloccountPublisherStepTest.java http://jenkins-ci.org/commit/sloccount-plugin/f7d1b6a6e355e8bc2af228fe37be4ac65f0ac591 Log: Merge pull request #49 from ivaivalous/ JENKINS-35234 _pipeline_support JENKINS-35234 pipeline support Compare: https://github.com/jenkinsci/sloccount-plugin/compare/29c846b00a3f...f7d1b6a6e355

          npiguet's changes have now been merged. I hope to proceed with the release process as soon as I get more familiar with how it happens (please bear with me, it's my first time).

          imarinkov Ivaïlo Marinkov added a comment - npiguet 's changes have now been merged. I hope to proceed with the release process as soon as I get more familiar with how it happens (please bear with me, it's my first time).
          oleg_nenashev Oleg Nenashev added a comment -

          imarinkov Great, thanks for doing it! If there are any issues with the release flow, please do not hesitate to ping me. Should be more or less available starting from tomorrow

          oleg_nenashev Oleg Nenashev added a comment - imarinkov Great, thanks for doing it! If there are any issues with the release flow, please do not hesitate to ping me. Should be more or less available starting from tomorrow

          Thanks oleg_nenashev!

          I've released v1.22 of the plugin and updated the wiki page. I have tested the pipeline step to work correctly.

          It seems the description macro on the top is retrieved automatically from the repository. To add myself on the maintainers list, do I just change developers in pom.xml?

          imarinkov Ivaïlo Marinkov added a comment - Thanks oleg_nenashev ! I've released v1.22 of the plugin and updated the wiki page . I have tested the pipeline step to work correctly. It seems the description macro on the top is retrieved automatically from the repository. To add myself on the maintainers list, do I just change  developers in  pom.xml ?

          The changes are now available with the 1.22 release.

          imarinkov Ivaïlo Marinkov added a comment - The changes are now available with the 1.22 release .
          oleg_nenashev Oleg Nenashev added a comment -

          Sorry for missing the question. You just need to update pom.xml and to release the new version

          oleg_nenashev Oleg Nenashev added a comment - Sorry for missing the question. You just need to update pom.xml and to release the new version

          People

            imarinkov Ivaïlo Marinkov
            nickbrown Nicholas Brown
            Votes:
            17 Vote for this issue
            Watchers:
            18 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: