← Back to team overview

ubuntu-appstore-developers team mailing list archive

Determining CI low-hanging fruits

 

Hello everybody,

from a previous conversation I had an action item to come up with a
number of suggestions for checks we could run on our current
infrastructure and tools. I added all of them to the following page:

 https://wiki.ubuntu.com/AppStore/Decisions/ContinuousIntegration

I'll copy them in here though, so we can have a discussion about how
viable they are and to figure out work items for them.

When you comment, please
 - comment on the test suggestion (or bring up a better idea!),
 - say something about the importance and how much work you expect
   it to be

= Steps in the experience we cover =

1.  Dev uses ubuntu-sdk (qtcreator) to create a .click package
2.  The .click is uploaded to the review website
3.  Our reviewers check the .click and approve it in the website
4.  Dev marks the .click as published in the website
5.  unity-scope-click gets the list of .clicks from the click
    index webservice
6.  dash shows those results
7.  User taps on one app, unity-scope-click opens the app preview
    with details from webservice
8.  User taps on “Install”, ubuntu-download-manager starts
    downloading
9.  Download progress is shown in a different dash preview that
    holds the progressbar
10. Download finishes, ubuntu-download-manager calls “pkcon
    install-local”
11. pkcon uses packagekit dbus api to talk to click pk plugin
12. click does the unpacking, calls hooks to create apparmor
    profile and .desktop files
13. unity-scope-click creates list of installed packages from
    .desktop files
14. user taps on installed app, app is started with the right
    apparmor profile

= Suggested tests =

 - A (Step 1): Keep a list of app projects, check all of them
     out and run lp:qtcreator-plugin-ubuntu scripts on them
     (whenever qtcreator-plugin-ubuntu changes), generate
     .click packages. Validate packages.
 - B (Step 2+3): Keep a list of .click packages. Run validation
     scripts on them server side (whenever scripts or click
     change).
 - C (Step 5): ? Maybe some validation of the results from the
     store?
 - D (Step 10-12): Keep a list of .click packages (whenever
     relevant bits - which? - change), check if everything gets
     installed in the right place and generated files make sense.
 - E (Step 13) ? Check for duplicates? Check for missing icons,
     etc?
 - F (Step 14) ?

The list of tests and steps are roughly based on the bugs we saw up
until now. Please suggest additional tests or things I missed or which
you feel might make more sense to test.

Thanks a lot in advance. I'll make sure to update the wiki page with
what we come up with here.

Have a great day,
 Daniel

-- 
Get involved in Ubuntu development! developer.ubuntu.com/packaging
Follow @ubuntudev on identi.ca/twitter.com/facebook.com/G+

-- 
Ubuntu-app-devel mailing list
Ubuntu-app-devel@xxxxxxxxxxxxxxxx
Modify settings or unsubscribe at:
https://lists.ubuntu.com/mailman/listinfo/ubuntu-app-devel



Follow ups