From owner-freebsd-virtualization@FreeBSD.ORG Thu Mar 20 20:54:55 2014 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9033E739 for ; Thu, 20 Mar 2014 20:54:55 +0000 (UTC) Received: from mail-la0-x22b.google.com (mail-la0-x22b.google.com [IPv6:2a00:1450:4010:c03::22b]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 1A8A1179 for ; Thu, 20 Mar 2014 20:54:54 +0000 (UTC) Received: by mail-la0-f43.google.com with SMTP id e16so1037283lan.2 for ; Thu, 20 Mar 2014 13:54:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=jXt+NbVSZMHd4CKys6PvAhN21IcgR5Iu+d/9zVFbOTU=; b=DlIsgoj4Fg8uAZgLWpB1KOIUqZSgnot2CxYkRATQkpZ2NLzs6LEndMCGW2pU0ytSs4 FD0v5bqrHJ1SRAAxdkjvyocP55YAyIsYAXkdx/8OKOhbo1dISBs0GvakeEtVqEUnS0wc ktYjeB3IDneXzGGUIam+8U5Di5dycc31GmVAjHjqm6TtsZK3dsBXvxE7uSNVtbPV2Mi5 fhg3D4HAZYp2nWZP25xz6VhM7rRQtFlrDNG8bEOHtowS0JhebEJQNq+GN4Pe1sF9On2n XUN0uGmA1F9NQV4rX/QJIVU59WwqYUHVmrhUmom6sIKDG7xu8l28MIrO9TyjfMlk4dSH X8dg== MIME-Version: 1.0 X-Received: by 10.112.154.202 with SMTP id vq10mr29697473lbb.3.1395348893112; Thu, 20 Mar 2014 13:54:53 -0700 (PDT) Sender: crodr001@gmail.com Received: by 10.112.169.68 with HTTP; Thu, 20 Mar 2014 13:54:53 -0700 (PDT) In-Reply-To: <201403201124.07472.jhb@freebsd.org> References: <532A0DE6.2020801@pitt.edu> <201403201124.07472.jhb@freebsd.org> Date: Thu, 20 Mar 2014 13:54:53 -0700 X-Google-Sender-Auth: EOo29ovou4xnvuO-95dOmP1ENZw Message-ID: Subject: Re: Google Summer of Code 2014 question From: Craig Rodrigues To: John Matty Content-Type: text/plain; charset=ISO-8859-1 Cc: "freebsd-virtualization@freebsd.org" X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Mar 2014 20:54:55 -0000 On Thu, Mar 20, 2014 at 8:24 AM, John Baldwin wrote: > > This isn't a bad place to ask this question. I think a person you might > want to talk to is Craig Rodrigues (cc'd) who has recently setup Jenkins > with the goal of doing automated testing using virtual machines. I'm not > sure exactly what design he is considering, but he is the person to ask. Last year I signed up to be a GSoC mentor, but this year I unfortunately do not have time, so haven't done so. Unfortunately, since I did not sign up as a mentor, I can't view your proposal on the google-melange web site. If you look at the following link, you can see the March 13 presentation which describes some work I did setting up Jenkins and BHyve for continuous integration and testing on FreeBSD: https://wiki.freebsd.org/Jenkins#Presentations_and_Working_Groups If you look at this link, item 22: https://wiki.freebsd.org/Jenkins#Jenkins_for_FreeBSD_status you will see that we are trying to work at integrating Jenkins with the Kyua framework, so that Jenkins can run Kyua, and report the results in the Jenkins web UI. Jenkins is used by hundreds of companies, not just in the FreeBSD world. Kyua is gaining popularity in the FreeBSD community, and is already used by major companies (EMC/Isilon and Spectralogic are the ones that I know of). There are already many systems out there for doing automation, starting/stopping VM's, and running tests. I'm focusing on integrating as many existing technologies and getting them to run under FreeBSD to put together a more modern continuous integration and testing pipeline for the FreeBSD project. I cannot comment on the specifics your proposal without reading it. However, I don't see a lot of value in coming up with a new Domain Specific Language for starting/stopping VM's and sending commands to VM's. There are already many people doing this already with other frameworks and automation API's. For example, libvirt ( http://libvirt.org ) is one popular API specifically for controlling VM's. In terms of frameworks that can send remote commands to VM's, there are already plenty of automation systems to choose from: Puppet, Chef, SaltStack, CFEngine are some examples. Creating a new Domain Specific Language for VM control sounds like a more academic/research exercise, so if you can get someone to mentor you for such a project, maybe you can target the results of your work for publication, if that is of interest to you. -- Craig