tools/autoinstall/bashly.yml

108 lines
2.4 KiB
YAML

name: autoinstall
help: Install files, repository and else
version: 0.1.0
flags:
- long: --clean
short: -c
help: Clean exisiting targets
- long: --hook
short: -h
help: Hook to run if something changed
arg: hook
environment_variables:
- name: AUTOINSTALL_CLEAN
help: Clean exisiting targets
dependencies:
http_client:
command: [curl, wget]
help: Please install either curl or wget
commands:
- name: completions
help: Generate bash completions
- name: run
help: Autoinstall from file
args:
- name: group
required: true
help: The group to install
- name: git
help: Install a git repository
args:
- name: repo
required: true
help: The url of the git repository
- name: target
required: true
help: The path to clone the repository into
- name: file
help: Install a file
args:
- name: url
required: true
help: The url of the file
- name: target
required: true
help: The file-path to download the file into
flags:
- long: --pipe
short: -p
help: Pipe file through command (e.g. "tar xzO")
arg: pipe
default: cat
- name: exe
help: Install an executable
args:
- name: url
required: true
help: The url of the file
- name: target
required: true
help: The file-path to download the file into
filename: file_command.sh
flags:
- long: --pipe
short: -f
help: Pipe file through command (e.g. "tar xzO")
arg: pipe
default: cat
- name: archive
help: Install an archive
args:
- name: url
required: true
help: The url of the arhive
- name: target
required: true
help: The path to clone the repository into
- name: env
help: Create a file with envsubst
args:
- name: template
required: true
help: The path to the template
- name: target
required: true
help: The path to write the result to
dependencies:
envsubst: This tool is usually part of the gettext package
- name: text
help: Create a file from text
args:
- name: text
required: true
help: The text to write to the file
- name: target
required: true
help: The path to write the result to