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

Active Choice Reactive Parameter not returning list as output

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not A Defect
    • Icon: Minor Minor
    • active-choices-plugin
    • None
    • jenkins - 2.77
      Active choice plugin - 2.1
      OS - RhEl 6.8
      Webbrowser - Chrome
      Java - 1.8

      Hi

       

      I am trying to extract list of version from perforce and return the list , so that developers can select the version from the output listed as radio button/something

      But the return doesnt seem to work , neither does it throw any error

      I have added a print statement and it works fine 

      Printed below  ["1610" ,  "1702" ,  "1703" ,  "1710" ,  "1804" ,  "1806"]

       

      Code 

      ___________________________________________________

      import com.perforce.p4java.server.*
      import com.perforce.p4java.impl.generic.core.file.*
      import groovyx.net.http.RESTClient
      import com.perforce.p4java.core.file.FileSpecBuilder
      import com.perforce.p4java.core.file.FileSpecOpStatus
      import com.perforce.p4java.core.file.IFileSpec
      import com.perforce.p4java.option.server.GetFileContentsOptions

      @Grapes([
      @Grab(group='com.perforce', module='p4java', version='2013.1.656196' ),
      @Grab(group='org.codehaus.groovy.modules.http-builder', module='http-builder', version='0.7' )])

      //import com.perforce.p4java.server.*
      //import com.perforce.p4java.impl.generic.core.file.*
      //import groovyx.net.http.RESTClient

      def server = ServerFactory.getServer( "p4java://XXXX:1666", null)
      server.setUserName("username")
      server.connect()
      server.login("password")

      final List<IFileSpec> checkFile = FileSpecBuilder.makeFileSpecList("//depot/Stream_name/Swarm/Stream_Swarm.lst")
      final GetFileContentsOptions gfco = new GetFileContentsOptions()
      gfco.setNoHeaderLine(true)
      gfco.setDontAnnotateFiles(false) // must set this!

      InputStream inStream = server.getFileContents(checkFile, gfco)
      def verlist = []
      inStream.getText("UTF-8").eachLine {
      if (it != null) {
      if (it.contains("${PRODUCT}")){
      String[] tok = it.tokenize("[/\\-]+")
      verlist << tok[1]
      }
      }
      }
      inStream.close()

      def finlstr = verlist.unique().sort().collect{ '"' + it + '"'}.join(",")
      def finl = finlstr.split(',')
      println "$finl"
      try {
      return finl
      }catch(e){ return [e.toString()] }

       

       

        1. 1.JPG
          94 kB
          Sravanthi Chadalavada
        2. 2.JPG
          93 kB
          Sravanthi Chadalavada
        3. 3.JPG
          52 kB
          Sravanthi Chadalavada
        4. 4.JPG
          21 kB
          Sravanthi Chadalavada

            kinow Bruno P. Kinoshita
            srava Sravanthi Chadalavada
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: