Uploaded image for project: 'XNAT'
  1. XNAT
  2. XNAT-5559

Python Automation script support disabled

    Details

    • Sprint:
      1.7.6 - 01
    • Rank:
      0|ii1mv1:
    • Sprint:
      1.7.6 - 01

      Description

      The ability to setup python scripts for the automation engine seems to be gone on 1.7-auth-perf. The root cause might be the jython jar disappearing from the webapp.

        Activity

        Hide
        jrherrick@wustl.edu Rick Herrick added a comment -

        I removed the jython-standalone-*.jar from the build because it includes a HUGE number of other libraries rolled up in it, some of which were causing conflicts with libraries we're using elsewhere in XNAT (biggest issue is that it has old versions of some of the javax.xml APIs). Restoring this requires getting the jython package into XNAT without using the stand-alone package, but that also requires some other dependencies to be included. Fixing this requires restoring jython then figuring out what else needs to be included without bringing in crotchety old versions of other libraries.

        Show
        jrherrick@wustl.edu Rick Herrick added a comment - I removed the jython-standalone-*.jar from the build because it includes a HUGE number of other libraries rolled up in it, some of which were causing conflicts with libraries we're using elsewhere in XNAT (biggest issue is that it has old versions of some of the javax.xml APIs). Restoring this requires getting the jython package into XNAT without using the stand-alone package, but that also requires some other dependencies to be included. Fixing this requires restoring jython then figuring out what else needs to be included without bringing in crotchety old versions of other libraries.
        Hide
        jrherrick@wustl.edu Rick Herrick added a comment -

        Added dependency for jython-standalone back to build.gradle. Changed parent pom version for jython to 2.7.1, which has removed or repackaged the classes that caused version conflicts. Added script that analyzes classes in jars to find duplicate entries that might cause trouble.

        Show
        jrherrick@wustl.edu Rick Herrick added a comment - Added dependency for jython-standalone back to build.gradle. Changed parent pom version for jython to 2.7.1, which has removed or repackaged the classes that caused version conflicts. Added script that analyzes classes in jars to find duplicate entries that might cause trouble.
        Hide
        moore.c@wustl.edu Charlie Moore added a comment -

        This is very strange. The dependency is in the build.gradle file, and the war builds just fine, but when it does...the library somehow doesn't end up in the war. Rick is seeing the same behavior.

        Show
        moore.c@wustl.edu Charlie Moore added a comment - This is very strange. The dependency is in the build.gradle file, and the war builds just fine, but when it does...the library somehow doesn't end up in the war. Rick is seeing the same behavior.
        Hide
        jrherrick@wustl.edu Rick Herrick added a comment -

        There was an exclusion to keep the jython jar from being pulled in based on transitive dependencies from automation.

        Show
        jrherrick@wustl.edu Rick Herrick added a comment - There was an exclusion to keep the jython jar from being pulled in based on transitive dependencies from automation.

          People

          • Assignee:
            moore.c@wustl.edu Charlie Moore
            Reporter:
            moore.c@wustl.edu Charlie Moore
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Time Tracking

              Estimated:
              Original Estimate - 1 day
              1d
              Remaining:
              Time Spent - 6 hours Remaining Estimate - 2 hours
              2h
              Logged:
              Time Spent - 6 hours Remaining Estimate - 2 hours
              6h

                Agile