<feed xmlns='http://www.w3.org/2005/Atom'>
<title>vyos-cloud-init.git/tools/ds-identify, branch 22.1</title>
<subtitle> (mirror of https://github.com/marekm72/vyos-cloud-init.git)
</subtitle>
<id>https://git.amelek.net/marekm72/vyos-cloud-init.git/atom?h=22.1</id>
<link rel='self' href='https://git.amelek.net/marekm72/vyos-cloud-init.git/atom?h=22.1'/>
<link rel='alternate' type='text/html' href='https://git.amelek.net/marekm72/vyos-cloud-init.git/'/>
<updated>2022-01-31T21:51:20+00:00</updated>
<entry>
<title>Move LXD to end ds-identify DSLIST (#1228)</title>
<updated>2022-01-31T21:51:20+00:00</updated>
<author>
<name>James Falcon</name>
<email>james.falcon@canonical.com</email>
</author>
<published>2022-01-31T21:51:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/marekm72/vyos-cloud-init.git/commit/?id=46a0126e874927353e83b385b58ab054e58667cc'/>
<id>urn:sha1:46a0126e874927353e83b385b58ab054e58667cc</id>
<content type='text'>
LP: #1959118</content>
</entry>
<entry>
<title>Add LXD datasource (#1040)</title>
<updated>2021-11-01T20:43:05+00:00</updated>
<author>
<name>Chad Smith</name>
<email>chad.smith@canonical.com</email>
</author>
<published>2021-11-01T20:43:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/marekm72/vyos-cloud-init.git/commit/?id=773765346ba543987aa64a1119fa760f0b1cbb6f'/>
<id>urn:sha1:773765346ba543987aa64a1119fa760f0b1cbb6f</id>
<content type='text'>
Add DataSourceLXD which knows how to talk to the dev-lxd socket to
obtain all instance metadata API:
https://linuxcontainers.org/lxd/docs/master/dev-lxd.

This first branch is to deliver feature parity with the existing
NoCloud datasource which is currently used to intialize LXC instances
on first boot.

Introduce a SocketConnectionPool and LXDSocketAdapter to support
performing HTTP GETs on the following routes which are surfaced by the
LXD host to all containers:
http://unix.socket/1.0/meta-data
http://unix.socket/1.0/config/user.user-data
http://unix.socket/1.0/config/user.network-config
http://unix.socket/1.0/config/user.vendor-data
These 4 routes minimally replace the static content provided in the
following nocloud-net seed files:
/var/lib/cloud/nocloud-net/{meta-data,vendor-data,user-data,network-config}

The intent of this commit is to set a foundation for LXD socket
communication that will allow us to build network hot-plug features
by eventually consuming LXD's websocket upgrade route 1.0/events to
react to network, meta-data and user-data config changes over time.

In the event that no custom network-config is provided, default to the
same network-config definition provided by LXD to the NoCloud
network-config seed file.

Supplemental features above NoCloud datasource:
surface all custom instance data config keys via cloud-init query ds
which aids in discoverability of features/tags/labels as well as
conditional #cloud-config jinja templates operations based on custom
config options.
TBD: better cloud-init query support for dot-delimited keys</content>
</entry>
<entry>
<title>VMWARE: search the deployPkg plugin in multiarch dir (#1061)</title>
<updated>2021-10-12T03:54:31+00:00</updated>
<author>
<name>xiaofengw-vmware</name>
<email>42736879+xiaofengw-vmware@users.noreply.github.com</email>
</author>
<published>2021-10-12T03:54:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/marekm72/vyos-cloud-init.git/commit/?id=76166caff42b82aa55c6bcd9528f2c1e3575232a'/>
<id>urn:sha1:76166caff42b82aa55c6bcd9528f2c1e3575232a</id>
<content type='text'>
Due to multiarch, the libdeployPkgPlugin.so is deployed into dir
/usr/lib/&lt;multiarch name&gt;/open-vm-tools, we need to add this path
into search_paths.

LP: #1944946</content>
</entry>
<entry>
<title>Update ds-identify to pass shellcheck (#979)</title>
<updated>2021-08-24T21:45:11+00:00</updated>
<author>
<name>Andrew Kutz</name>
<email>101085+akutz@users.noreply.github.com</email>
</author>
<published>2021-08-24T21:45:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/marekm72/vyos-cloud-init.git/commit/?id=de8931edc4093013fd685938e1c4e5a3d53f653c'/>
<id>urn:sha1:de8931edc4093013fd685938e1c4e5a3d53f653c</id>
<content type='text'>
This patch updates the ds-identify file to pass the
popular shell linter, shellcheck. Updates include:

* Global ignore for error code 3043, the warning about
  the "local" keyword not being POSIX compliant. This
  keyword is used everywhere and cannot be easily removed.

* Point-of-use ignore for error code 3013, the warning
  about the "-nt" comparator not being POSIX compliant.
  There's no POSIX compliant way to compare timestamps
  on two files without forking a new process, so this
  comparator remains.

* Several point-of-use ignores for error code 2254, the
  warning about quoting parameters. These warnings are
  ignored for the *_matches functions where wildcard
  tokens are expected to be used. Quoting the parameters
  would prevent the desired globbing and cause calls
  to these functions with wildcards to fail.

* A point-of-use ignore for error code 2086 for the
  same reason as the above ignore -- allowing globbing
  to take place for matching.

* Quoted parameters in the remainder of the locations
  where it was safe to do so and did not break the
  tests.</content>
</entry>
<entry>
<title>Revert unnecesary lcase in ds-identify (#978)</title>
<updated>2021-08-13T19:30:55+00:00</updated>
<author>
<name>Andrew Kutz</name>
<email>101085+akutz@users.noreply.github.com</email>
</author>
<published>2021-08-13T19:30:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/marekm72/vyos-cloud-init.git/commit/?id=f516a7d37c1654addc02485e681b4358d7e7c0db'/>
<id>urn:sha1:f516a7d37c1654addc02485e681b4358d7e7c0db</id>
<content type='text'>
This patch reverts an unnecessary lcase optimization in the
ds-identify script. SystemD documents the values produced by
the systemd-detect-virt command are lower case, and the mapping
table used by the FreeBSD check is also lower-case.

The optimization added two new forked processes, needlessly
causing overhead.</content>
</entry>
<entry>
<title>Update dscheck_VMware's rpctool check (#970)</title>
<updated>2021-08-12T19:10:39+00:00</updated>
<author>
<name>Shreenidhi Shedi</name>
<email>53473811+sshedi@users.noreply.github.com</email>
</author>
<published>2021-08-12T19:10:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/marekm72/vyos-cloud-init.git/commit/?id=7781dec3306e9467f216cfcb36b7e10a8b38547a'/>
<id>urn:sha1:7781dec3306e9467f216cfcb36b7e10a8b38547a</id>
<content type='text'>
This patch updates the dscheck_VMware function's use of "vmware-rpctool".

When checking to see if a "guestinfo" property is set.
Because a successful exit code can occur even if there is an empty
string returned, it is possible that the VMware datasource will be
loaded as a false-positive. This patch ensures that in addition to
validating the exit code, the emitted output is also examined to ensure
a non-empty value is returned by rpctool before returning "${DS_FOUND}"
from "dscheck_VMware()".</content>
</entry>
<entry>
<title>Datasource for VMware (#953)</title>
<updated>2021-08-10T02:24:07+00:00</updated>
<author>
<name>Andrew Kutz</name>
<email>101085+akutz@users.noreply.github.com</email>
</author>
<published>2021-08-10T02:24:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/marekm72/vyos-cloud-init.git/commit/?id=8b4a9bc7b81e61943af873bad92e2133f8275b0b'/>
<id>urn:sha1:8b4a9bc7b81e61943af873bad92e2133f8275b0b</id>
<content type='text'>
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.</content>
</entry>
<entry>
<title>Add Vultr support (#827)</title>
<updated>2021-04-13T18:15:34+00:00</updated>
<author>
<name>David Dymko</name>
<email>dymkod@gmail.com</email>
</author>
<published>2021-04-13T18:15:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/marekm72/vyos-cloud-init.git/commit/?id=0ae0b1d4336acdcab12bd49e9bddb46922fb19c7'/>
<id>urn:sha1:0ae0b1d4336acdcab12bd49e9bddb46922fb19c7</id>
<content type='text'>
This PR adds in support so that cloud-init can run on instances 
deployed on Vultr cloud. This was originally brought up in #628.

Co-authored-by: Eric Benner &lt;ebenner@vultr.com&gt;
</content>
</entry>
<entry>
<title>Datasource for UpCloud (#743)</title>
<updated>2021-02-08T15:24:36+00:00</updated>
<author>
<name>Antti Myyrä</name>
<email>antti.myyra@gmail.com</email>
</author>
<published>2021-02-08T15:24:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/marekm72/vyos-cloud-init.git/commit/?id=0497c7b1f752c7011006b36f9c07ac141c0bb3c2'/>
<id>urn:sha1:0497c7b1f752c7011006b36f9c07ac141c0bb3c2</id>
<content type='text'>
New datasource utilizing UpCloud metadata API, including relevant unit
tests and documentation.</content>
</entry>
<entry>
<title>replace usage of dmidecode with kenv on FreeBSD (#621)</title>
<updated>2020-11-06T18:49:05+00:00</updated>
<author>
<name>Mina Galić</name>
<email>me+git@igalic.co</email>
</author>
<published>2020-11-06T18:49:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/marekm72/vyos-cloud-init.git/commit/?id=d83c0bb4baca0b57166a74055f410fa4f75a08f5'/>
<id>urn:sha1:d83c0bb4baca0b57166a74055f410fa4f75a08f5</id>
<content type='text'>
FreeBSD lets us read out kernel parameters with kenv(1), a user-space
utility that's shipped in "base" We can use it in place of dmidecode(8),
thus removing the dependency on sysutils/dmidecode, and the restrictions
to i386 and x86_64 architectures that this utility imposes on FreeBSD.

Co-authored-by: Scott Moser &lt;smoser@brickies.net&gt;</content>
</entry>
</feed>
