vm_resource.schedule

This MC iterates over every VMEndpoint in the experiment graph and gets the VM’s schedule (using base_objects.VmResourceSchedule.get_schedule(). The MC then adds all the schedules to the ScheduleDb and adds the mapping of the VMs (i.e. the name and UUID) to the VMMapping Database. Lastly, this MC creates a set of all required VMRs which need to be loaded into the experiment. This set can be used later to ensure that the VMRs have been correctly provided by the MCs in the experiment.

Attribute Provides:
  • vm_resource_schedule_database

Attribute Depends:
  • topology

  • schedules_ready

Model Component Dependencies:

Plugin

class vm_resource.schedule_plugin.UploadSchedule(graph, log)[source]

Bases: AbstractPlugin

This plugin accomplishes three primary objectives:
  1. Upload all VM schedules to the ScheduleDb.

  2. Upload the VM mapping to the VMMapping database.

  3. Identify all VMRs for an experiment.

__annotations__ = {}
_put_all_vm_resource_schedules()[source]

For every VMEndpoint in the experiment, iterate over its schedule and put it in the schedule database.

run()[source]

Initialize the required VMR set and call vm_resource.schedule._put_all_vm_resource_schedules() which contains the main Plugin logic.