deployer

Crates.iodeployer
lib.rsdeployer
version0.0.2
sourcesrc
created_at2022-05-06 12:08:15.262939
updated_at2022-05-08 23:46:17.012013
descriptionLaravel Zero Downtime
homepagehttps://github.com/samirdjelal/deployer
repositoryhttps://github.com/samirdjelal/deployer
max_upload_size
id581658
size20,366
Samir Djelal (samirdjelal)

documentation

https://docs.rs/deployer

README

Deployer

deployer crate test build issues Downloads MIT License deployer documentation dependency status

A simple Laravel deployer for your projects.

Example

Using the binary

$ cargo install deployer
$ deployer deployer.yml

Using the crate

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/debug/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!"

License

This project is licensed under the MIT license.

Contribution

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.

Commit count: 23

cargo fmt