Plugins¶
Plugins add services to a Waveshift deployment from the command line. Two are available as a preview:
| Plugin | Command | Deploys |
|---|---|---|
| TAK | wsctl tak |
A TAK Server for situational awareness, with user, group and certificate management and on-device enrollment for ATAK |
| Matrix | wsctl matrix |
A private Matrix chat server (tuwunel), with user and sign-up token management |
Preview
The plugins deploy one server per Waveshift deployment and are managed from wsctl.
In Waveshift 0.5 the same services become part of each operation, created from the Web
Console: see What's coming.
How plugins work¶
wsctl <name>runswsctl-<name>. Each plugin is a separate binary on yourPATH, the same waygitandkubectlplugins work. Built-in commands always take precedence, and the plugin's exit code is passed back.- Install by placing the plugin binary (
wsctl-tak,wsctl-matrix) next towsctlon yourPATH. Awsctlthat reportsunknown command "tak"either predates plugin support or cannot find the plugin binary. - Run every command from the directory holding the deployment's
wsctl.json, as with the rest ofwsctl. - State lives in
wsctl.jsonunderplugins.<name>.wsctlkeeps that section intact when it saves the file, so never edit or delete it by hand. - Names follow your private domain. Plugins register their servers in the deployment's
private hosted zone, for example
tak.<domain>andmatrix.<domain>(the domain defaults towaveshift.internal; see the wsctl.json reference).
Prerequisites¶
- A deployed environment:
wsctl deploy infrastructureat least. Plugins use its VPC, private subnet, private hosted zone, assets bucket and the Waveshift CA. - AWS credentials with SSM access. User management commands run on the plugin's server through SSM.
- The AWS CLI with the Session Manager plugin, for
proxy,connectandlogs -f.
Destroy plugins first¶
Destroy plugin services before core infrastructure
wsctl destroy infrastructure and wsctl destroy all only know about the Waveshift
and Kasm hosts. A plugin server still running in the VPC blocks its deletion. Run
wsctl tak destroy and wsctl matrix destroy --yes first, then destroy the core
infrastructure.