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.

Table 1. 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.

Table 2. 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.

Table 3. 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)