Consolidate LAVA client tools

Registered by Antonio Terceiro

Currently there are several different client-side lava command line tools: LAVA Dashboard Tool, LAVA Development Tool, LAVA Scheduler Tool, LAVA Tool. We should consolidate them into a single client tool that users would use to interact with LAVA. We have to pay attention to upgrade paths, so maybe we should do a last release of the tools being deprecated, depending on the one that stays.

Blueprint information

Status:
Complete
Approver:
Tyler Baker
Priority:
High
Drafter:
Antonio Terceiro
Direction:
Approved
Assignee:
Antonio Terceiro
Definition:
Approved
Series goal:
Accepted for trunk
Implementation:
Implemented
Milestone target:
milestone icon 2013.05
Started by
Antonio Terceiro
Completed by
Antonio Terceiro

Whiteboard

Meta:
Headline: As part of the effort to improve the developer experience with LAVA, the different client tools were consolidated into a single package, which simplifies the process of updating the tools and makes it easier for the team to provide new features for LAVA users.
Acceptance: LAVA Dashboard Tool, LAVA Development Tool, LAVA Scheduler Tool, LAVA Tool consolidated into a single repository
Roadmap Id: CARD-365

[asac, 24-04-2013]: we have a planning call today; please update the blueprint so it reflects reality. Also drop a note about status like this one; this can include suggestion to deliver this blueprint with reduced featureset and tracking a clearly defined subset of the work in a new blueprint or if we shall carry over.
[terceiro, 24-04-2013]: we have good progress here. The code changes are done, I have to follow up on the merge proposals and then merge. After that I will test the upgrade path and I'll be done.
[stylesen, 02-05-2013]: lava-dashboard-tool commands are not included as part of lava-tool. This is important to be consistent with lava-scheduler-tool commands which are already part of lava-tool. I have pushed the required changes to this branch - lp:~stylesen/lava-tool/add-dashboard-cmds please review and merge.
[terceiro, 02/05-2013] I agree with you, but the dashboard commands were already not available under lava-tool before, and I wanted to avoid too much functional change together with this consolidation. I already released an updated lava-tool to PyPi, but we can upload a fixed one. Let's handle that on your bug report/merge proposal. :-)
[stylesen, 03-05-2013]: I just merged the lava-dashboard-tool changes to lava-tool. I need necessary permissions to upload the package to pypi archive. terceiro please provide me with the permissions in pypi so that I can do the release.
[stylesen, 03-05-2013]: New version (0.7.1) of lava-tool is released to pypi archive. You can see this here - https://pypi.python.org/pypi/lava-tool/ Thanks to terceiro for making it happen!
[terceiro 17-05-2013]: could not find any documentation in the bazaar branches that referenced the deprecated tools explicitly.

(?)

Work Items

Work items:
Determine which tools are actually used and which aren't: DONE
Determine which tool will receive the code from the others: DONE
Do the merge: DONE
Empty the other tools and make a last release, adding the tool that stays as a dependency: DONE
Coordinate with packaging team: DONE
Test upgrade path with pypi: DONE
Update Debian packages: DONE
Test upgrade path with APT: DONE

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.