2020-09-08 08:54:07 +02:00
# abra
2020-09-07 23:29:29 +02:00
2021-08-02 11:32:52 +02:00
## 🔥 🔥 🔥 D E P R E C A T E D 🔥 🔥 🔥
[`abra` ](https://git.coopcloud.tech/coop-cloud/abra ) served us well but we're porting it to [Golang ](https://golang.org ) over in [`go-abra` ](https://git.coopcloud.tech/coop-cloud/go-abra ). To learn more about the reasons for that, see [this blog post ](https://coopcloud.tech/blog/this-month-in-coop-cloud-july/ ). This means this repository and tool are officially deprecated as of August 1rst 2021. We will still provide bug security fixes but no new features will be developed in `abra` . Feel free to go on using it and reporting issues against this issue tracker. Thanks for all the good times Bash.
## 🔥 🔥 🔥 D E P R E C A T E D 🔥 🔥 🔥
---
2021-08-02 11:29:33 +02:00
2020-10-25 21:08:03 +01:00
[](https://drone.autonomic.zone/coop-cloud/abra)
2020-09-08 08:54:19 +02:00
2021-04-18 17:42:42 +02:00
> https://coopcloud.tech
2020-10-25 21:22:29 +01:00
2021-06-03 09:09:44 +02:00
The Co-op Cloud utility belt 🎩🐇
2020-10-26 18:16:54 +01:00
2021-04-18 17:42:42 +02:00
`abra` is a command-line tool for managing your own [Co-op Cloud ](https://coopcloud.tech ). It can provision new servers, create applications, deploy them, run backup and restore operations and a whole lot of other things. It is the go-to tool for day-to-day operations when managing a Co-op Cloud instance.
2021-03-02 11:53:55 +01:00
2021-03-04 13:24:13 +01:00
## Change log
2021-03-20 21:44:26 +01:00
> 🔥 🔥 🔥 Please note, while we are still in [public
2021-04-18 17:42:42 +02:00
> alpha](https://docs.coopcloud.tech/roadmap/), the `abra` release
2021-03-20 21:44:26 +01:00
> versioning scheme is not following [semver](https://semver.org/) conventions
> because we are still in the exploratory phases of building this tool. Please
> read the changes before upgrading your `abra` installation as there are
> **most likely** breaking changes coming each release. Sorry for any
> inconvenience caused, we're working hard to make this tool stable. Semver
> will be respected when we reach public beta. 🔥 🔥 🔥
2021-03-04 13:24:13 +01:00
See [CHANGELOG.md ](./CHANGELOG.md ).
2020-12-29 15:10:05 +01:00
## Documentation
2021-04-18 17:42:42 +02:00
> [docs.coopcloud.tech](https://docs.coopcloud.tech)
2020-12-29 15:10:05 +01:00
2021-07-04 23:06:20 +02:00
## Requirements
2021-05-30 21:25:33 +02:00
- `curl`
- `docker`
2021-05-30 22:06:22 +02:00
- `bash` >= 4
2021-05-30 21:25:33 +02:00
2021-07-04 23:06:20 +02:00
## Install
2021-03-15 10:34:38 +02:00
Install the latest stable release:
2020-09-22 13:05:23 +02:00
```sh
2021-05-31 21:10:51 +02:00
curl https://install.abra.coopcloud.tech | bash
2020-09-22 13:05:23 +02:00
```
2021-03-02 11:53:55 +01:00
2021-07-05 18:39:43 +02:00
The source for this script is [here ](./deploy/install.abra.coopcloud.tech/installer ).
You can pass options to the script like so (e.g. install the bleeding edge development version):
2021-03-15 10:34:38 +02:00
```sh
2021-05-31 21:10:51 +02:00
curl https://install.abra.coopcloud.tech | bash -s -- --dev
2021-03-15 10:34:38 +02:00
```
2021-07-05 18:39:43 +02:00
Other options available are as follows:
- **--no-prompt**: non-interactive installation
- **--no-deps**: do not attempt to install [requirements ](#requirements )
2021-03-04 16:31:18 +01:00
2021-06-03 09:58:28 +02:00
## Container
2021-06-17 21:48:55 +02:00
An [image ](https://hub.docker.com/r/thecoopcloud/abra ) is also provided.
2021-06-03 09:58:28 +02:00
```
2021-06-17 21:48:55 +02:00
docker run thecoopcloud/abra app ls
2021-06-03 09:58:28 +02:00
```
2021-06-03 09:47:46 +02:00
2021-03-15 10:34:38 +02:00
## Update
Run `abra upgrade` to automatically download and install the latest release
2021-03-16 07:00:23 +01:00
version.
To update the development version, run `abra upgrade --dev` .
2021-03-15 10:34:38 +02:00
2021-03-02 11:53:55 +01:00
## Hack
2021-03-17 12:50:02 +01:00
It's written in Bash version 4 or greater!
2021-05-31 21:10:51 +02:00
Install it via `curl https://install.abra.coopcloud.tech | bash -s -- --dev` , then you can hack on the source in `~/.abra/src` .
2021-03-17 12:50:02 +01:00
The command-line interface is generated via [docopt ](http://docopt.org/ ). If you add arguments then you need to run `make docopt` ro regenerate the parser.
2021-03-15 10:34:38 +02:00
2021-03-15 10:07:17 +01:00
Please remember to update the [CHANGELOG ](./CHANGELOG.md ) when you make a change.
2021-03-15 10:34:38 +02:00
2021-04-02 15:53:08 +02:00
## Releasing
### `abra`
2021-03-17 12:59:09 +01:00
2021-05-31 21:10:51 +02:00
> [install.abra.coopcloud.tech](https://install.abra.coopcloud.tech)
2021-04-18 17:48:36 +02:00
2021-03-17 12:59:09 +01:00
- Change the `x.x.x` header in [CHANGELOG.md ](./CHANGELOG.md ) to reflect new version and mark date
2021-04-02 15:53:08 +02:00
- Update the version in [abra ](./abra )
2021-05-31 21:10:51 +02:00
- Update the version in [deploy/install.abra.coopcloud.tech/installer ](./deploy/install.abra.coopcloud.tech/installer )
2021-03-17 12:59:09 +01:00
- `git commit` the above changes and then tag it with `git tag <your-new-version>`
2021-04-02 15:56:15 +02:00
- `git push` and `git push --tags`
2021-04-02 15:53:08 +02:00
- Deploy a new installer script `make release-installer`
2021-04-02 15:55:29 +02:00
- Tell the world (CoTech forum, Matrix public channel, Autonomic mastodon, etc.)