Automagic binary packaging
A website that allows upstream software vendors to upload binary tarballs and then turns those tarballs into packages in a PPA as quickly and smoothly as possible.
Blueprint information
- Status:
- Not started
- Approver:
- Rick Spencer
- Priority:
- Undefined
- Drafter:
- Jonathan Lange
- Direction:
- Needs approval
- Assignee:
- Jonathan Lange
- Definition:
- Drafting
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
Whiteboard
Decisions that need to be made:
* When & how much to get the Web team involved
* Whether to have the guess correction UI
* Whether to make the dependency DB a part of Launchpad or a separate application
* How much niceness to add to review UI wrt the state of the Launchpad PPA
* What web server technology to use for server-side pkgme
Phases:
* Dependency database up-and-running and available for use
* Run pkgme in parallel with current existing service
* Support PPA uploads
* Support updates to packages
* Move to using pkgme visibly and public
Work items:
[jml] Define messages sent between myapps and server-side pkgme: DONE
[jml] Get approval on spec from stuartm: DONE
[jml] Create a project on Launchpad for server-side pkgme: DONE
[jml] Talk to IS about plan, find out what's best for them: DONE
[jml] Create a simple web service around pkgme that shows guesses: TODO
[jml] Create a simple web service around pkgme that creates the package for download: TODO
[jml] Create a simple web service around pkgme that creates package and uploads to PPA: TODO
[jml] Change pkgme to handle updates to existing packaging information: TODO
[jml] Write a simple command-line client for testing web service: TODO
[jml] Create a project on Launchpad for binary backend: DONE
[jml] Find out what would be the correct changelog updater name to use and use that: TODO
[jml] Take description from metadata and put that in control file: TODO
[jml] Take license information from metadata and put that in control file & packaging: TODO
[jml] Correctly indicate which architecture is being built for: TODO
[jml] Update to build for both i386 and amd64: TODO
[jml] Take icons from metadata and add them to desktop file and packaging appropriately: TODO
[jml] Figure out why .desktop file is not working and fix: DONE
[jml] Update dependency guessing to take symbols into account: TODO
[elachuni] Add a hook that calls out to server-side pkgme: DONE
[elachuni] Add a hook to take results from server-side pkgme: DONE
[jml] Create mockup pages for changes to developer portal UI: TODO
[elachuni] Add a feature-flag system to developer-portal UI: DONE
[jml] Add UI that shows guesses only, but provides no opportunity to correct: TODO
[jml] Add UI for correcting guesses to UI: TODO
[jml] Update review UI to have links to both packaged versions and original tarball uploads: TODO
[jml] Write an ensemble formula for service: TODO
[jml] Add version guessing to binary backend: TODO