Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Datasource for VMware #953

Merged

Commits on Aug 9, 2021

  1. Datasource for VMware

    This patch finally introduces the Cloud-Init Datasource for VMware
    GuestInfo as a part of cloud-init proper. This datasource has existed
    since 2018, and rapidly became the de facto datasource for developers
    working with Packer, Terraform, for projects like kube-image-builder,
    and the de jure datasource for Photon OS.
    
    The major change to the datasource from its previous incarnation is
    the name. Now named DatasourceVMware, this new version of the
    datasource will allow multiple transport types in addition to
    GuestInfo keys.
    
    This datasource includes several unique features developed to address
    real-world situations:
    
      * Support for reading any key (metadata, userdata, vendordata) both
        from the guestinfo table when running on a VM in vSphere as well as
        from an environment variable when running inside of a container,
        useful for rapid dev/test.
    
      * Allows booting with DHCP while still providing full participation
        in Cloud-Init instance data and Jinja queries. The netifaces library
        provides the ability to inspect the network after it is online,
        and the runtime network configuration is then merged into the
        existing metadata and persisted to disk.
    
      * Advertises the local_ipv4 and local_ipv6 addresses via guestinfo
        as well. This is useful as Guest Tools is not always able to
        identify what would be considered the local address.
    
    The primary author and current steward of this datasource spoke at
    Cloud-Init Con 2020 where there was interest in contributing this datasource
    to the Cloud-Init codebase.
    
    The datasource currently lives in its own GitHub repository at
    https://github.com/vmware/cloud-init-vmware-guestinfo. Once the datasource
    is merged into Cloud-Init, the old repository will be deprecated.
    akutz committed Aug 9, 2021
    Configuration menu
    Copy the full SHA
    7f5f251 View commit details
    Browse the repository at this point in the history