abra/README.md

57 lines
2.1 KiB
Markdown
Raw Normal View History

2020-09-08 06:54:07 +00:00
# abra
2020-09-07 21:29:29 +00:00
2020-09-08 06:54:19 +00:00
[![Build Status](https://drone.autonomic.zone/api/badges/autonomic-cooperative/abra/status.svg)](https://drone.autonomic.zone/autonomic-cooperative/abra)
2020-09-07 21:29:29 +00:00
Docker stack magic 🎩🐇
2020-09-08 18:10:26 +00:00
2020-09-22 11:05:23 +00:00
## Install
2020-09-08 18:10:26 +00:00
2020-09-22 11:05:23 +00:00
```sh
2020-09-22 11:55:26 +00:00
curl -fsSL https://install.abra.autonomic.zone | bash
2020-09-22 11:05:23 +00:00
```
Specific releases are available via the project [release page](https://git.autonomic.zone/autonomic-cooperative/abra/releases).
## Changes
See [CHANGELOG.md](./CHANGELOG.md).
2020-09-08 18:10:26 +00:00
## Hacking
2020-09-22 11:05:23 +00:00
```sh
git clone ssh://git@git.autonomic.zone:2222/autonomic-cooperative/abra.git
cd abra
make dev_install
```
2020-09-21 22:05:28 +00:00
2020-09-24 07:19:58 +00:00
See [autonomic-cooperative/installer-scripts](https://git.autonomic.zone/autonomic-cooperative/installer-scripts) for the installer script deployment. To make a release, just add an entry to [CHANGELOG.md](./CHANGELOG.md) (following [semver](https://semver.org/) please) and then `git tag x.x.x && git push origin main --tags`. If you want the [installer-scripts](https://git.autonomic.zone/autonomic-cooperative/installer-scripts) deployment to pick that up, you'll need to change the version number in the [Makefile](https://git.autonomic.zone/autonomic-cooperative/installer-scripts/src/branch/main/Makefile) and run `make` in that repository and push the changes.
2020-09-22 11:58:17 +00:00
## Specify what to deploy where
You can use `abra` in one of 2 ways:
1. Clone a `compose-stack`, create an `.envrc` in it, and run `abra` in that
directory. Be sure to set `ABRA_STACK_DIR=.`
2. "Monorepo mode": keep all your `compose-stack`s in one directory and all your `env` files in
another, e.g.:
```
$ tree
.
├── apps
│   ├── mediawiki.demo.autonomic.zone.env
│   ├── wordpress.demo.autonomic.zone.env
└── stacks
├── gitea
├── matrix-synapse
├── mediawiki
├── nextcloud
├── swarmpit
├── traefik
└── wordpress
$ abra -e apps/mediawiki.demo.autonomic.zone.env deploy
```
2020-09-21 22:05:28 +00:00
## Examples
2020-09-22 11:05:23 +00:00
- `abra run mariadb mysqldump gitea -p'GdIbMeS09SURRktBnm3jcTufsL5z0MPd' | gzip > ../git.autonomic.zone_mariadb_`date +%F`.sql.gz`