Heist creates network tunnels for distributing and managing agents. While it has been originally built to deploy and manage Salt Minions, it can be used to distribute and manage other agents or plugins if extended to do so.
Using Heist is very easy, Start by downloading Heist. Just install via pip:
pip install heist
Heist Manager
In order to run Heist you will need to specify a Heist manager. An example of a heist manager is salt.minion but this will require a user to install the heist-salt project:
pip install heist-salt
Making Your Roster
A Roster is a file used by Heist to map login information to the systems in your environment. This file can be very simple and just needs to tell Heist where your systems are and how to log into them via ssh. Open a file called roster.cfg and add the data needed to connect to a remote system via ssh:
system_name:
host: 192.168.4.4
username: fred
password: freds_password
The roster files typically all live inside of a roster directory. But to get started we will execute a single roster file with Heist using the salt.minion Heist manager:
heist salt.minion -R roster.cfg
Assuming your roster is correct, heist will now connect to the remote system and deploy the salt.minion binary.
Tear Down
Heist is able to automatically clean up as well! Just soft kill your heist application and it will reach out to all connections, tell them to remove the deployed artifacts from the target systems and stop the service! Like a proper heist these should be no evidence left behind!
Using Heist to Deploy Salt Minions
If you want to use Heist to deploy and manage Salt, you will need to install heist-salt.
Additional Documentation
If you want to read more about how to use Heist and its internals please take a look at Heist’s documentation here: https://heist.readthedocs.io/en/latest/
Metadata
Release files for heist 6.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| heist-6.2.0.tar.gz | 22.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| heist-6.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 49.5 kB
Release files / heist-6.2.0.tar.gz
| Download URL | heist-6.2.0.tar.gz |
|---|---|
| Size | 22.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
dfa16e49a508b3ac43f92a52d9a0d1b57fb1c2f7762f69e8529470d3ce54e6c0
|
|
BLAKE2b-256 checksum How to use checksums |
0c3b8fb5e67281cea4a59ae3176635a6e87c5533aec698ee3386c354ec4bbf13
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.8.13
|
Release files / heist-6.2.0-py3-none-any.whl
| Download URL | heist-6.2.0-py3-none-any.whl |
|---|---|
| Size | 27.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d2499bb66bdf851570f18f8197e83e37dc15e5373d91f7db68a2cd64de4dda79
|
|
BLAKE2b-256 checksum How to use checksums |
5b6fdba2919c8d13b9120581c35e075d93c426b89505f1bfc378c49f3569c5f0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.8.13
|