thanks again, Stephen. Could  I ask more questions? excerpt from 
""https://wiki.jenkins-ci.org/display/JENKINS/Marking+a+new+plugin+version+as+incompatible+with+older+versions
 
says "*Hudson has an automatic data format upgrade capability*" - what does 
it mean?

I have one more issue with my final solution - after plugin update at 
runtime all fields in job configurations appear empty - after restart they 
all are filled  correctly - should I force some kind of job reloading or 
something?

thanks in advance

On Thursday, July 31, 2014 4:55:04 PM UTC+4, Stephen Connolly wrote:
>
> I worry about the startup time scanning all jobs... there can be 1000's of 
> them... better if you can have something that kicks in when the job is 
> being saved... as that way people can revert your upgrade if there is 
> something wrong without loosing data.
>
> Oh and whatever approach you take, remember to set the 
> compatibleSinceVersion to the first version with the new data layout to 
> give people the scary warning that they never read correctly
>
>
> On 31 July 2014 13:47, <[email protected] <javascript:>> wrote:
>
>> Finally I have ended with following solution.
>>
>> 1. add removed fields and mark them as transient
>> 2. register static method with @Initializer(after = 
>> InitMilestone.JOB_LOADED)
>> 3. for each job do check whether new job property exists if not create 
>> new one and move transient fields to it and then add new job property to 
>> the job
>>
>> does it go? what do you think guys?
>>
>>
>> On Thursday, July 31, 2014 2:21:05 PM UTC+4, [email protected] wrote:
>>>
>>> Thanks, Stephen. nice approach. but what to do if I just moved some 
>>> fields from one job property to another new one (not swapping them entirely)
>>>
>>> On Tuesday, July 29, 2014 6:36:30 PM UTC+4, Stephen Connolly wrote:
>>>>
>>>> Note that you need to be swapping like for like... you can swap one 
>>>> Publisher for another Publisher, but you cannot swap a Publisher for a 
>>>> JobProperty
>>>>
>>>>
>>>> On 29 July 2014 15:35, Stephen Connolly <[email protected]> 
>>>> wrote:
>>>>
>>>>> If you are swapping one JobProperty for another just have readResolve 
>>>>> return the correctly configured new JobProperty, e.g. see similar 
>>>>> https://github.com/jenkinsci/cloudbees-deployer-
>>>>> plugin/blob/master/src/main/java/org/jenkins/plugins/
>>>>> cloudbees/CloudbeesPublisher.java#L102
>>>>>  
>>>>>
>>>>> On 29 July 2014 14:25, <[email protected]> wrote:
>>>>>
>>>>>> thanks, slide. I have already gone through it. but I can't figure out 
>>>>>> the final solution of issue - 
>>>>>> so I can mark fields as transient and check their values at 
>>>>>> readResolve, what then? how to move these values to new job property?
>>>>>>
>>>>>> вторник, 29 июля 2014 г., 16:36:08 UTC+4 пользователь slide написал:
>>>>>>>
>>>>>>> This page, [1], has some good tips.
>>>>>>>
>>>>>>> slide
>>>>>>>
>>>>>>> 1 - https://wiki.jenkins-ci.org/display/JENKINS/Hint+on+retain
>>>>>>> ing+backward+compatibility
>>>>>>>
>>>>>>>
>>>>>>> On Tue, Jul 29, 2014 at 5:30 AM, <[email protected]> wrote:
>>>>>>>
>>>>>>>>  Hi, everyone. Could you please advice me what to do at the 
>>>>>>>> following case:
>>>>>>>>
>>>>>>>> I have one JobProperty at the old version of plugin. after some 
>>>>>>>> refactoring I have created another one job property and moved 
>>>>>>>> attributes 
>>>>>>>> from old job property to new one.
>>>>>>>> the issue is how to upgrade old job configurations to new one 
>>>>>>>> seamlessly?
>>>>>>>>
>>>>>>>> thanks in advance
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>  -- 
>>>>>>>> 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].
>>>>>>>>
>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> -- 
>>>>>>> Website: http://earl-of-code.com 
>>>>>>>
>>>>>>  -- 
>>>>>> 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].
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>>
>>>>>
>>>>  -- 
>> 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] <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
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].
For more options, visit https://groups.google.com/d/optout.

Reply via email to