A simple Laravel deployer for your projects.
$ cargo install deployer
$ deployer deployer.yml
Add the following dependency to the Cargo.toml file:
[dependencies]
deployer = "0.0.2"
And then get started in your main.rs
:
use deployer::Deployer;
fn main() {
let config = "deployer.yml";
let mut deployer = Deployer::new();
deployer.configure(config);
deployer.deploy();
}
# Dev
$ cargo run -- deployer.yml
# Build
$ cargo build
$ target/release/deployer deployer.yml
# Test
$ cargo test
Configuration file deployer.yml
---
repository: git@github.com:samirdjelal/deployer.git
hostname: 127.0.0.1:22
username: root
password: password
deploy_path: /opt/deployer
keep_releases: 5
http_user: daemon
php_path:
shared_files:
- .env
shared_dirs:
- storage
writable_use_sudo: false
writable_recursive: true
writable_chmod_mode: 0777
writable_dirs:
- bootstrap/cache
- storage
- storage/app
- storage/app/public
- storage/framework
- storage/framework/cache
- storage/framework/sessions
- storage/framework/views
- storage/logs
pre_deploy_commands:
- ls -lah /opt/lampp/xampp
- echo "Hello World" > /root/file.txt
- cat /root/file.txt
post_deploy_commands:
- echo "Good bye!"
This project is licensed under the MIT license.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in deployer
by you, shall be licensed as MIT, without any additional terms or conditions.