The Co-op Cloud command-line interface 🎩🐇
Go to file
3wc 552abdd980 Don't clobber global $DOMAIN variable
Closes #156
2021-05-06 00:43:16 +02:00
bin Sort that JSON 2021-05-02 22:14:15 +02:00
completion Fix `server` bash completion 2020-12-31 11:47:14 +02:00
deploy Sort the JSON 2021-05-02 22:14:22 +02:00
tests Add debugging for tests 2021-04-07 01:29:43 +02:00
.drone.yml Appease flake8 on the linting 2021-04-04 21:15:00 +02:00
.gitignore Don't ignore JSON, we'll need it 2021-04-02 15:49:08 +02:00
CHANGELOG.md Update change log 2021-05-02 22:18:04 +02:00
README.md Add URL also 2021-04-18 17:48:36 +02:00
abra Don't clobber global $DOMAIN variable 2021-05-06 00:43:16 +02:00
makefile Migrate to apps.json naming 2021-04-18 17:42:32 +02:00

README.md

abra

Build Status codecov

https://coopcloud.tech

The cooperative cloud utility belt 🎩🐇

abra is a command-line tool for managing your own Co-op Cloud. 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.

Change log

🔥 🔥 🔥 Please note, while we are still in public alpha, the abra release versioning scheme is not following semver 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. 🔥 🔥 🔥

See CHANGELOG.md.

Documentation

docs.coopcloud.tech

Install

Install the latest stable release:

curl https://install.abra.autonomic.zone | bash

or the bleeding-edge development version:

curl https://install.abra.autonomic.zone | bash -s -- --dev

The source for this script is here.

Update

Run abra upgrade to automatically download and install the latest release version.

To update the development version, run abra upgrade --dev.

Hack

It's written in Bash version 4 or greater!

Install it via curl https://install.abra.autonomic.zone | bash -s -- --dev, then you can hack on the source in ~/.abra/src.

The command-line interface is generated via docopt. If you add arguments then you need to run make docopt ro regenerate the parser.

Please remember to update the CHANGELOG when you make a change.

Generating a new apps.json

You'll need to install the following requirements:

Then run ./bin/app-json.py (source) and it will spit out the JSON file into deploy/apps.coopcloud.tech/apps.json.

Releasing

abra

install.abra.autonomic.zone

  • Change the x.x.x header in CHANGELOG.md to reflect new version and mark date
  • Update the version in abra
  • Update the version in deploy/install.abra.autonomic.zone/installer
  • git commit the above changes and then tag it with git tag <your-new-version>
  • git push and git push --tags
  • Deploy a new installer script make release-installer
  • Tell the world (CoTech forum, Matrix public channel, Autonomic mastodon, etc.)

apps.coopcloud.tech

apps.coopcloud.tech

$ make release-apps