Hi Srinidhi, On Wed, Jul 10, 2019 at 03:37:37AM -0600, Srinidhi B wrote:
Hello Everyone,
I've a question regarding OBS Maintenance Process: What is the best way to re-release a maintenance update into a different codestream? What I mean to ask is - a maintenance update released for codestream X needs to be released into codestream Y with following conditions:
A different product from the same built binaries?
- Packages should not be rebuilt in codestream Y
- Binaries should not be signed again
I've written a script that does the following:
- Run cmd=createmaintenanceincident on the Maintenance project to create a new incident
- Create "patchinfo" package
- Update patchinfo/_patchinfo
- based on a very slightly modified version of code taken from obs_admin --create-patchinfo-from-updateinfo
- enable build and publish manually (I'm yet to figure out how to create proper hash for enabling these at the package creation time)
- Branch Channel package - osc branch -M <Channels-prj> <channel-pkg> <maintenance-incident>
- Enable channel - osc enablechannel <maintenance-incident> <channel-pkg>
- Upload / inject binaries and updateinfo.xml fetched from step 3 to "patchinfo" package
What I found while talking to Adrian on IRC, I can't raise a release request for such a maintenance incident because the API can't find a package other than "patchinfo" in "succeeded" state. And even if I use _aggregates for these packages, then also, I can't raise a release request because "patchinfo" package is always "excluded" saying "no package enabled".
How do I go about re-releasing a maintenance update?
What we do: osc unlock $INCIDENT the previous released incident. This will keep the package still locked. add the new product channels (via osc addchannels or osc branch -M ... $OLDINCIDENT) Edit the project meta: osc meta prj -e $INCIDENT remove trigger="maintenance" XML attributes from the repos that should NOT be rereleased. Check if the channels are in the correct channels with "osc ls -b" or similar. then do a releaserequest again osc releaserequest $INCIDENT check with "rq show" if its correct. Ciao, Marcus -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org