Building Community by Building Packages

Embed Size (px)

Citation preview

  • 8/9/2019 Building Community by Building Packages

    1/12

    Building Communityby Building Packages

    Andrew Simpson

    ([email protected])

  • 8/9/2019 Building Community by Building Packages

    2/12

    Supporting contributionsSet up environment

    Sign Contribution Agreement

    Get Kits

    Choose a bug to fix

    Reproduce problem

    Assign bug to yourself

    Get the code

    Clone repository

    Update to relevant Branch

    Build the package

    Get right package definition

    Build the package

    Fix the bug

    Contribute your fix

    Commit changes

    Copyright 2010 Symbian Foundation. 2

    Questions someone making

    contributions to an existing packagewill need to ask

    Which version of the package shouldI use?

    Does my fix work with latest code? Have I broken anything?

    Need to choose a Green version of thepackage

    Should not be too old Need to be able to test for regressions

    Need to understand the results

  • 8/9/2019 Building Community by Building Packages

    3/12

    Package build Dashboard 3.0.h

    Copyright 2010 Symbian Foundation. 3

    73 Green, 36 AmberNote : 25 of these packages built from FCLGreen is quite generous, some issues being hidden

  • 8/9/2019 Building Community by Building Packages

    4/12

    Why packages break? Foundation uses single Foundation Model

    DFS Adaptation and TPIP stripped out

    Copyright 2009 Symbian Foundation. 4

    S60Build

    GT

    Build

    TPIPFilter

    Team/IDObuilds

    Team/IDO

    builds

    Team/IDObuilds

    Not alignedwithFoundationpackages

    PlatformBuild

    Package builds

    Single Foundation Model

    (aggregated from packages)

    Nokia Foundation

    OS

    MW

    APP

  • 8/9/2019 Building Community by Building Packages

    5/12

    Platform

    Package

    Change Flow Today Changes arrive weeks after they are made

    Feedback is slow and not easy to understand Not easy for package owners to recreate our build & test

    Even good package owners find it hard to avoid breaks

    Copyright 2010 Symbian Foundation. 5

    OEMEnvironment

    FoundationEnvironment

    Build

    Test

    MCL

    Build

    Test

    Package

    Test

    Build

    Release

    Platform

    Build

    Test

    Release

    A changeis made

    changearrives

    atSymbian

    FeedbackMany weeks

    after changemade

  • 8/9/2019 Building Community by Building Packages

    6/12

    Platform

    Package

    Change Flow In the Future

    Feedback must be quick, clear, reproducible, accurate

    Package owners able to verify changes in Foundationenvironment before submission

    Copyright 2010 Symbian Foundation. 6

    OEMEnvironment

    FoundationEnvironment

    Build

    Test

    MCL

    Build

    Test

    Release

    A changeis made

    changearrives

    at

    Symbian

    Feedbackas soon aspossible

    Package

    Test

    Build

    Platform

    Build

    Test

    Release

    MCL

    SF

    Build& Test

  • 8/9/2019 Building Community by Building Packages

    7/12

  • 8/9/2019 Building Community by Building Packages

    8/12

    Links and Resources

    How we run package builds in the Foundation

    We use Hudson / Helium but can use Raptor directly

    Hudson / Helium : http://developer.symbian.org/wiki/index.php/Using_Hudson_for_Building

    Raptor : http://developer.symbian.org/wiki/index.php/How_to_Build_a_Package

    Latest Package build results

    Linked from package landing page

    Search / dashboard available http://cdn.symbian.org/sf_builds/cgi-bin/searchbuilds.pl

    Foundation Build Tools http://developer.symbian.org/oss/MCL/sftools/fbf

    Copyright 2010 Symbian Foundation. 8

    http://developer.symbian.org/wiki/index.php/Using_Hudson_for_Buildinghttp://developer.symbian.org/wiki/index.php/How_to_Build_a_Packagehttp://cdn.symbian.org/sf_builds/cgi-bin/searchbuilds.plhttp://developer.symbian.org/oss/MCL/sftools/fbfhttp://developer.symbian.org/oss/MCL/sftools/fbfhttp://cdn.symbian.org/sf_builds/cgi-bin/searchbuilds.plhttp://cdn.symbian.org/sf_builds/cgi-bin/searchbuilds.plhttp://cdn.symbian.org/sf_builds/cgi-bin/searchbuilds.plhttp://developer.symbian.org/wiki/index.php/How_to_Build_a_Packagehttp://developer.symbian.org/wiki/index.php/Using_Hudson_for_Buildinghttp://developer.symbian.org/wiki/index.php/Using_Hudson_for_Building
  • 8/9/2019 Building Community by Building Packages

    9/12

    Package Build Dashboard

    Copyright 2010 Symbian Foundation. 9

  • 8/9/2019 Building Community by Building Packages

    10/12

    Example build summary

    Copyright 2010 Symbian Foundation. 10

  • 8/9/2019 Building Community by Building Packages

    11/12

    Compiler Compatibility builds

    Copyright 2010 Symbian Foundation. 11

    Building with RVCT 4.0 and GCC 4.4.1

  • 8/9/2019 Building Community by Building Packages

    12/12

    Build & Test Today

    PackageBuild

    PlatformBuild Platform

    BuildArchive

    FCTest

    SmokeTest

    Daily Daily

    BCTest

    Platform

    ReleaseGate

    Bi-Weekly

    Package

    ReleaseGate

    PackageBuild

    Archive

    PackageTestExternalTests

    Co

    ntributions

    Bulk Contributions < 50 % green builds No package tests Information difficultto find / understand Not maintained bypackage owners

    No Package release gate Results complicated Smoke Test Limited

    No FC Test No External Tests Release cycle varies