Lezeh
lezeh
is a CLI tool to ease day-to-day engineering operations such as:
- Merging feature branch (by convention, specific using phabricator task number) into master, this includes cleaning up (delete) the merged feature branch
- Merge and run deployment commands
Install
Download binaries
Go to latest releases and download the binaries here
Binary | OS |
---|---|
lezeh-x86_64-unknown-linux-gnu.zip |
Linux |
lezeh-x86_64-apple-darwin.zip |
macOS |
Building manually
This requires rust
Setup
First create config file at ~/.lezeh
, we're using Hjson format.
{
# As of now, you just need to set phab config,
# please see https://github.com/sendyhalim/phab for more details
# Deployment command config
}
Usage
Deployment Command
# Below command will iterate all repositories under deployment.repositories config
# and do the following operations:
# * Make sure your local git data is updated by pulling remote git data from GH.
# * For each remote branches that contains the given task numbers:
# - Print out phabricator task owner (assigned) for that specific branch.
# - Create a PR for the matched branch.
# - Merge the branch into master with SQUASH strategy
# - Delete the remote branch
# Merge repo (given repo key) based on given deployment scheme config.
#
# Example usage (based on above config example):
# lezeh deployment deploy repo-key stg