2.6 KiB
abra
Work-In-Progress port of abra-bash to Golang.
See abra-bash for more. See our progress in TODO.md.
Install
Arch-based Linux Distros
abra (coming-soon) or for the latest version on git abra-git
yay -S abra-git # or abra
Debian-based Linux Distros
Coming Soon
Homebrew
Coming Soon
Build from source
git clone https://git.coopcloud.tech/coop-cloud/abra
cd abra
go env -w GOPRIVATE=coopcloud.tech
make install
The abra binary will be in $GOPATH/bin
.
Hacking
Install direnv, run cp .envrc.sample .envrc
, then run direnv allow
in this directory. This will set coopcloud repos as private due to this bug.. Or you can run go env -w GOPRIVATE=coopcloud.tech
but I'm not sure how persistent this is.
Install Go >= 1.16 and then:
make build
to build./abra
to run commandsmake test
will run tests
Our Drone CI configuration runs a number of sanity on each pushed commit. See the Makefile for more handy targets.
Please use the conventional commit format for your commits so we can automate our change log.
Versioning
We use goreleaser to help us automate releases. We
use semver for versioning all releases of the tool. While
we are still in the public alpha release phase, we will maintain a
0.y.z-alpha
format. Change logs are generated from our commit logs. We are
still working this out and aim to refine our release praxis as we go.
Fork maintenance
We maintain a fork of godotenv for two features:
- multi-line env var support
- inline comment parsing
You can upgrade the version here by running go get github.com/Autonomic-Cooperative/godotenv@<commit>
where <commit>
is the
latest commit you want to pin to. We are aiming to migrate to YAML format for the environment configuration, so this should only
be a temporary thing.