Porting abra to Golang
Go to file
2021-08-29 10:46:38 +02:00
.chglog chore: added git-chglog options 2021-07-15 01:18:34 +01:00
catalogue refactor: migrate JSON function to new package 2021-08-09 16:16:33 +02:00
cli feat: add app config command 2021-08-29 10:45:49 +02:00
client WIP abra app version <app> implementation 2021-08-25 13:06:49 +02:00
cmd/abra refactor: simplify for loop 2021-07-30 16:32:06 +01:00
config refactor: support listing unknown versions 2021-08-25 14:06:42 +02:00
secret refactor(style): errs should not start with upper 2021-08-02 04:20:02 +01:00
tests/resources tests: around 60% code coverage for config package 2021-07-19 14:36:00 +01:00
web refactor: migrate JSON function to new package 2021-08-09 16:16:33 +02:00
.drone.yml test: integrate new test target into CI build 2021-07-19 15:50:16 +02:00
.envrc.sample docs: updated go env steps fo install our pgks 2021-08-13 13:23:54 +01:00
.gitignore docs: updated go env steps fo install our pgks 2021-08-13 13:23:54 +01:00
go.mod docs: updated go env steps fo install our pgks 2021-08-13 13:23:54 +01:00
go.sum docs: updated go env steps fo install our pgks 2021-08-13 13:23:54 +01:00
Makefile build: added GOPRIVATE export to makefile 2021-08-13 13:28:18 +01:00
README.md docs: updated report card to new repo 2021-08-13 14:13:37 +01:00
TODO.md docs: mark as TODO 2021-08-29 10:46:38 +02:00
version feat: added version and makefile 2021-07-13 23:47:47 +01:00

go-abra

Build Status Go Report Card

Work-In-Progress port of abra to Golang.

See abra 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/go-abra
cd go-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 commands
  • make 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.

Fork maintenance

We maintain a fork of godotenv for two features:

  1. multi-line env var support
  2. 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.