A systemd inspired system configuration and deployment tool

system-deploy
is my personal server management and deployment tool. It's inspired by systemd's unit files and the deployment tool/script used @safing. It currently supports copying files/directories, installing packages and installing/enabling systemd unit files. system-deploy
is meant to be executed periodically and supports running different actions and tasks when changes are detected.
The compiled binary itself includes help and documentation for almost all supported operations and even some examples.
Checkout system-conf for a systemd inspired configuration system for Go projects.
Getting Started
Please checkout the documentation at khulnasoft-lab.github.io/system-deploy.
Installation from Source
system-deploy
is written in
and thus requires a working go installation to be compiled from source.
go install github.com/khulnasoft-lab/system-deploy/cmd/system-deploy
This will install the deploy
command into your $GOBIN
or $GOPATH/bin
if the former is not set.
Contributing
Any contributions to the system-deploy
project are welcome! Just fork the repository and create a PR with your changes. It's recommended to discuss planned changes in an issue first.
License
system-deploy
itself is licensed under a BSD 3-clause license. See LICENSE for more information.
Note that the bineries distributed via the release page are licensed under GPL-3 because the EditFile
action is compiled against a GPL-3 licensed library.