Releases: trufflesuite/ts-lxd
🔄 Optional IP Getter Retry Parameters
In some environments, it's necessary to wait longer for an IP address to resolve.
In v0.1.1
, the ipv4
and ipv6
getters for Container
would retry a hardcoded 15
times with 1000ms
intervals. This release makes these parameters adjustable (yet optional)
Highlights
- Allow Optional Retry Parameters for IPv4/v6 Getters (@seesemichaelj in #1)
🔌 Better socket validation
We attempted to map the unix socket from LXD's snap package install location (/var/snap/lxd/common/lxd/unix.socket
) into a docker container. However the hose had its LXD socket in the default install location (/var/lib/lxd/unix.socket
). Docker "helpfully" created an empty directory where we thought the socket should've been and mapped it into the container. Much table flipping ensued as we tried to figure out why we couldn't connect to the LXD daemon.
Highlights
- Throws an error in local mode if the LXD socket file isn't in fact a unix socket.
📡 Signals and Exit Codes
Highlights
- Makes exit codes and signals available via the
close
event on theProcess
.- Follows the same signature as the
close
event on ChildProcess
- Follows the same signature as the
- Makes exit codes available via the
exitCode
property returned byContainer.run
- Makes it possible to send a signal to a process running in the container via
Process.signal
👶 Inaugural Release
This is the first release of ts-lxd which is, as far as I'm aware, the most full-featured LXD client library with TypeScript support! As mentioned in our README.md, this code is a port from node-lxd
, and we expect that it will likely diverge from that codebase more and more over time. This code is not yet production ready, however we will be hardening it for production use soon!
Highlights
- Basic support for creating containers and executing programs within those containers
- Modernized API making use of promises over callbacks
- Fully typed API (written in 100% TypeScript)
- Type definitions for LXD API requests and responses