Adame
Adame (pronounced: ăˈ.dam) is the abbreviation for "Automatic Docker Application Management Engine". So in short: Adame is a tool to manage docker-applications as part in a Linux-environment.
Since adame is usable declarative and is storing data in a git-repository Adame is suitable as a application-managing-part of a GitOps-environment.
Features
Adame is able to do the following things:
- Generate new application-environment
- Start-/Stop the docker-container according to the configuration-file
- Saves the state of the application inside the docker-container in a git-repository
- Automatically configure a basic intrusion-detection-system for the network-traffic of the docker-container
- Automatically export log-files of the managed application
Reference
The reference can be found here.
Runtime-requirements
Adame is intended to run on Linux-systems. Furthermore Adame requires that the following commandline-commands are available on your system:
chmod(For setting up permissions on the generated files)chown(For setting up ownerships on the generated files)docker>= 1.27.4 (For starting and stopping Docker-container)git>=2.30.0 (For integrity)gpg(For checking the integrity of commits)kill(For killing snort)pip>= 20.3.1 (On some systemspip3)python>= 3.10 (On some systemspython3)rsync(For exporting the log-files to a SIEM-server)ssh(Required for rsync)snort(For inspecting the network-traffic of the application)
Development
Branching-system
This repository applies the GitFlowSimplified-branching-system.
Install dependencies
To develop ScriptCollection it is obviously required that the following commandline-commands are available on your system:
python>= 3.10pip3
The pip-packaged which are required for developing on this project are defined in requirements.txt.
Commands like docker-compose or snort are technically not required for development since these commands will be mocked in the unit-tests.
IDE
The recommended IDE for developing Adame is Visual Studio Code. The recommended addons for developing Adame with Visual Studio Code are:
Run testcases
To run the testcases simply execute the script stored in ./Reference/Scripts/RunTestcases.script in the repository's home-directory which is expected to terminate with the exit-code 0.
Build
To Create an installable whl-package simply execute python Setup.py bdist_wheel --dist-dir ..
Installation
To install an Adame simply execute pip install Adame-x.x.x-py3-none-any.whl.
TODO-List
- Bug: When running in a different folder (like
adame startadvanced -c someotherfolder/Adame.configuration) then the prescript and postscript may have wrong working-directories. - Feature: Before starting the docker-container then if a container with same name already exists the already existing container should be stopped and then removed to avoid errors due to already existing container-names.
- Feature: After waiting
maximalexpectedstartdurationseconds there must be a check whether the container is running (and healthy if the health-information is available). If not then an error must be thrown
License
See License.txt for license-information.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file Adame-1.2.39-py3-none-any.whl.
File metadata
- Download URL: Adame-1.2.39-py3-none-any.whl
- Upload date:
- Size: 16.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1e9b17dbc4f499f0e41b62de252486f57a82682c9ca36c7f59336f98325f2d21
|
|
| MD5 |
b1e7a575f6b0c09b8c66319c823650da
|
|
| BLAKE2b-256 |
d49ea5ffff4d2073dedaad37ff2f41ad10888d3ac679bae7031609e60b64b5da
|