Skip to content

VM always changed in eptRviMode,hvMode #472

@cultpony

Description

@cultpony

What happened?

I attempted to manage several VMs in a vSphere 8 installation via Pulumi, the VMs are created with cloud-init configuration and from a template, but eptRviMode and hvMode are not explicitly set at all.

Example

new vsphere.VirtualMachine("vm1", {
  name: "vm1",
  clone: { templateUuid: template.uuid },
  networkInterfaces: [ <omitted for brevity> ],
  disks: [ <omitted for brevity> ],
  <remainder omitted for brevity>,
})

Output of "pulumi preview" after completing a "pulumi up"

Previewing update (staging):
     Type                                     Name                   Plan       Info
     pulumi:pulumi:Stack                      <omitted>                   7 messages
     └─ vsphere:index:Folder                 <omitted>                       
 ~      └─ vsphere:index:VirtualMachine       <omitted>       update     [diff: ~eptRviMode,hvMode]
 ~         ├─ vsphere:index:VirtualMachine    <omitted>       update     [diff: ~eptRviMode,hvMode]
 ~         ├─ vsphere:index:VirtualMachine    <omitted>       update     [diff: ~eptRviMode,hvMode]
 +         └─ pulumi-nodejs:dynamic:Resource  <omitted>-kubeconfig  create     

Running "pulumi up" does not change this output but does cause the VMs to be shutdown, reconfigured and then started again.

Output of pulumi about

CLI          
Version      3.112.0
Go Version   go1.22.1
Go Compiler  gc

Plugins
NAME       VERSION
cloudinit  1.4.1
command    0.9.2
nodejs     unknown
random     4.16.0
vsphere    4.9.2

Host     
OS       darwin
Version  14.4.1
Arch     arm64

This project is written in nodejs: executable='/opt/homebrew/bin/node' version='v21.7.1'

Current Stack: <omitted>

TYPE                                         URN
pulumi:pulumi:Stack                          urn:pulumi:staging::vsphere::pulumi:pulumi:Stack::<omitted>
pulumi:providers:vsphere                     urn:pulumi:staging::vsphere::pulumi:providers:vsphere::default_4_9_2
pulumi:providers:random                      urn:pulumi:staging::vsphere::pulumi:providers:random::default_4_16_0
random:index/randomPassword:RandomPassword   urn:pulumi:staging::vsphere::random:index/randomPassword:RandomPassword::<omitted>-k8sSecretToken
vsphere:index/folder:Folder                  urn:pulumi:staging::vsphere::vsphere:index/folder:Folder::<omitted>
vsphere:index/virtualMachine:VirtualMachine  urn:pulumi:staging::vsphere::vsphere:index/folder:Folder$vsphere:index/virtualMachine:VirtualMachine::<omitted>
pulumi:providers:command                     urn:pulumi:staging::vsphere::pulumi:providers:command::default_0_9_2
command:local:Command                        urn:pulumi:staging::vsphere::vsphere:index/folder:Folder$vsphere:index/virtualMachine:VirtualMachine$command:local:Command::cat-k3s-kubeconf
pulumi:providers:pulumi-nodejs               urn:pulumi:staging::vsphere::pulumi:providers:pulumi-nodejs::default
vsphere:index/virtualMachine:VirtualMachine  urn:pulumi:staging::vsphere::vsphere:index/folder:Folder$vsphere:index/virtualMachine:VirtualMachine$vsphere:index/virtualMachine:VirtualMachine::<omitted>
vsphere:index/virtualMachine:VirtualMachine  urn:pulumi:staging::vsphere::vsphere:index/folder:Folder$vsphere:index/virtualMachine:VirtualMachine$vsphere:index/virtualMachine:VirtualMachine::<omitted>


OPP TYPE  URN
updating  urn:pulumi:staging::vsphere::vsphere:index/folder:Folder$vsphere:index/virtualMachine:VirtualMachine$vsphere:index/virtualMachine:VirtualMachine::<omitted>
updating  urn:pulumi:staging::vsphere::vsphere:index/folder:Folder$vsphere:index/virtualMachine:VirtualMachine$vsphere:index/virtualMachine:VirtualMachine::<omitted>


Backend        
Name           <omitted>
URL            file://~
User           <omitted>
Organizations  
Token type     personal

Dependencies:
NAME               VERSION
@infisical/sdk     2.1.8
@pulumi/command    0.9.2
@pulumi/random     4.16.0
@pulumi/vsphere    4.9.2
@types/node        18.19.21
crypto-js          4.2.0
js-yaml            4.1.0
@pulumi/cloudinit  1.4.1
@pulumi/pulumi     3.108.1
@types/crypto-js   4.2.2
@types/js-yaml     4.0.9

Pulumi locates its logs in /var/folders/_s/7t01k6l903q67w46sjhf5b3w0000gn/T/ by default

Additional context

No response

Contributing

Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

Metadata

Metadata

Assignees

No one assigned

    Labels

    bug/diffkind/bug related to Pulumi generating wrong diffs on preview or up.kind/bugSome behavior is incorrect or out of spec

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions