Awesome job Paul. I was in such dire need of a tool like this, everything I need to check if a feature works for different hardware, I have to spend an obscene amount of time to set things up. This would really be productivity booster for sure.
-Syed On Thu, Jul 7, 2016 at 5:53 AM, Paul Angus <paul.an...@shapeblue.com> wrote: > Hi all > > As some of you may know, I have been working for some time on a project > called Trillian. This started out as an internal project at $dayjob with > the intentions of being able to quickly build environments to: > > > a) Test new feature software builds (manually and via Marvin) > > b) Test community releases (manually and via Marvin) > > c) Replicate failure scenarios > > d) Evaluate new features > > To meet these and a number of other requirements I started Trillian. At > Trillian's core are Ansible, CloudStack and vSphere virtualisation. Ansible > takes a command line input and requests VM instances from CloudStack and > then configures all of the hypervisor hosts and mgmt. servers, finally > creating a zone which incorporates all of the components which were > requested. > > The environments are built in projects and the accounts which are allowed > access are specified on the commandline. > > The commandline arguments look like this: > > --extra-vars "env_name=myACSenv env_version=cs45 hvtype=x hv=2 > xs_ver=xs65sp1 env_accounts=all pri=1 mgmt_os=6" > > There is a global file which holds the mapping of ACS version to relevant > URLs or OS types to specific templates, however EVERY mapping can be > overridden from commandline. > > --extra-vars "env_name=cs49-vmw55-pga env_version=cs49 mgmt_os=6 hvtype=v > vmware_ver=55u3 hv=2 pri=2 env_accounts=all build_marvin=yes > baseurl_cloudstack=http://10.2.0.4/shapeblue/cloudstack/testing/ > mgmtsrv_template=Testc6Template" > > CloudStack deploys the virtualised hypervisor hosts and mgmt. servers as > and when required - CloudStack mgmt. server, MySQL hosts Marvin host, > vCenter server) onto the ESXi hosts. > > The output from each request is a bespoke, fully working virtualised > CloudStack environment. > > > > The reason trillion came about in its current form is that at $dayjob we > have to deal with lots of different types of environment, hypervisors and > configurations. > I know others have put a lot of work into similar tools, which I've used > over the years and found useful but I needed some tooling that could also > support vSphere hosts and Hyper-V and also be easy to connect to external > integration points such as SolidFire storage, NetScalers, Cloudian S3 > installations etc. as well as supporting multi-tenancy. > > For some time, it's been my intention to make this open source and > generally available for this community. While I could have done this sooner > but I held back a little as I wanted to make sure that it was well > documented and could be easily deployed for a wide range of use-cases > > I'm happy to say I think we're just about there. > Trillion is now available: > https://github.com/shapeblue/Trillian > > Please feel free to use, comment, find bugs or come up with any ideas on > how we can make this better. > Rohit has integrated this with Jenkins and will be sharing how he has done > this soon too. > > > If people think this is useful for the community, I've got clearance from > $dayjob to donate the work into ACS (if we want it). > > > > Marvin: "I think you ought to know I'm feeling very depressed." > Trillian: "Well, we have something that may take your mind off it." > Marvin: "It won't work, I have an exceptionally large mind." > > > > Kind regards, > > Paul Angus > > > paul.an...@shapeblue.com > www.shapeblue.com > 53 Chandos Place, Covent Garden, London WC2N 4HSUK > @shapeblue > > > >