Download client
The Machine client is one small program called machine. Pick your system.
Install
Run this in a terminal.
1 | curl https://testflows.com/machine/install -fsS | bash |
It verifies the download and puts the client in ~/.local/bin. It never asks for root. Run the same command again to update.
Check the download
The installer already verifies every download. To check by hand, download the files without installing them, with your version in place of YYYYMMDD-HHMM (machine --version shows it):
1 | mkdir machine-check && cd machine-check |
That fetches machine, its checksum, and two signatures of the checksum. We sign only the checksum, so verify the signature first, with either tool.
With GPG, the key's fingerprint must match the GPG fingerprint. gpg then prints Good signature; its warning that the key is not certified is normal.
1 | curl -fsSO https://testflows.com/machine/keys/machine-client-gpg.asc |
With openssl, a good signature prints Verified OK:
1 | curl -fsSO https://testflows.com/machine/keys/machine-client-rsa.pub.pem |
Last, check the file against the checksum, and against the client you installed. If a check fails, delete the client and install again.
1 | sha256sum -c machine.sha256 |
To read the installer before you run it, pipe it to less instead of bash.
Uninstall
Sign out, then delete the client and what it stored.
1 | machine logout |
Install
Run this in a terminal.
1 | curl https://testflows.com/machine/install -fsS | bash |
It verifies the download and puts the client in ~/.local/bin. It never asks for root. Run the same command again to update.
Disks hold x86_64 programs
A machine is an x86_64 computer, so its disks hold linux/amd64 programs. Docker on ARM builds arm64 images by default, so ask for linux/amd64:
1 | docker build --platform linux/amd64 -t myapp:latest . |
The docs cover Compose projects and binaries.
Check the download
The installer already verifies every download. To check by hand, download the files without installing them, with your version in place of YYYYMMDD-HHMM (machine --version shows it):
1 | mkdir machine-check && cd machine-check |
That fetches machine-linux-arm64, its checksum, and two signatures of the checksum. We sign only the checksum, so verify the signature first, with either tool.
With GPG, the key's fingerprint must match the GPG fingerprint. gpg then prints Good signature; its warning that the key is not certified is normal.
1 | curl -fsSO https://testflows.com/machine/keys/machine-client-gpg.asc |
With openssl, a good signature prints Verified OK:
1 | curl -fsSO https://testflows.com/machine/keys/machine-client-rsa.pub.pem |
Last, check the file against the checksum, and against the client you installed. If a check fails, delete the client and install again.
1 | sha256sum -c machine-linux-arm64.sha256 |
To read the installer before you run it, pipe it to less instead of bash.
Uninstall
Sign out, then delete the client and what it stored.
1 | machine logout |
Install
Run this in Terminal.
1 | curl https://testflows.com/machine/install -fsS | bash |
It verifies the download, installs the client under ~/.local/share/machine/, and links it from ~/.local/bin. It never asks for your password. Run the same command again to update.
Macs with an Intel processor are not supported.
Disks hold x86_64 programs
A machine is an x86_64 computer, so its disks hold linux/amd64 programs. Docker on ARM builds arm64 images by default, so ask for linux/amd64:
1 | docker build --platform linux/amd64 -t myapp:latest . |
The docs cover Compose projects and binaries.
Check the download
The installer already verifies every download. To check by hand, download the files without installing them, with your version in place of YYYYMMDD-HHMM (machine --version shows it):
1 | mkdir machine-check && cd machine-check |
That fetches machine-darwin-arm64.tar.gz, its checksum, and two signatures of the checksum. We sign only the checksum, so verify the signature first, with either tool. Macs ship with openssl but not gpg.
With GPG, the key's fingerprint must match the GPG fingerprint. gpg then prints Good signature; its warning that the key is not certified is normal.
1 | curl -fsSO https://testflows.com/machine/keys/machine-client-gpg.asc |
With openssl, a good signature prints Verified OK:
1 | curl -fsSO https://testflows.com/machine/keys/machine-client-rsa.pub.pem |
Last, check the archive against the checksum. If it fails, delete it and install again.
1 | shasum -a 256 -c machine-darwin-arm64.tar.gz.sha256 |
To read the installer before you run it, pipe it to less instead of bash.
Uninstall
Sign out, then delete the client and what it stored.
1 | machine logout |
Install
The client runs inside WSL, the Linux that comes with Windows. If you don't have WSL yet, install it from PowerShell, then restart:
1 | wsl --install |
Open your Linux distribution and follow the steps for Linux (x64), or Linux (ARM64) on Windows on ARM. Not sure which? uname -m prints x86_64 or aarch64.
Other systems
Linux (x64 and ARM64) and Macs with Apple Silicon are supported. On Windows, use WSL.
Need another platform? Tell us which one.
Release keys
Every release's checksum is signed with two keys: a GPG key, whose fingerprint is published as the GPG fingerprint, and an RSA key for openssl.
If the keys change, this page and the installer carry the new ones. A check that fails with an old key should pass once you download again.
A specific version
The installer gets the latest release. To install a particular one, set MACHINE_VERSION:
1 | curl https://testflows.com/machine/install -fsS | MACHINE_VERSION=YYYYMMDD-HHMM bash |
Set MACHINE_INSTALL_DIR to install somewhere other than ~/.local/bin. --no-signature and --no-checksum skip checks; a normal install needs neither.
Then
Sign in with machine login, or create an account first. The docs walk through your first run.