@installdoc/ansible-gas-station
Version:
An Ansible playbook that provisions your network with software from GitHub Awesome lists, developed with disaster recovery in mind ⛽🔥🤤
69 lines (63 loc) • 1.87 kB
YAML
version: '3'
tasks:
bundle:
deps:
- docker-pushrm
- fusion
docker-pushrm:
run: once
tags:
- update
cmds:
- task: install:github
vars:
BIN_NAME: docker-pushrm
PACKAGE: github.com/christian-korneck/docker-pushrm
- mkdir -p "$HOME/.docker/cli-plugins"
- mv "$(which docker-pushrm)" "$HOME/.docker/cli-plugins/docker-pushrm"
- chmod +x "$HOME/.docker/cli-plugins/docker-pushrm"
status:
- '[ -f "$HOME/.docker/cli-plugins/docker-pushrm" ]'
fusion:
run: once
tags:
- update
cmds:
- task: install:github
vars:
BIN_NAME: fusion
PACKAGE: github.com/edgelaboratories/fusion
install:github:
deps:
- :install:software:jq
vars:
BIN: '{{.BIN_NAME}}'
INSTALL_RECORD:
sh: |
if [ -n "$RECORD_INSTALL" ]; then
mkdir -p local/slim
echo '{{.BIN}}' >> local/slim/exe.txt
echo '{{.INSTALL_TASK}}' >> local/slim/install.txt
fi
run: when_changed
log:
error: Failed to acquire GitHub release from `{{.PACKAGE}}`
start: Acquiring GitHub binary release from `{{.PACKAGE}}`
success: Installed GitHub release from `{{.PACKAGE}}`, available as `{{.BIN}}`
cmds:
- task: :install:go:bin
- mkdir -p "$HOME/.config/bin"
- jq '. | .default_path = "./.bin" | .bins = {}' <<< $(echo '{}') > "$HOME/.config/bin/config.json"
- |
if [ -n "$CI" ]; then echo "*************** GitHub --> {{.BIN}}"; fi
- bin install -f {{.PACKAGE}} "$GOPATH/bin/{{.BIN}}"
status:
- type {{.BIN}} > /dev/null || [ -n "$NO_INSTALL_HOMEBREW" ]
sentry:
run: once
cmds:
- task: install:github
vars:
BIN_NAME: sentry-cli
PACKAGE: github.com/getsentry/sentry-cli