The VMPS master workflow life cycle states represent an IaaS virtual machine life cycle, from request to destruction .You can use the VMPS master workflow states and events when you create triggering conditions based on life cycle state events and life cycle state names.

Each virtual machine goes through four basic stages.

Request. Includes approvals.

Provision. Includes different provisioning types, such as create, clone, kickstart, or WIM.

Manage. Includes actions, such as power on, power off, or snapshot.

Destroy. Includes deactivating, unprovisioning, and disposing of the machine.

These basic stages are included in the master workflow. You can use the VMPSMasterWorkflow32 states when you create conditions for the following event topics:

Machine life cycle

Machine provisioning

The global event states are messages sent to the event broker by the VMPS Master Workflow. Global events can be triggered at any time.

Global Events

State(Topic)

Events [Triggering String] (Topic)

Global

onBuildFailure [BuildFailure] (Provision)

OnBuildSuccess [BuildSuccess] (Provision)

OnFinalizeMachine [Destroy] (Provision)

OnForceUnregisterEvent [ForceUnregister] (Provision)

ReconfigureVM.Pending [ReconfigureVM.Pending] (Active)

ReconfigureVM.ExecutionUpdated [ReconfigureVM.ExecutionUpdated] (Active)

ReconfigureVM.RetryRequestMade [ReconfigureVM.RetryRequestMade] (Active)

ReconfigureVM.Failed [ReconfigureVM.Failed] (Active)

ReconfigureVM.Successful [ReconfigureVM.Successful] (Active)

ReconfigureVM.Complete [ReconfigureVM.Complete] (Active)

ReconfigureVM.Canceled [ReconfigureVM.Canceled] (Active)

The active global states are actions that you can run on provisioned machines.

Active Events

State

Events [Triggering String] (Topic)

Active

OnExpireLease [Expire] (Active)

OnForceExpire [ForceExpire] (Active)

onReprovision [Reprovision] (Active)

onResetBuildSuccess [ResetBuildSuccess] (Active)

In the master workflow, provision events occur during the machine provisioning life cycle. Active events are actions you can run on provisioned machines. For an illustration of the master workflow, see Example of VMPS Master Workflow.

Each machine type has its own provisioning workflow. For information about individual machine types, see Provisioning Life Cycle States by Machine Type.

VMPSMasterWorkflow32 States and Events

State(Topic)

Events [Triggering String] (Topic)

BuildingMachine

Pre(Provision)

Post(Provision)

DeactivateMachine

Pre(Provision)

Post(Provision)

Disposing

Pre(Provision)

Post(Provision)

OnDisposeComplete(Provision)

OnDisposeTimeout(Provision)

OnUnregisterMachine [Unregister] (Provision)

Expired

Pre(Active)

Post(Active)

OnActiveExpiredMachine [ActivateExpiredMachine] (Active)

TurnOffFromExpired [TurnOffExpiredMachine] (Active)

InstallTools

Pre(Active)

Post(Active)

InstallToolsComplete(Active)

TimeoutInstallTools(Active)

Leased

OnChangeLease [Change Lease] (Active)

OnUpdateDescription [UpdateDescription] (Active)

OnUpdateOwner [UpdateOwner] (Active)

MachineActivated

Pre(Provision)

Post(Provision)

OnCatalogRegistrationComplete [CatalogRegistrationComplete] (Provision)

MachineProvisioned

Pre(Provision)

Post(Provision)

Off

Pre(Active)

Post(Active)

OnForceOn [ForceOn] (Active)

OnResetOff [Turn Off] (Active)

OnTurnOn [Turn On] (Active)

On

Pre(Active)

Post(Active)

OnForceOff [ForceOff] (Active)

onInstallTools [InstallTools] (Active)

OnReboot [Reboot] (Active)

OnReset [Reset] (Active)

OnResetOn [Turn On] (Active)

OnShutdown [Shutdown] (Active)

OnSuspend [Suspend] (Active)

OnTurnOff [Turn Off] (Active)

Rebooting

Pre(Active)

Post(Active)

OnRebootComplete(Active)

TimoutFromReboot(Active)

RegisterMachine

Pre(Provision)

Post(Provision)

onRegisterComplete(Provision)

RegisterTimeout(Provision)

Requested

Pre(Provision)

Post(Provision)

OnProvisionMachine [Provision] (Provision)

Resetting

Pre(Active)

Post(Active)

OnResetComplete(Active)

TimoutFromReset(Active)

ShuttingDown

Pre(Active)

Post(Active)

OnShutdownComplete(Active)

TimoutFromShutdown(Active)

Suspending

Pre(Active)

Post(Active)

OnSuspendComplete(Active)

TimoutFromSuspend(Active)

TurningOff

Pre(Active)

Post(Active)

OnTurningOffComplete(Active)

TimoutFromPowerOff(Active)

TurningOn

Pre(Active)

Post(Active)

OnTurningOnComplete(Active)

TimeoutPowerOn(Active)

UnprovisionMachine

Pre(Provision)

Post(Provision)

WaitingToBuild

Pre(Provision)

Post(Provision)