Improvement: Demonstrate Alternate OS Build Pack

Bug #1336475 reported by Adrian Otto
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Solum
Triaged
Wishlist
Unassigned

Bug Description

Not all application runtimes work on Linux. Suppose you want to run a language that works only on a Windows OS, and there are no tools for building that particular executable using Linux.

NOTE: Most .NET applications can be built with Mono, and the executable that results can be run on a Windows host. This task is not about enabling that use case. It's about using a non-Linux OS for both the build and run phases of handling a given build pack.

Demonstrate the following:

1) Use OpenStack Compute (nova) to create a Windows VM. Set up the build environment on that host.
2) Take a snapshot of the VM to save an image of that VM in Glance. See: http://docs.openstack.org/openstack-ops/content/snapshots.html
3) Register an application with Solum using "solum app create", indicating the glance_id of the image created in step #2 above as the build pack.

In that case you set up your build environment, and store an image of that server in glance, and specify that image when you register your app with Solum. This should result in the setup of a build farm with a specified number of nodes started from that Glance image. Build jobs should be distributed to this build farm. Each build farm node should:

1) Have scripts for creating a new VM image in Glance that includes the built application.
-or-
2) Call out to a service that can take a snapshot of the build host, resulting in a new Glance image.

The resulting glance image shall be known as the DU image.

When Solum creates an assembly for this app, it shall use the glance_id for the DU image created by the build process. Solum shall use the glance image type to determine what the contents of the generated Heat template should be. This may include specifying a Windows flavor in order to satisfy OS licensing requirements.

Tags: improvements
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.