That is great Liam, that looks pretty neat. 

Anyone using this - as always, try to take a backup first before running 
powerful scripts ;)

On Tuesday, April 26, 2016 at 7:34:23 AM UTC+10, Liam wrote:
>
> So I ended up writing a little script using the groovy shell:
>
> import com.cloudbees.dockerpublish.DockerBuilder
>
> for(item in Hudson.instance.allItems) {
>   for (builder in item.builders) {
>     if (builder instanceof DockerBuilder && builder.dockerfilePath) {
>       println("Changing build context of " + item.name + " to: " + 
> builder.dockerfilePath);
>       builder.buildContext = builder.dockerfilePath;
>       println("Blanking dockerfilePath of " + item.name); 
>       builder.dockerfilePath = "";
>     }
>   }
> }
>
>
> Which worked on my machine.
>
>
> On Monday, 21 March 2016 11:13:23 UTC+13, Michael Neale wrote:
>>
>> Liam, one way would be to take jenkins down, backup JENKINS_HOME, and 
>> then use shell scripting to modify the config.xml (lets call that the 
>> "ghetto way"), then start it up. 
>>
>> I am not sure off the top of my head how to modify it with the groovy 
>> shell, but will see if can work it out. 
>>
>> On Mon, Mar 21, 2016 at 8:03 AM Liam <[email protected]> wrote:
>>
>>> So we've successfully updated to Docker 1.10.3 on our Jenkins machines, 
>>> and had it running for a bit, and everything seems to be working fine.
>>>
>>> Can you give me any for pointers for tackling the bulk-ish update? I'm 
>>> basically a novice at using Jenkins, so I'm not really sure where to start 
>>> with this kind of thing, apart from trying to find a database and twiddling 
>>> values in it, which seems like it could end badly...
>>>
>>> On Thursday, 10 March 2016 19:38:15 UTC+13, Michael Neale wrote:
>>>
>>>> A bulk-ish update could be scripted. 
>>>>
>>>> On Thu, Mar 10, 2016 at 5:26 PM nicolas de loof <[email protected]> 
>>>> wrote:
>>>>
>>> looks to me the plugin didn't correctly handle legacy data migration
>>>>>
>>>>> in 1.0 dockerfilePath was used to store the build context - as there 
>>>>> was only one possible dockerfile the variable name looked good
>>>>> in 1.1, support for --file was introduced by changing the meaning of 
>>>>> this field, and adding buildContext to replace it on its initial role
>>>>> so the confusion
>>>>>
>>>>>
>>>>> see 
>>>>> https://github.com/jenkinsci/docker-build-publish-plugin/commit/61e55dce1d4c78a21740ba98d271ddcb7369d741
>>>>>
>>>>> seems it's too late now to change this, will need to reconfigure the 
>>>>> job.
>>>>>
>>>>> 2016-03-09 23:28 GMT+01:00 Michael Neale <[email protected]>:
>>>>>
>>>>>> OK, interested in how things are when you upgrade docker. 
>>>>>>
>>>>>> I'll take a closer look at the confusion around Dockerfile name vs 
>>>>>> path. 
>>>>>>
>>>>>>
>>>>>> On Thursday, March 10, 2016 at 7:18:49 AM UTC+11, Liam wrote:
>>>>>>>
>>>>>>> So our Jenkins machine is running docker 1.7.1 atm. We're going to 
>>>>>>> upgrade to 1.10 shortly.
>>>>>>>
>>>>>>> I don't think that we actually need to change anything, and it's not 
>>>>>>> like we can rewrite past versions or anything, for me it's more about 
>>>>>>> providing a working migration path forwards. 
>>>>>>>
>>>>>>> Even if that takes the form of a script or something, that's totally 
>>>>>>> fine.
>>>>>>>
>>>>>>> On Wednesday, 9 March 2016 13:37:24 UTC+13, Michael Neale wrote:
>>>>>>>>
>>>>>>>> In the short term, I don't think you are missing out on anything by 
>>>>>>>> using 1.0 while you work out what docker version. 
>>>>>>>>
>>>>>>>> May need to adjust this to work more as expected.
>>>>>>>>
>>>>>>>> On Wednesday, March 9, 2016 at 10:57:53 AM UTC+11, Liam wrote:
>>>>>>>>>
>>>>>>>>> I'm not sure what version of docker is running on the Jenkins 
>>>>>>>>> machine at the moment. I'll find out, but that may take a little 
>>>>>>>>> while.
>>>>>>>>>
>>>>>>>>> Yes, you're correct that bs-api is the directory containing the 
>>>>>>>>> dockerfile (the path). In v1.0.1 it was treated as such, but now it's 
>>>>>>>>> treated as the path to the Dockerfile (the --file flag). 
>>>>>>>>>
>>>>>>>>> We're not really in a position to be able to manually adjust this 
>>>>>>>>> for all of our builds, since we've got loads that use this property.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Wednesday, 9 March 2016 12:05:36 UTC+13, Michael Neale wrote:
>>>>>>>>>>
>>>>>>>>>> Some of these changes were due to changes in docker itself - what 
>>>>>>>>>> version of docker are you running? 
>>>>>>>>>>
>>>>>>>>>> Yes, I suspect the meaning is a subtle change. 
>>>>>>>>>>
>>>>>>>>>> So in the past bs-api I guess would have been the PATH. 
>>>>>>>>>> The latest cli: 
>>>>>>>>>> https://docs.docker.com/engine/reference/commandline/build/
>>>>>>>>>>
>>>>>>>>>> So according to this, in 1.1 of the plugin, bs-api would be the 
>>>>>>>>>> name of your "Dockerfile", which is probably not what you mean? the 
>>>>>>>>>> bs-api 
>>>>>>>>>> was the directory that had the Dockerfile in it before if I am 
>>>>>>>>>> right?  
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Wednesday, March 9, 2016 at 9:14:45 AM UTC+11, Liam wrote:
>>>>>>>>>>>
>>>>>>>>>>> We're using 
>>>>>>>>>>> https://wiki.jenkins-ci.org/display/JENKINS/CloudBees+Docker+Build+and+Publish+plugin
>>>>>>>>>>>  
>>>>>>>>>>> to do our docker builds.
>>>>>>>>>>>
>>>>>>>>>>> I've tried to update from v1 -> v1.2, which caused previously 
>>>>>>>>>>> successful builds to fail. I went back through and isolated the 
>>>>>>>>>>> issue to be 
>>>>>>>>>>> the jump from v1.0.1 to v1.1.
>>>>>>>>>>> I didn't alter any of the build configuration during this 
>>>>>>>>>>> process.
>>>>>>>>>>>
>>>>>>>>>>> Looking at the logs, it seems like the commands are run 
>>>>>>>>>>> differently, despite the lack of change in configuration:
>>>>>>>>>>> v1.0.1:
>>>>>>>>>>>
>>>>>>>>>>> docker build -t lfn3/bs-api:142 --no-cache=true bs-api
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> v1.1
>>>>>>>>>>>
>>>>>>>>>>> docker build -t lfn3/bs-api:141 --no-cache=true --file=bs-api 
>>>>>>>>>>> /var/lib/jenkins/jobs/docker-bs-api/workspace
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> It appears that the parameter that was previously treated as the 
>>>>>>>>>>> docker context dir is now passed as the docker file-path. 
>>>>>>>>>>>
>>>>>>>>>>> It seems like the field was mis-named in v1.0.1: "Directory 
>>>>>>>>>>> dockerfile is in", and I'm guessing it was renamed to something 
>>>>>>>>>>> like "Dockerfile name" and a separate context dir was introduced?
>>>>>>>>>>>
>>>>>>>>>>> -- 
>>>>>> You received this message because you are subscribed to the Google 
>>>>>> Groups "Jenkins Developers" group.
>>>>>>
>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>>> an email to [email protected].
>>>>>>
>>>>> To view this discussion on the web visit 
>>>>>> https://groups.google.com/d/msgid/jenkinsci-dev/e0483afc-b782-49c3-a4ac-534c13ceaa6d%40googlegroups.com
>>>>>>  
>>>>>> <https://groups.google.com/d/msgid/jenkinsci-dev/e0483afc-b782-49c3-a4ac-534c13ceaa6d%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>> .
>>>>>>
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>> -- 
>>>>> You received this message because you are subscribed to a topic in the 
>>>>> Google Groups "Jenkins Developers" group.
>>>>> To unsubscribe from this topic, visit 
>>>>> https://groups.google.com/d/topic/jenkinsci-dev/1d29YSpPxYA/unsubscribe
>>>>> .
>>>>>
>>>> To unsubscribe from this group and all its topics, send an email to 
>>>>> [email protected].
>>>>
>>>>
>>>>> To view this discussion on the web visit 
>>>>> https://groups.google.com/d/msgid/jenkinsci-dev/CANMVJz%3Dd5tYz%2B1ScGzWtZL9aDjT41_Yab1r8DMY-K%3DXfXgYi-A%40mail.gmail.com
>>>>>  
>>>>> <https://groups.google.com/d/msgid/jenkinsci-dev/CANMVJz%3Dd5tYz%2B1ScGzWtZL9aDjT41_Yab1r8DMY-K%3DXfXgYi-A%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>> -- 
>>>>
>>>> -- 
>>>> Regards, 
>>>>
>>>> Michael Neale
>>>> (twitter: @michaelneale, skype: michael_d_neale)
>>>> Cell: +61 423175597
>>>> Cofounder & Engineer @ large in CTO office. 
>>>>
>>> -- 
>>> You received this message because you are subscribed to a topic in the 
>>> Google Groups "Jenkins Developers" group.
>>> To unsubscribe from this topic, visit 
>>> https://groups.google.com/d/topic/jenkinsci-dev/1d29YSpPxYA/unsubscribe.
>>> To unsubscribe from this group and all its topics, send an email to 
>>> [email protected].
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/jenkinsci-dev/a30b7600-cd05-4e67-acb3-7430ce1e9d27%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/jenkinsci-dev/a30b7600-cd05-4e67-acb3-7430ce1e9d27%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>> -- 
>>
>> -- 
>> Regards, 
>>
>> Michael Neale
>> (twitter: @michaelneale, skype: michael_d_neale)
>> Cell: +61 423175597
>> Cofounder & Engineer @ large in CTO office. 
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-dev/e19187f9-434b-4d84-a107-1e58f3f8a065%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to