I couldn't get that to work right but got a little but further using the
JsonSlurper (as opposed to JsonSlurperClassic)

Assuming my data structure is represented in json like:

{
  "name": "templates",
  "tags": [
    "qa_tmpl-92",
    "qa_tmpl-93",
    "qa_tmpl-94"
  ]
}

I was trying something like this:

import groovy.json.JsonSlurper
try {
    List<String> artifacts = new ArrayList<String>()
    def artifactsUrl = "http://localhost:5000/v2/templates/tags/list";

    def artifactsObjectRaw = ["curl", "-s", "-H", "accept:
application/json", "-k", "--url", "${artifactsUrl}"].execute().tags
    def jsonSlurper = new JsonSlurper()
    def artifactsJsonObject = jsonSlurper.parseText(artifactsObjectRaw)
    def dataArray = artifactsJsonObject.data
    for(item in dataArray){
        if (item.isMetadata== false)
        artifacts.add(item.tags)
    }
    return artifacts
} catch (Exception e) {
    print "There was a problem fetching the artifacts"
}

Running in groovysh, it didn't show me an error, but I ended up in the
catch, so I think the way I am trying to do curl, this bit in particular
(${artifactsUrl}"].execute().tags) is wrong.

There was a problem fetching the artifacts ===> null


Can anyone point me in the right direction here?

On Mon, Oct 19, 2020 at 5:07 PM Kari Cowan <karicowa...@gmail.com> wrote:

> Nice. That’s a good tip. Thanks 😊
>
> On Mon, Oct 19, 2020 at 4:36 PM Jan Monterrubio <janmonterru...@gmail.com>
> wrote:
>
>> Yep, if docker tags can return you json, you can just slurp stuff and
>> transform it.
>>
>> On Mon, Oct 19, 2020 at 09:27 Kari Cowan <karicowa...@gmail.com> wrote:
>>
>>> This is clever - thanks.
>>>
>>> I don't have a directory of files in my git project- but I am guessing I
>>> could write something to add - like a deployment tag list that matches the
>>> docker registry?
>>>
>>> Ideally I would pull the docker register tag list and use that.
>>>
>>>
>>> On Fri, Oct 16, 2020 at 1:15 PM janmont...@gmail.com <
>>> janmonterru...@gmail.com> wrote:
>>>
>>>>  import groovy.json.JsonSlurperClassic
>>>>  def jsonSlurper = new JsonSlurperClassic()
>>>> def response = jsonSlurper.parse(new URL("SOME REPO HERE"))
>>>> return response
>>>>
>>>> It was something like that ^
>>>>
>>>> You can always start with a "return [ 'a', 'b'] " , we used the
>>>> ActiveChoice reactive parameter
>>>>
>>>>
>>>> On Thursday, October 15, 2020 at 11:32:33 PM UTC-5 janmont...@gmail.com
>>>> wrote:
>>>>
>>>>> I’ve used the extended choice parameter to pull a list of files from a
>>>>> directory in github and display a set of checkboxes. I’ll remember to grab
>>>>> you a snippet tomorrow during work!
>>>>>
>>>>>
>>>>>
>>>>> On Thu, Oct 15, 2020 at 17:01 Kari Cowan <karic...@gmail.com> wrote:
>>>>>
>>>>>> I am working on a Jenkins job to rollback a Docker container to the
>>>>>> previous version.  This on its own is pretty straight-forward, but what I
>>>>>> want to do is get my list of available tags from the registry. As opposed
>>>>>> to going to the registry-page and seeing what's available, then 
>>>>>> copy/paste
>>>>>> a value into a form on Jenkins, I'd like to automate that step somehow - 
>>>>>> by
>>>>>> grabbing the data from the registry page and displaying the options in a
>>>>>> choice parameter in Jenkins on the build screen.
>>>>>>
>>>>>> For example, call in the registry url by ip, example,
>>>>>> 10.11.12.199:5000/v2/some-api/tags/list might display some JSON like:
>>>>>> {"name":"some-api","tags":["qa_api-11","qa_api-12","qa_api-13"]}
>>>>>>
>>>>>> What's the best tool for this?  I'm no Groovy expert but would the
>>>>>> Extensible Choice Parameter plugin coupled with a Groovy script be useful
>>>>>> here? I'm not really clued up yet if this is possible in Groovy, but am
>>>>>> open to suggestions.  Does anyone have any tips on that or other methods
>>>>>> that are better?
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> You received this message because you are subscribed to the Google
>>>>>> Groups "Jenkins Users" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>> send an email to jenkinsci-use...@googlegroups.com.
>>>>>> To view this discussion on the web visit
>>>>>> https://groups.google.com/d/msgid/jenkinsci-users/CAE7w4hg_RpwfVYAh7m9FLc1oxCPZQuqwd-eMpj6kFgBdMsJoOA%40mail.gmail.com
>>>>>> <https://groups.google.com/d/msgid/jenkinsci-users/CAE7w4hg_RpwfVYAh7m9FLc1oxCPZQuqwd-eMpj6kFgBdMsJoOA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>> .
>>>>>>
>>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Jenkins Users" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to jenkinsci-users+unsubscr...@googlegroups.com.
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/jenkinsci-users/d99e92f5-f7a8-493c-b90a-997aa6aec02fn%40googlegroups.com
>>>> <https://groups.google.com/d/msgid/jenkinsci-users/d99e92f5-f7a8-493c-b90a-997aa6aec02fn%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Jenkins Users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to jenkinsci-users+unsubscr...@googlegroups.com.
>>>
>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/jenkinsci-users/CAE7w4hiWP_btV6D4oh0y0mPH92TpuwG7e-RdEM7BTP%3DbvDe-7Q%40mail.gmail.com
>>> <https://groups.google.com/d/msgid/jenkinsci-users/CAE7w4hiWP_btV6D4oh0y0mPH92TpuwG7e-RdEM7BTP%3DbvDe-7Q%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Jenkins Users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to jenkinsci-users+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/jenkinsci-users/CADgiF9LDMDY5WZKfYdSZPq2x9-5pMW34kRaoPMeKfEbDt%3DJcVA%40mail.gmail.com
>> <https://groups.google.com/d/msgid/jenkinsci-users/CADgiF9LDMDY5WZKfYdSZPq2x9-5pMW34kRaoPMeKfEbDt%3DJcVA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-users/CAE7w4hiurFcO5OfBZOjb2P6fqse8HNMTQFszEB9yQH6YjsyH9w%40mail.gmail.com.

Reply via email to