{"repo":"fooker/pullomatic","free":true,"listed":false,"github":"https://github.com/fooker/pullomatic","clone":"git clone https://github.com/fooker/pullomatic.git","description":"Automates git repository syncing through pure configuration","language":"Rust","stars":16,"topics":["git","webhook","automation","linux","trigger"],"license":"MIT","category":"workflow-automation","readme_excerpt":"pullomatic automates GIT repository synchronisation. Storing configuration or other application data in a GIT repository is a common practice. Usually custom scripts are used to pull updates from remote from time to time. pullomatic replaces these scripts with pure configuration. Beside the polling interval, pullomatic provides a HTTP endpoint which can be used to trigger updates by web-hooks. Whenever a change is detected in the remote repository branch, the new branch head will be checked out to the path. Features One configuration file per repository allowing for easy deployment Automatically creates target directory with initial clone Runs as daemon and checks repositories by interval without cron / timers Can be target for Webhooks supporting github, gitlab and others Inline configuration of SSH deploy-keys and credentials Executes scripts and commands after updates Build To build, the following requirements must be installed: rustc = 1.25 cargo = 0.25 After downloading the sources. the following command is used to build: The resulting binary will be placed in target/release/pullomatic . Configuration Each repository is configured in a single file which must be placed inside /etc/pullomatic/ . The filename is used as repository name and must be formatted as YAML file. The configuration must contain a path which specifies the path where the repository lives locally. On startup, the existence of the repository will checked. If the repository does not exists, the remote rep","default_branch":null,"files":null,"tree":[],"storefront":"/r/fooker","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/fooker/pullomatic/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}