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.
