oslc-automation message
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]
Subject: New scenario: Elastic Build Cloud
- From: Martin P Pain <martinpain@uk.ibm.com>
- To: oslc-automation@lists.oasis-open.org
- Date: Mon, 28 Apr 2014 14:54:23 +0100
I have uploaded a new user story &
use case (including diagram) here: https://wiki.oasis-open.org/oslc-automation/UseCasesAndRequirements/ElasticBuildCloud
I am submitting this for discussion
of (1) whether this use case is of interest to anyone else, (2) chaining
of automation plans, and (3) how its dynamic deployment affects how
the integration points may work. Please have a read (or at least a quick
scan through) and reply to this email with any feedback you have. Thanks.
I have also created this top-level page
for links to user stories, use cases, scenarios and requirements, inclduing
links to the v2.0 and v2.1 scenarios:
https://wiki.oasis-open.org/oslc-automation/UseCasesAndRequirements
Here is a copy of the new user story
& use case::
= User story =
* Software can support many platforms.
Building this software can require maintaining lots of build machines,
for each platform and for parallel builds.
* Maintaining these machines can
take a lot of effort.
Perspectives:
1.
* As a software engineer
* I want to build my software
continuously, on a wide range of platforms
* In order to get quick feedback
across the wide range of supported platforms
2.
* As operations (maintaining
the build infrastructure)
* I want to avoid setting up
and maintaining many static machines
* To provide a more consistent
and reliable service, and to reduce costs
Usual problems/costs:
* Lead time to get a new machine
* Manual setup for new machines
* Maintenance overhead
* Under-utilized hardware
* Fixed machine specification
Solution: cloud-enabled build (and test)
capability, with dynamic provisioning of build engines.
Benefits:
* Reduced maintenance costs
* Higher utilisation of hardware
* Cheaper to grow capacity
= Use case =
Actors: Submitter (may be human or automated
process); Elastic Build Cloud Manager (EBC Manager); Cloud provider; Deployment
provider (may be same as Cloud provider, or as EBC Manager itself); Build
engine. There may also be a component between the submitter and the EBC
Manager that stores and tracks build requests.
1. Build request submitted (may
be a manual request, may be on a trigger e.g. code check-in), containing
details of platform(s) and build required.
2. Elastic Build Cloud (EBC) Manager
submits request to cloud provider to provision a cloud instance for the
build engine.
3. EBC Manager submits requires
to deployment systems to deploy build engine (plus any dependencies defined
by the build and platform definitions) onto that cloud instance.
4. Build engine picks up the original
submitter's build request (either from EBC Manager or from the original
build request submission), and performs the build.
5. Submitter is notified when
the build completes.
6. Cloud instance is torn down.
Variation:
* The EBC manager could find an
existing cloud instance that matches the required platform and build definition,
and re-use that. If it does this, then step 6 (tear down) may not be performed,
so the cloud instance may remain around for later re-use.
== Diagram ==
{{https://www.oasis-open.org/apps/org/workgroup/oslc-automation/download.php/52854/2014-04-26%20EBC%20use%20case.png}}
= Implementation in Automation 2.1 =
There are a number of integration points:
1. Submitter to EBC Manager
2. EBC Manager to Cloud provider
3. EBC Manager to Deployment provider
4. ? to Build engine (could be
with EBC Manager, or with the build request system, if separate from the
EBC manager).
Most, if not all, of these would be
possible to implement with Automation v2.
The main questions that this use case
raises are:
1. How does the Deployment provider
know where to deploy the build engine to? (Chaining output from cloud instance
provisioning to deployment provider plan.)
2. The build engine does not exist
most of the time. How does this affect the configuration of the integrations?
Martin Pain
Software Developer - Green Hat
Rational Test Virtualization Server, Rational Test Control Panel
OASIS Open Services for Lifecycle Collaboration - Automation technical
committee chair
IBM United Kingdom Limited
Registered in England and Wales with number 741598
Registered office: PO Box 41, North Harbour, Portsmouth, Hants. PO6 3AU
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]