Meego Wiki
Views

ARM/N900/ReleaseProcess

From MeeGo wiki
(Difference between revisions)
Jump to: navigation, search
(DE-affiliated meego.com users)
(DE-affiliated meego.com users)
Line 133: Line 133:
<pre>
<pre>
 +
stskeeps
 +
sage
alaukkanen
alaukkanen
jkunnari
jkunnari

Revision as of 08:51, 25 March 2011

Contents

Developer edition release process

Principles

  • Everything we cannot get into MeeGo 1.2/will have significant difficulties getting into MeeGo 1.2 due to feature freeze will go into the N900 DE OBS project.
  • Everything should ideally be contributed back to MeeGo 1.3 release track.
  • We should stay ABI compatible with MeeGo 1.2.
  • We should be aiming for providing a MeeGo compliant "product".

Repository setup

We have two OBS projects on the Community OBS:

Each of them has two build targets for the packages:

  • 'standard', which points to the current state of the MeeGo 1.2 trunk which becomes next weekly.
  • 'weekly', which points to MeeGo 1.2 weekly release.

This setup will allow us to look-ahead on upcoming issues caused by changes done in the MeeGo 1.2 trunk.

Image building and testing matrix

MeeGo.com weekly release comes out on wednesdays. DE weekly release comes out on fridays.

Day MeeGo.com 1.2 Trunk & Project:DE:Trunk MeeGo.com 1.2 Trunk & Project:DE:Trunk:Testing MeeGo.com 1.2 Weekly & Project:DE:Trunk MeeGo.com 1.2 Weekly & Project:DE:Trunk:Testing
Monday sanity acceptance
Tuesday sanity acceptance
Wednesday (Freeze, only fixes to make sure a proper weekly release happens are let in to Trunk) weekly release track sanity weekly release track acceptance
Thursday sanity acceptance weekly release track sanity weekly release track acceptance
Friday (after weekly release, repository unfreezes) sanity acceptance weekly release track sanity, if OK, DE weekly release

Rationale:

Weekly release == MeeGo 1.2 Trunk on wednesdays, so no need to have seperate images.

Weekly release acceptance testing needs to happen to make the fixes flow to weekly release fix.

"Normal" Sanity/acceptance serves to help prepare for next weeks changes.

Procedures

Developer: Branch a package and submit changes to DE

Choose your origin (in the following, ORIGIN) of the package:

  • MeeGo.com:Trunk (currently 1.2)
  • Project:DE:Trunk:Testing (fix a package already contained in DE)
osc -A https://api.pub.meego.com branch -cm "To work on MeeGo DE" ORIGIN packagename

This creates home:yourusername:branches:ORIGIN.

Go to https://build.pub.meego.com/home/list_my and find your project.

If there is no repositories listed in Repositories tab, go and click "add repository" and "advanced interface" and choose Project:DE:Trunk:Testing as project, "standard" as repository, new name "standard" and architectures armv7el, armv8el and i586.

.. do your work

After your work is done, i.e., doing the changes to the package and after you have committed the changes to your branch, it is time to check that everything is like it should be. So, lets verify the diff between your branch and the target. NOTE: If you are submitting new package to Project:DE:Trunk:Testing the diff is most probably empty.

osc -A https://api.pub.meego.com submitreq -dm "." home:yourusername:branches:ORIGIN packagename Project:DE:Trunk:Testing

After you have confirmed that the diff is ok. It is time to submit the changes:

osc -A https://api.pub.meego.com submitreq -m "What you changed" home:yourusername:branches:ORIGIN packagename Project:DE:Trunk:Testing

As a result of this command you will get request id that corresponds the request. You can check your request from the OBS webui https://build.pub.meego.com/request/show/REQUEST_ID

Release engineering

If you'd like to help out with release engineering, poke Stskeeps / Carsten Munk on IRC.

General procedure for reviewing requests towards Project:DE:Trunk:Testing:

  • Verify the package actually builds in the origin project

Conditions and procedure for accepting a package change into Project:DE:Trunk from Project:DE:Trunk:Testing:

  • The package change must not break any compilation in Trunk:Testing
  • The package change must have been included in one acceptance testing image and no regressions seen because of it by QA.
  • When OK, submit package to Project:DE:Trunk and remove package from Project:DE:Trunk:Testing (use UI).
  • Only accept changes to Project:DE:Trunk that fix issues towards maintaining quality of the weekly image release from Wednesday to Friday weekly release time (soft freeze)
  • Decline any changes made directly to Project:DE:Trunk not done from Project:DE:Trunk:Testing.

DE-affiliated meego.com users

Please send mail to carsten@maemo.org to get activated on community OBS

stskeeps
sage
alaukkanen
jkunnari
marquiz
sachawla
ksilinja
liljeber
sikemppa
kjokinie
msugano
msafr
zhurakiv
Personal tools