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

war-for-test makes for excessively large artifacts of Jenkins core

    Details

    • Type: Task
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Component/s: core
    • Labels:
      None
    • Similar Issues:

      Description

      The war-for-test artifact is used so that functional tests in plugins can have jenkins.war of the selected version in their classpath, thus letting the WAR exploder do its work. Yet this means that the space consumption in the Maven repository for each release is considerably larger than it really should be, since we store the 65Mb WAR twice!

      Should explore whether there is some other means of locating jenkins.war that does not involve making a full copy. Can we store a placeholder JAR and have WarExploder look up jenkins.war using a relative path in the local repository? (And is there some way to force the WAR to be downloaded by the time the rest runs?) Or can the handler for the primary WAR artifact be customized to mark it as being valid to include in classpaths?

        Attachments

          Issue Links

            Activity

            Hide
            danielbeck Daniel Beck added a comment - - edited

            Since the checksums are identical, Artifactory deduplicates. Check the filestore, they're stored by checksum.

            But Maven isn't as clever...

            Show
            danielbeck Daniel Beck added a comment - - edited Since the checksums are identical, Artifactory deduplicates. Check the filestore, they're stored by checksum. But Maven isn't as clever...
            Hide
            jglick Jesse Glick added a comment - - edited

            Put up a new set of PRs based on a tip from Stephen Connolly which makes this much simpler. Manually tested some combinations including:

            • running workflow-step-api’s tests and pipeline-input-step’s InputStepTest using the new parent POM
              • also using -Djenkins.version=2.xx something LTS
              • also using a snapshot core built from the PR
            • running some core tests making use of HtmlUnit after updating to a snapshot build of jenkins-test-harness
            • running a core test making use of instance-identity
            • running hpi:run on some plugins with various baselines
            • running hudson-dev:run on core
            • checked that test-scoped dependencies looked sane in a plugin: jenkins-*.war is there, plus assets like handlebars
            Show
            jglick Jesse Glick added a comment - - edited Put up a new set of PRs based on a tip from Stephen Connolly which makes this much simpler. Manually tested some combinations including: running workflow-step-api ’s tests and pipeline-input-step ’s InputStepTest using the new parent POM also using -Djenkins.version=2.xx something LTS also using a snapshot core built from the PR running some core tests making use of HtmlUnit after updating to a snapshot build of jenkins-test-harness running a core test making use of instance-identity running hpi:run on some plugins with various baselines running hudson-dev:run on core checked that test -scoped dependencies looked sane in a plugin: jenkins-*.war is there, plus assets like handlebars
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            src/main/java/org/jenkinsci/maven/plugins/hpi/RunMojo.java
            src/main/resources/META-INF/plexus/components.xml
            http://jenkins-ci.org/commit/maven-hpi-plugin/ef917a8008f2c617f6633712824300aab1ab4774
            Log:
            JENKINS-24064 Replace war-for-test classifier with executable-war type.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: src/main/java/org/jenkinsci/maven/plugins/hpi/RunMojo.java src/main/resources/META-INF/plexus/components.xml http://jenkins-ci.org/commit/maven-hpi-plugin/ef917a8008f2c617f6633712824300aab1ab4774 Log: JENKINS-24064 Replace war-for-test classifier with executable-war type.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            src/main/java/org/jenkinsci/maven/plugins/hpi/RunMojo.java
            src/main/resources/META-INF/plexus/components.xml
            http://jenkins-ci.org/commit/maven-hpi-plugin/4b55ed1ed5115a01e605f60a3b09627c38b1111d
            Log:
            Merge pull request #65 from jglick/executable-war-JENKINS-24064

            JENKINS-24064 Replace war-for-test classifier with executable-war type

            Compare: https://github.com/jenkinsci/maven-hpi-plugin/compare/c50d4966ae28...4b55ed1ed511

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: src/main/java/org/jenkinsci/maven/plugins/hpi/RunMojo.java src/main/resources/META-INF/plexus/components.xml http://jenkins-ci.org/commit/maven-hpi-plugin/4b55ed1ed5115a01e605f60a3b09627c38b1111d Log: Merge pull request #65 from jglick/executable-war- JENKINS-24064 JENKINS-24064 Replace war-for-test classifier with executable-war type Compare: https://github.com/jenkinsci/maven-hpi-plugin/compare/c50d4966ae28...4b55ed1ed511
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            README.md
            pom.xml
            http://jenkins-ci.org/commit/plugin-pom/c58b0f199cb11ab1b529026a77e08e2b8318ec0d
            Log:
            JENKINS-24064 Replace war-for-test classifier with executable-war type.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: README.md pom.xml http://jenkins-ci.org/commit/plugin-pom/c58b0f199cb11ab1b529026a77e08e2b8318ec0d Log: JENKINS-24064 Replace war-for-test classifier with executable-war type.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            README.md
            pom.xml
            http://jenkins-ci.org/commit/plugin-pom/356fcf3c31f672a4a881d28e5347486f52245685
            Log:
            Merge pull request #65 from jglick/executable-war-JENKINS-24064

            JENKINS-24064 Replace war-for-test classifier with executable-war type

            Compare: https://github.com/jenkinsci/plugin-pom/compare/cd545762f92d...356fcf3c31f6

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: README.md pom.xml http://jenkins-ci.org/commit/plugin-pom/356fcf3c31f672a4a881d28e5347486f52245685 Log: Merge pull request #65 from jglick/executable-war- JENKINS-24064 JENKINS-24064 Replace war-for-test classifier with executable-war type Compare: https://github.com/jenkinsci/plugin-pom/compare/cd545762f92d...356fcf3c31f6
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            pom.xml
            http://jenkins-ci.org/commit/jenkins-test-harness/90cae737b68268c2d90fd89cfa267736ad05a8a7
            Log:
            JENKINS-24064 Replace war-for-test classifier with executable-war type.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: pom.xml http://jenkins-ci.org/commit/jenkins-test-harness/90cae737b68268c2d90fd89cfa267736ad05a8a7 Log: JENKINS-24064 Replace war-for-test classifier with executable-war type.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            pom.xml
            http://jenkins-ci.org/commit/jenkins-test-harness/c517db8200c33cd842f652bcffbcca27cbea81fc
            Log:
            Merge pull request #61 from jglick/executable-war-JENKINS-24064

            JENKINS-24064 Replace war-for-test classifier with executable-war type

            Compare: https://github.com/jenkinsci/jenkins-test-harness/compare/a77521139c33...c517db8200c3

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: pom.xml http://jenkins-ci.org/commit/jenkins-test-harness/c517db8200c33cd842f652bcffbcca27cbea81fc Log: Merge pull request #61 from jglick/executable-war- JENKINS-24064 JENKINS-24064 Replace war-for-test classifier with executable-war type Compare: https://github.com/jenkinsci/jenkins-test-harness/compare/a77521139c33...c517db8200c3
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            pom.xml
            test/pom.xml
            war/pom.xml
            http://jenkins-ci.org/commit/jenkins/af6e21510b71eb1903cc2169cfca1e5c6654a8ce
            Log:
            JENKINS-24064 Replace war-for-test classifier with executable-war type.

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: pom.xml test/pom.xml war/pom.xml http://jenkins-ci.org/commit/jenkins/af6e21510b71eb1903cc2169cfca1e5c6654a8ce Log: JENKINS-24064 Replace war-for-test classifier with executable-war type.
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Jesse Glick
            Path:
            pom.xml
            test/pom.xml
            war/pom.xml
            http://jenkins-ci.org/commit/jenkins/fb5c899ec96e47c1e8357ae1ba054e092f316ee7
            Log:
            Merge pull request #2899 from jglick/executable-war-JENKINS-24064

            JENKINS-24064 Replace war-for-test classifier with executable-war type

            Compare: https://github.com/jenkinsci/jenkins/compare/dd18af378f01...fb5c899ec96e

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Jesse Glick Path: pom.xml test/pom.xml war/pom.xml http://jenkins-ci.org/commit/jenkins/fb5c899ec96e47c1e8357ae1ba054e092f316ee7 Log: Merge pull request #2899 from jglick/executable-war- JENKINS-24064 JENKINS-24064 Replace war-for-test classifier with executable-war type Compare: https://github.com/jenkinsci/jenkins/compare/dd18af378f01...fb5c899ec96e
            Hide
            scm_issue_link SCM/JIRA link daemon added a comment -

            Code changed in jenkins
            User: Victor Martinez
            Path:
            docs/Testing-DSL-Scripts.md
            http://jenkins-ci.org/commit/job-dsl-plugin/ca99792f54e2f3a754e70a9a69e3c5f36c885db3
            Log:
            JENKINS-24064 war-for-test classifier is not supported from 2.64+

            JENKINS-24064(https://issues.jenkins-ci.org/browse/JENKINS-24064)

            Bumped jenkins-test-harness and also removed the war-for-test classifier as required since version 2.64 onwards

            Further details:

            Show
            scm_issue_link SCM/JIRA link daemon added a comment - Code changed in jenkins User: Victor Martinez Path: docs/Testing-DSL-Scripts.md http://jenkins-ci.org/commit/job-dsl-plugin/ca99792f54e2f3a754e70a9a69e3c5f36c885db3 Log: JENKINS-24064 war-for-test classifier is not supported from 2.64+ JENKINS-24064 ( https://issues.jenkins-ci.org/browse/JENKINS-24064 ) Bumped jenkins-test-harness and also removed the war-for-test classifier as required since version 2.64 onwards Further details: https://groups.google.com/forum/#!topic/job-dsl-plugin/oPjqGR6VTpU

              People

              • Assignee:
                jglick Jesse Glick
                Reporter:
                jglick Jesse Glick
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: