Bug 9457 - patchtest: document deployment with isolation features
Summary: patchtest: document deployment with isolation features
Status: RESOLVED FIXED
Alias: None
Product: Patchwork/Patchtest
Classification: Yocto Project Subprojects
Component: Patchtest (show other bugs)
Version: 2.1
Hardware: x86 Multiple
: High enhancement
Target Milestone: 2.2 M4
Assignee: Leonardo Sandoval Gonzalez
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2016-04-13 13:52 UTC by Leonardo Sandoval Gonzalez
Modified: 2017-12-06 16:52 UTC (History)
4 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: No (bug/feature does not impact docs)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Leonardo Sandoval Gonzalez 2016-04-13 13:52:38 UTC
patchtest can take malicious patches and in the testing/execution phase, these may do some damage on the system that patchtest is running.  The framework should either work in isolation (container?) or find a way to detect malicious patches before processing.
Comment 1 Leonardo Sandoval Gonzalez 2016-06-14 14:07:57 UTC
This work is in progress and should be finished early 2.2M2.
Comment 2 Leonardo Sandoval Gonzalez 2016-06-21 16:59:47 UTC
Moving back to M1. Any change on milestone must be discussed previously with the CCB.
Comment 3 Leonardo Sandoval Gonzalez 2016-08-22 15:43:39 UTC
Current proposal is being reviewed internally, so moving the bug's status.
Comment 4 Leonardo Sandoval Gonzalez 2016-08-31 14:41:46 UTC
The approach suggested to isolate the patchtest execution was the following: a qemu machine as VM, launched with arguments  indicating a common share folder (virtualized with virtFS) previously populated with all required data: repos and mboxes. Once launched, the machine will automatically execute patchtest and created a folder with results. Once all mboxes are tested, the machine will shutdown; host would parse the output folder and post results. 

Moving to In Progress Implementation because the qemu machine is not yet ready. What is missing is a custom layer containing two main things: a init script (to launch the execution and shutdown) and required recipes/packages for the final image.

The above approach was considered secured enough so this allows to expose patchtest and patchtest-oe code **once** the qemu machine is ready.
Comment 5 Leonardo Sandoval Gonzalez 2016-09-14 16:14:56 UTC
Documentation/code being reviewed internally (security team) before it can go public.
Comment 6 Leonardo Sandoval Gonzalez 2016-10-04 19:26:18 UTC
The security team has fully approved the approach taken to isolate patchtest, so the source code (both patchtest and patchtest-oe) can go public.