daily-release infrastructure and reporting
This blueprint covers the deployment of a new testing infrasctructure to make testing and landing of Canonical upstream projects more efficient.
Blueprint information
- Status:
- Not started
- Approver:
- Gema Gomez
- Priority:
- High
- Drafter:
- Jean-Baptiste Lallement
- Direction:
- Approved
- Assignee:
- Canonical Platform QA Team
- Definition:
- Approved
- Series goal:
- Accepted for saucy
- Implementation:
- Not started
- Milestone target:
- ubuntu-13.06
- Started by
- Completed by
Related branches
Related bugs
Sprints
Whiteboard
* smem is far too expensive to gather memory usage with a high sampling rate (<1s) On a desktop machine it takes 1.4s avg to collect a sample. smemcap could have been an alternative but then size and time to post-process the data are the limiting factor. On a desktop 1 min of data with a 1s sampling rate uses 800MB of disk space (Thats ~50GB for 1h) and post-processing the data with smem then takes as much time than the test itself, doubling the duration of the run.
* Capturing rss,vss, and other metrics with 'ps' seems the best compromise to collect relatively good metrics, with a high sampling rate (returning the list of processes with detailed information with ps takes an average of .018s) The other advantage of ps is that it is a standard tool, that doesn't require any dependency and do not use python.
Work Items
Work items for ubuntu-13.06:
[jibel] Finish Otto to replace UTAH for the daily landing : DONE
[didrocks] Finish Otto to replace UTAH for the daily landing : DONE
[jibel] Deploy on a test machine in the lab: DONE
[jibel] Integrate with Jenkins: DONE
[jibel] Add support for timeouts and shutdown of the container on failure and much more: DONE
[jibel] Collect memory info with 1second sampling rate during daily-release tests: DONE
Work items for ubuntu-13.07:
[didrocks] decides about the UI, the functionalities that are needed into the dashboard: INPROGRESS
[jibel] daily-release - Create a mirror of touch images in the lab: DONE
[jibel] daily-release - Provision touch devices when a new image is posted: DONE
[jibel] daily-release - Adapt Otto to run daily-release tests on touch devices: DONE
Work items for ubuntu-13.08:
[jibel] Setup daily-release on new desktops in the lab: DONE
[jibel] Modify post-processing script and configurations to use slave names instead of graphics card brand: DONE
[didrocks] implement and deploy 3h-release process: DONE
[jibel] implement and deploy 3h-release process: DONE
Work items for ubuntu-13.09:
[jibel] daily-release - Integrate devices to the testing workflow: INPROGRESS
[jibel] Replace the workflow in jenkins by a backend based on Celery/RabbitMQ: TODO
[didrocks] Replace the workflow in jenkins by a backend based on Celery/RabbitMQ: TODO
[jibel] Integrate the new backend with the dashboard developed by PS: TODO
[didrocks] Integrate the new backend with the dashboard developed by PS: TODO
[fginther] Integrate the new backend with the dashboard developed by PS: TODO
[allanlesage] Integrate the new backend with the dashboard developed by PS: TODO