Declarative recipe-based task runner
Project description
trask
Declarative recipe-based task runner
Usage:
python3 -m trask [--dry-run] <path>
Example
docker-build {
tag 'proj1'
from 'amazonlinux:2'
recipes {
yum-install {
pkg [ 'gcc' 'openssl-devel' ]
}
install-rust {
channel 'nightly'
}
}
workdir '/app'
}
docker-run {
image 'proj1'
init true
volumes [
{
host '..'
container '/app'
}
]
commands [
'cargo build --release'
'cargo test --release'
]
}
create-temp-dir {
var 'install-dir'
}
copy {
recipe 'copy'
src [
proj1.service'
'../target/release/proj1'
]
dst install-dir
}
set {
user 'nbishop'
host '12.34.56.78'
identity env(SSH_KEY_PATH')
}
upload {
replace true
identity identity
user user
host host
src install-dir
dst 'app'
}
ssh {
identity identity
user user
host host
commands [
'sudo cp app/proj1.service /etc/systemd/system/'
'sudo systemctl enable proj1'
'sudo systemctl restart proj1'
]
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
trask-1.2.1.tar.gz
(7.4 kB
view hashes)