<commit_before>---
title: VMPayload
category: feature
authors: ovedo, shahar, shaharh, vered
wiki_category: Feature
wiki_title: Features/VMPayload
wiki_revision_count: 25
wiki_last_updated: 2014-04-29
---

# VM Payload

### Summary

The purpose of the feature is to allow passing a payload to a guest upon startup.

### Owner

*   Name: [ <NAME>](User:Shaharh)
*   Email: <<EMAIL>>

### Current status

*   In progress of defining the requirements

### Detailed Description

There are many cases in which there is a need to pass a payload to a VM. For example, running windows sysprep, external management of installation of 3rd party products, and etc. The purpose of the feature is to allow adding such a payload externally, specify the payload method (CD, floppy), specify when this data has to be available, and etc.

The payload options are:

1.  Availability
    -   Permanent payload - payload which will be available in the guest at all times
    -   Temporary payload - via "run-once" - will be available only when running the guest via the run-once option
    -   No payloads - the VM won't get any payload upon startup/run-once

2.  Payload passing method
    -   Floppy
    -   CD
    -   In the future also injection and payload via private IP

There are a few options to model that:

1.  Use current Floppy/CD attachment options:
    -   In floppy allow to attach either sysprep or payload
    -   In CD allow to attach either an ISO, or a payload

2.  Override current Floppy/CD attachment options:
    -   Add a Payload option, in which you choose whether to pass the payload via CD or floppy (the passing method)
    -   In floppy allow to attach a payload
    -   In CD allow to attach a payload
    -   Once a payload is chosen (either via CD or floppy), it will override the floppy/CD attachment

3.  Add a payload in addition to the current Floppy/CD attachment options:
    -   Add a Payload option, in which you choose whether to pass the payload via CD or floppy (the passing method)
    -   In floppy allow to attach a payload
    -   In CD allow to attach a payload
    -   Both the payload and the attachment are used<commit_msg>Detailed Description<commit_after>---
title: VMPayload
category: feature
authors: ovedo, shahar, shaharh, vered
wiki_category: Feature
wiki_title: Features/VMPayload
wiki_revision_count: 25
wiki_last_updated: 2014-04-29
---

# VM Payload

### Summary

The purpose of the feature is to allow passing a payload to a guest upon startup.

### Owner

*   Name: [ <NAME>](User:Shaharh)
*   Email: <<EMAIL>>

### Current status

*   In progress of defining the requirements

### Detailed Description

There are many cases in which there is a need to pass a payload to a VM. For example, running windows sysprep, external management of installation of 3rd party products, and etc. The purpose of the feature is to allow adding such a payload externally, specify the payload method (CD, floppy), specify when this data has to be available, and etc.

The payload options are:

1.  Availability
    -   Permanent payload - payload which will be available in the guest at all times
    -   Temporary payload - via "run-once" - will be available only when running the guest via the run-once option
    -   No payloads - the VM won't get any payload upon startup/run-once

2.  Payload passing method
    -   Floppy
    -   CD
    -   In the future also injection and payload via private IP

There are a few options to model that:

1.  Use current Floppy/CD attachment options:
    -   In floppy allow to attach either sysprep or payload
    -   In CD allow to attach either an ISO, or a payload

2.  Add a payload in addition to the current Floppy/CD attachment options:
    -   Add a Payload option, in which you choose whether to pass the payload via CD or floppy (the passing method)
    -   In floppy allow to attach a payload
    -   In CD allow to attach a payload
    -   Both the payload and the attachment are used
{'fraction_non_alphanumeric': 0.05447667087011349, 'fraction_numerical': 0.007818411097099623, 'mean_word_length': 3.2146652497343253, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6866032', 'n_tokens_mistral': 1134, 'n_tokens_neox': 1076, 'n_words': 580}