forked from toolshed/docs.coopcloud.tech
Extremely hectic mass-URL fix
This commit is contained in:
@ -17,7 +17,7 @@ post](http://hintjens.com/blog:106)).
|
||||
|
||||
## Quick start
|
||||
|
||||
Get a fresh copy of the `abra` source code from [here](https://git.coopcloud.tech/coop-cloud/abra).
|
||||
Get a fresh copy of the `abra` source code from [here](https://git.coopcloud.tech/toolshed/abra).
|
||||
|
||||
Install [direnv](https://direnv.net), run `cp .envrc.sample .envrc`, then run `direnv allow` in this directory. Or you can run `go env -w GOPRIVATE=coopcloud.tech` but I'm not sure how persistent this is.
|
||||
|
||||
@ -30,7 +30,7 @@ Install [Go >= 1.16](https://golang.org/doc/install) and then:
|
||||
- `make install-kadabra` will install kadabra to `$GOPATH/bin`
|
||||
- `go get <package>` and `go mod tidy` to add a new dependency
|
||||
|
||||
Our [Drone CI configuration](https://git.coopcloud.tech/coop-cloud/abra/src/branch/main/.drone.yml) runs a number of checks on each pushed commit. See the [Makefile](https://git.coopcloud.tech/coop-cloud/abra/src/branch/main/Makefile) for more handy targets.
|
||||
Our [Drone CI configuration](https://git.coopcloud.tech/toolshed/abra/src/branch/main/.drone.yml) runs a number of checks on each pushed commit. See the [Makefile](https://git.coopcloud.tech/toolshed/abra/src/branch/main/Makefile) for more handy targets.
|
||||
|
||||
Please use the [conventional commit format](https://www.conventionalcommits.org/en/v1.0.0/) for your commits so we can automate our change log.
|
||||
|
||||
@ -62,8 +62,8 @@ automated running the integration test suite. Here's the TLDR;
|
||||
|
||||
* We have a donated CI server (tysm `@mirsal` 💝) standing at the ready,
|
||||
`int.coopcloud.tech`.
|
||||
* We run the entire integration suite nightly via our Drone CI/CD configuration [here](https://git.coopcloud.tech/coop-cloud/abra/src/branch/main/.drone.yml) (see "`name: integration test`" stanza)
|
||||
* Here is the script that is run on the remote server: [`run-ci-int`](https://git.coopcloud.tech/coop-cloud/abra/src/branch/main/scripts/tests/run-ci-int)
|
||||
* We run the entire integration suite nightly via our Drone CI/CD configuration [here](https://git.coopcloud.tech/toolshed/abra/src/branch/main/.drone.yml) (see "`name: integration test`" stanza)
|
||||
* Here is the script that is run on the remote server: [`run-ci-int`](https://git.coopcloud.tech/toolshed/abra/src/branch/main/scripts/tests/run-ci-int)
|
||||
|
||||
What follows is a listing of how this was achieved so that we can collectivise
|
||||
the maintenance.
|
||||
@ -80,8 +80,8 @@ The drone configuration was wired up as follows:
|
||||
|
||||
* Generated a SSH key and put the public key part in `~/.ssh/authorize_keys`
|
||||
* Added that public key part as a "deploy key" in the abra repo (so we can do `ssh://` git remote pulls)
|
||||
* Added the private key part as a Drone secret which is available in build so that the build can SSH over to the server to run commands. That was done like so: `drone secret add --repository coop-cloud/abra --name abra_int_private_key --data @id_ed25519`
|
||||
* In order to specify a cron timing, you need to create it with the Drone CLI: `drone cron add "coop-cloud/abra" "integration" @daily --branch main`
|
||||
* Added the private key part as a Drone secret which is available in build so that the build can SSH over to the server to run commands. That was done like so: `drone secret add --repository toolshed/abra --name abra_int_private_key --data @id_ed25519`
|
||||
* In order to specify a cron timing, you need to create it with the Drone CLI: `drone cron add "toolshed/abra" "integration" @daily --branch main`
|
||||
|
||||
Please ask `@decentral1se` or on the Matrix channels for SSH access to the machine.
|
||||
|
||||
@ -255,11 +255,11 @@ func main() {
|
||||
|
||||
Some tools that are making use of the API so far are:
|
||||
|
||||
* [`kadabra`](https://git.coopcloud.tech/coop-cloud/abra/src/branch/main/cmd/kadabra/main.go)
|
||||
* [`kadabra`](https://git.coopcloud.tech/toolshed/abra/src/branch/main/cmd/kadabra/main.go)
|
||||
|
||||
## Cross-compiling
|
||||
|
||||
If there's no official release for the architecture you use, you can cross-compile `abra` very easily. Clone the source code from [here](https://git.coopcloud.tech/coop-cloud/abra) and then:
|
||||
If there's no official release for the architecture you use, you can cross-compile `abra` very easily. Clone the source code from [here](https://git.coopcloud.tech/toolshed/abra) and then:
|
||||
|
||||
- enter the `abra` directory
|
||||
- run `git tag -l` to see the list of tags, choose the latest one
|
||||
@ -288,11 +288,11 @@ For developers, while using this `-beta` format, the `y` part is the "major" ver
|
||||
### Making a new release
|
||||
|
||||
- Run the [integration test suite](#integration-tests) and the unit tests (`make test`) (takes a while!)
|
||||
- Change `ABRA_VERSION` in [`scripts/installer/installer`](https://git.coopcloud.tech/coop-cloud/abra/src/branch/main/scripts/installer/installer) to match the new tag (use [semver](https://semver.org))
|
||||
- Change `ABRA_VERSION` in [`scripts/installer/installer`](https://git.coopcloud.tech/toolshed/abra/src/branch/main/scripts/installer/installer) to match the new tag (use [semver](https://semver.org))
|
||||
- Commit that change (e.g. `git commit -m 'chore: publish next tag x.y.z-beta'`)
|
||||
- Make a new tag (e.g. `git tag -a x.y.z-beta`)
|
||||
- Push the new tag (e.g. `git push && git push --tags`)
|
||||
- Wait until the build finishes on [build.coopcloud.tech](https://build.coopcloud.tech/coop-cloud/abra)
|
||||
- Wait until the build finishes on [build.coopcloud.tech](https://build.coopcloud.tech/toolshed/abra)
|
||||
- Deploy the new installer script (e.g. `cd ./scripts/installer && make`)
|
||||
- Check the release worked, (e.g. `abra upgrade; abra -v`)
|
||||
|
||||
@ -300,12 +300,12 @@ For developers, while using this `-beta` format, the `y` part is the "major" ver
|
||||
|
||||
### `godotenv`
|
||||
|
||||
We maintain a fork of [godotenv](https://git.coopcloud.tech/coop-cloud/godotenv) because we need inline comment parsing for environment files. You can upgrade the version here by running `go get git.coopcloud.tech/coop-cloud/godotenv@0<COMMID>` where `<commit>` is the latest commit you want to pin to. See [`abra#391`](https://git.coopcloud.tech/coop-cloud/abra/pulls/391) for more.
|
||||
We maintain a fork of [godotenv](https://git.coopcloud.tech/toolshed/godotenv) because we need inline comment parsing for environment files. You can upgrade the version here by running `go get git.coopcloud.tech/toolshed/godotenv@0<COMMID>` where `<commit>` is the latest commit you want to pin to. See [`abra#391`](https://git.coopcloud.tech/toolshed/abra/pulls/391) for more.
|
||||
|
||||
### `docker/client`
|
||||
|
||||
A number of modules in [pkg/upstream](https://git.coopcloud.tech/coop-cloud/abra/src/branch/main/pkg/upstream) are copy/pasta'd from the upstream [docker/docker/client](https://pkg.go.dev/github.com/docker/docker/client). We had to do this because upstream are not exposing their API as public.
|
||||
A number of modules in [pkg/upstream](https://git.coopcloud.tech/toolshed/abra/src/branch/main/pkg/upstream) are copy/pasta'd from the upstream [docker/docker/client](https://pkg.go.dev/github.com/docker/docker/client). We had to do this because upstream are not exposing their API as public.
|
||||
|
||||
### `github.com/schultz-is/passgen`
|
||||
|
||||
Due to [`coop-cloud/organising#358`](https://git.coopcloud.tech/coop-cloud/organising/issues/358).
|
||||
Due to [`toolshed/organising#358`](https://git.coopcloud.tech/toolshed/organising/issues/358).
|
||||
|
@ -4,8 +4,8 @@ title: Abra
|
||||
|
||||
<a href="https://github.com/egonelbre/gophers"><img align="right" width="250" src="https://github.com/egonelbre/gophers/raw/master/.thumb/sketch/adventure/poking-fire.png"/></a>
|
||||
|
||||
[](https://build.coopcloud.tech/coop-cloud/abra)
|
||||
[](https://goreportcard.com/report/git.coopcloud.tech/coop-cloud/abra)
|
||||
[](https://build.coopcloud.tech/toolshed/abra)
|
||||
[](https://goreportcard.com/report/git.coopcloud.tech/toolshed/abra)
|
||||
[](https://pkg.go.dev/coopcloud.tech/abra)
|
||||
|
||||
`abra` is the flagship client & command-line for Co-op Cloud. It has been developed specifically for the purpose of making the day-to-day operations of operators and maintainers pleasant & convenient. It is libre software, written in Go and maintained and extended by the community :heart:
|
||||
|
@ -4,7 +4,7 @@ title: Install
|
||||
|
||||
## Installer script source
|
||||
|
||||
You can view that [here](https://git.coopcloud.tech/coop-cloud/abra/src/branch/main/scripts/installer/installer).
|
||||
You can view that [here](https://git.coopcloud.tech/toolshed/abra/src/branch/main/scripts/installer/installer).
|
||||
|
||||
## Installer prerequisites
|
||||
|
||||
@ -43,7 +43,7 @@ curl https://install.abra.coopcloud.tech | bash -s -- --rc
|
||||
## Manual verification
|
||||
|
||||
You can download the `abra` binary yourself from the [releases
|
||||
page](https://git.coopcloud.tech/coop-cloud/abra/releases) along with the
|
||||
page](https://git.coopcloud.tech/toolshed/abra/releases) along with the
|
||||
`checksums.txt` file and verify it's integrity with the following command.
|
||||
|
||||
```bash
|
||||
@ -67,7 +67,7 @@ Follow the guide [here](https://docs.coopcloud.tech/abra/hack/)
|
||||
```
|
||||
docker run \
|
||||
-v $HOME/.abra:/.abra \
|
||||
git.coopcloud.tech/coop-cloud/abra app ls
|
||||
git.coopcloud.tech/toolshed/abra app ls
|
||||
```
|
||||
|
||||
!!! note
|
||||
|
@ -84,7 +84,7 @@ Currently, recipe maintainers need to update the scores in this section manually
|
||||
## Requesting Recipes
|
||||
|
||||
If you'd like to see a new recipe packaged there are two options for you. First is to contribte one as a _Maintainer_
|
||||
The second option is to make a request on the [`recipes-wishlist`](https://git.coopcloud.tech/coop-cloud/recipes-wishlist) repository issue tracker.
|
||||
The second option is to make a request on the [`recipes-wishlist`](https://git.coopcloud.tech/toolshed/recipes-wishlist) repository issue tracker.
|
||||
|
||||
If no one is around to help, you can always take a run at it yourself, go to the [Maintainers](/maintainers/) section to help you on your way.
|
||||
|
||||
@ -100,7 +100,7 @@ If no one is around to help, you can always take a run at it yourself, go to the
|
||||
|
||||
Don't feel up to the task? Open an issue in the `recipes-wishlist` repository
|
||||
|
||||
[Request Recipe](https://git.coopcloud.tech/coop-cloud/recipes-wishlist){ .md-button .md-button--primary }
|
||||
[Request Recipe](https://git.coopcloud.tech/toolshed/recipes-wishlist){ .md-button .md-button--primary }
|
||||
|
||||
</div>
|
||||
|
||||
|
@ -4,7 +4,7 @@ title: Troubleshoot
|
||||
|
||||
## Where do I report `abra` bugs / feature requests?
|
||||
|
||||
You can use [this issue tracker](https://git.coopcloud.tech/coop-cloud/organising/issues/new/choose).
|
||||
You can use [this issue tracker](https://git.coopcloud.tech/toolshed/organising/issues/new/choose).
|
||||
|
||||
## SSH connection issues?
|
||||
|
||||
@ -63,22 +63,22 @@ We're still waiting for upstream patch which resovles this.
|
||||
|
||||
## Why can't `abra` support multiline in `.env` files?
|
||||
|
||||
We're sorry, it's an issue with an upstream dependency. See [`#291`](https://git.coopcloud.tech/coop-cloud/organising/issues/291) for more.
|
||||
We're sorry, it's an issue with an upstream dependency. See [`#291`](https://git.coopcloud.tech/toolshed/organising/issues/291) for more.
|
||||
|
||||
## I need some feature from the old deprecated bash abra?
|
||||
|
||||
There is an archive of the [old code here](https://git.coopcloud.tech/coop-cloud/abra-bash).
|
||||
There is an archive of the [old code here](https://git.coopcloud.tech/toolshed/abra-bash).
|
||||
|
||||
You can install it alongside the [supported version of Abra](https://git.coopcloud.tech/coop-cloud/abra) by using these commands:
|
||||
You can install it alongside the [supported version of Abra](https://git.coopcloud.tech/toolshed/abra) by using these commands:
|
||||
|
||||
```bash
|
||||
git clone https://git.coopcloud.tech/coop-cloud/abra-bash ~/.abra/bash-src
|
||||
git clone https://git.coopcloud.tech/toolshed/abra-bash ~/.abra/bash-src
|
||||
ln -s ~/.abra/bash-src/abra ~/.local/bin/babra
|
||||
```
|
||||
|
||||
## "Network not found" when deploying?
|
||||
|
||||
This appears to be an upstream issue for which we can't do much in `abra` to solve. See [`coop-cloud/organising#420`](https://git.coopcloud.tech/coop-cloud/organising/issues/420) for more info. The work-around is to leave more time in between undeploy/deploy operations so the runtime can catch up.
|
||||
This appears to be an upstream issue for which we can't do much in `abra` to solve. See [`toolshed/organising#420`](https://git.coopcloud.tech/toolshed/organising/issues/420) for more info. The work-around is to leave more time in between undeploy/deploy operations so the runtime can catch up.
|
||||
|
||||
## Caller path in debug stacktrace doesn't exist
|
||||
|
||||
|
@ -18,7 +18,7 @@ abra upgrade --rc
|
||||
|
||||
## Migration guides
|
||||
|
||||
> General release notes are [here](https://git.coopcloud.tech/coop-cloud/abra/releases/)
|
||||
> General release notes are [here](https://git.coopcloud.tech/toolshed/abra/releases/)
|
||||
|
||||
### `0.9.x-beta` -> `0.10.x-beta`
|
||||
|
||||
@ -72,7 +72,7 @@ abra upgrade --rc
|
||||
rely on `abra app logs` for the time being.
|
||||
|
||||
* It's not possible to `--chaos/-C` on `upgrade` / `rollback`. See
|
||||
[`#559`](https://git.coopcloud.tech/coop-cloud/organising/issues/559) for
|
||||
[`#559`](https://git.coopcloud.tech/toolshed/organising/issues/559) for
|
||||
more.
|
||||
|
||||
* `main` will be chosen for new repositories created by `abra`.
|
||||
@ -97,7 +97,7 @@ None at this time.
|
||||
|
||||
- Secrets are now only generated by reading the recipe config, not the env
|
||||
vars. This should hopefully not affect you. If you're seeing weird behaviour,
|
||||
please see [`#464`](https://git.coopcloud.tech/coop-cloud/organising/issues/464).
|
||||
please see [`#464`](https://git.coopcloud.tech/toolshed/organising/issues/464).
|
||||
|
||||
- There is a new linting rule for catching invalid tags in recipe versions.
|
||||
This is an seemingly unavoidable issue that requires some maintenance work.
|
||||
@ -131,13 +131,13 @@ None at this time.
|
||||
- Using `{{ .Domain }}` in recipe `.envrc.sample` files went away because it
|
||||
was portable enough. We revert to replacing e.g `gitea.example.com` with the
|
||||
domain. See
|
||||
[`8fad34e`](https://git.coopcloud.tech/coop-cloud/abra/commit/8fad34e) for
|
||||
[`8fad34e`](https://git.coopcloud.tech/toolshed/abra/commit/8fad34e) for
|
||||
more.
|
||||
|
||||
- If your `abra.sh` scripts depend on `/bin/sh` and `/bin/bash` is available in
|
||||
the container then `/bin/bash` will be used from now on. `/bin/sh` is only
|
||||
now used if `/bin/bash` is not available. See
|
||||
[`7f745ff`](https://git.coopcloud.tech/coop-cloud/abra/commit/7f745ff) for
|
||||
[`7f745ff`](https://git.coopcloud.tech/toolshed/abra/commit/7f745ff) for
|
||||
more.
|
||||
|
||||
### `v0.4.x` -> `v0.5.x`
|
||||
|
Reference in New Issue
Block a user