https://github.com/cundd/fleet_master
Master application for fleet
https://github.com/cundd/fleet_master
automation statistics
Last synced: over 1 year ago
JSON representation
Master application for fleet
- Host: GitHub
- URL: https://github.com/cundd/fleet_master
- Owner: cundd
- Created: 2017-04-15T10:17:39.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2025-01-21T14:12:35.000Z (over 1 year ago)
- Last Synced: 2025-01-21T15:11:24.495Z (over 1 year ago)
- Topics: automation, statistics
- Language: Rust
- Size: 189 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Fleet Master
============
Fleet is a tool to collect information from different (remote) servers
and applications through SSH.
Currently the only information providers are the builtin provider `fleet provide`
and the provider for TYPO3 [fleet_typo3](https://github.com/cundd/fleet_typo3).
To get an overview of the available commands run:
```bash
fleet help
```
Building
--------
### macOS 10.10+
The dependency [libssh2](https://github.com/alexcrichton/ssh2-rs) links against OpenSSL and to compile it, it needs to
find the OpenSSL headers. OpenSSL headers have been removed on macOS 10.10+, but can be installed via
[Homebrew](https://brew.sh/):
```sh
brew install openssl
```
A compatible version of `cmake` also has to be installed:
```sh
brew install cmake
```
Configuration
-------------
Fleet expects a JSON file with server configurations. If `fleet.json` or
`.fleet.json` exists in the current working directory it will be used.
Otherwise the path to the configuration file has to be specified through
the `-c` argument.
A simple configuration file may look like this:
```json
{
"host-without-login-credentials": {
"host": "host1.tld",
"command": "path/to/the/provider/script",
"username": "your-username"
},
"host-with-password": {
"host": "host2.tld",
"command": "path/to/the/provider/script",
"username": "your-username",
"password": "your-password"
},
"host-with-ssh-key": {
"host": "host3.tld",
"command": "path/to/the/provider/script",
"username": "your-username",
"private_key": "/your/home-dir/.ssh/id_rsa",
"public_key": "/your/home-dir/.ssh/id_rsa.pub"
},
"host-with-custom-port": {
"host": "host4.tld",
"port": 2222,
"command": "path/to/the/provider/script",
"username": "your-username"
}
}
```
If your SSH keys require a passphrase you have to specify it through the `PASSPHRASE` environment variable:
```bash
PASSPHRASE=yourPassphrase fleet list
```
Todo
----
- ~~Make the port configuration optional~~
- ~~Resolve the tilde `~` in the path to the SSH key files~~
- ~~Support for ssh-agent~~