forked from toolshed/docs.coopcloud.tech
Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| cfc015c42e | |||
| f9d3d7e02c | |||
| 2cc577af37 | |||
| 0d2b6afc15 | |||
| 3900fba85a | |||
|
8f5636e28d
|
|||
|
dd2587228e
|
|||
| 38ea5271c1 |
@@ -440,6 +440,10 @@ Happy Hacking 🫂
|
||||
|
||||
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/cli`
|
||||
|
||||
We maintain a fork of [docker-cli](https://git.coopcloud.tech/toolshed/docker-cli/) because we needed to [patch port exposing](https://git.coopcloud.tech/toolshed/docker-cli/commit/2fbb22f65866ac97b47e4d47d8f855fee8c98e2a) to fix this [bug](https://github.com/docker/cli/issues/2407). Once the [fix was upstreamed](https://github.com/docker/cli/pull/6799) we can remove this fork again.
|
||||
|
||||
### `docker/client`
|
||||
|
||||
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.
|
||||
|
||||
@@ -105,4 +105,4 @@ $ git clone https://git.coopcloud.tech/coop-cloud/MyCoolRecipe.git ~/.abra/recip
|
||||
|
||||
## "only updates to Labels are allowed"
|
||||
|
||||
See [Packaging handbook » What does "only updates to Labels are allowed" mean](maintainers/handbook/#what-does-only-updates-to-labels-are-allowed-mean).
|
||||
See [Packaging handbook » What does "only updates to Labels are allowed" mean](/maintainers/handbook/#what-does-only-updates-to-labels-are-allowed-mean).
|
||||
|
||||
+7
-7
@@ -3,16 +3,16 @@ title: "Resolution 035: Budget 016: Sutty Website Proposal"
|
||||
---
|
||||
|
||||
- Topic: Budget 016: Sutty Website Proposal
|
||||
- Date: 2026-01-16
|
||||
- Deadline: 2026-01-30
|
||||
- Date: 2026-02-12
|
||||
- Deadline: 2026-02-26
|
||||
- Size: Large
|
||||
|
||||
## Summary
|
||||
|
||||
Budget 016 proposes to:
|
||||
|
||||
1. Compensate Sutty and Co-op Cloud community members `@edu` & `@eli` 250 USD according to their own proposed compensation.
|
||||
1. Compensate `@diatom` for up to 10 hours to participate in the generative process as Co-op Cloud community delegate.
|
||||
1. Compensate Sutty and Co-op Cloud community members `@edu` & `@eli` 250 USD (500 USD total) each according to their own proposed compensation.
|
||||
1. Compensate `@diatom` for up to 30 hours to participate in the generative process as Co-op Cloud community delegate.
|
||||
|
||||
Please see [the full proposal text](https://vvvvvvaria.org/~decentral1se/cc/CoopCloud-2025WebsiteProposal-Sutty.pdf) for more details. See `Capítulo 3 > Resources estimations` for the section regarding financial estimations. The Co-op Cloud community and federation are to be consulted during this process for decision making around choosing a new website proposal. `@diatom` agrees to be a bridge between the work of `@edu`/`@eli` and the Co-op Cloud community.
|
||||
|
||||
@@ -28,6 +28,6 @@ Please join `#coop-cloud-new-website:autonomic.zone` to participate in this proc
|
||||
|
||||
The budget total is:
|
||||
|
||||
* 250 USD (216 EUR)
|
||||
* 10 hrs * 20 EUR = 200 EUR
|
||||
* **Total**: 416 EUR
|
||||
* 500 USD (423 EUR)
|
||||
* 30 hrs * 20 EUR = 600 EUR
|
||||
* **Total**: 1023 EUR
|
||||
@@ -0,0 +1,26 @@
|
||||
---
|
||||
title: "Resolution 037: Adopt alakazam as an official project in the Co-op Cloud Federation"
|
||||
---
|
||||
|
||||
- Topic: Resolution 037: Adopt alakazam as an official project in the Co-op Cloud Federation
|
||||
- Date: 12-02-2026
|
||||
- Deadline: 26-02-2026
|
||||
- Size: medium
|
||||
|
||||
## Summary
|
||||
|
||||
We want to adopt the abra wrapper Alakazam (https://git.coopcloud.tech/moritz/alakazam) , which is used by KolliCloud (https://kollicloud.de) as an official project in the Co-op Cloud Federation
|
||||
|
||||
## Details
|
||||
|
||||
As we already disscussed on our Meetup and the Alakazam workshop at 39C3 end of 2025, we want to adopt the abra wrapper Alakazam (https://git.coopcloud.tech/moritz/alakazam), which is used by KolliCloud (https://kollicloud.de) as an official project in the Co-op Cloud Federation. This way, we want to start collaborative effort on teaching, writing docs, writing tests.
|
||||
|
||||
This includes the following (in the long run):
|
||||
|
||||
* tranfering the Alakazam repository to https://git.coopcloud.tech/toolshed
|
||||
* creating a space in the docs for alakazam and moving the contents of the readme and the nessecary contents of https://wiki.local-it.org/s/kollicloud-wiki/doc/installation-wVp2LfBbg7
|
||||
* get others to try alakazam (future Kite-Flying sessions for this)
|
||||
* write tests for alakazam
|
||||
* implement the option to use more than one deployment of the same application in one instance
|
||||
* migrate alaconnect.yml files for the recipe (we have to figure out how multiple instances would allow this in regards to the multiple same apps in one instance)
|
||||
* migrate the features (that makes sense) into abra
|
||||
@@ -582,23 +582,6 @@ Add the `# generate=false` comment
|
||||
SECRET_JWT_SECRET_VERSION=v1 # generate=false
|
||||
```
|
||||
|
||||
## How do I specify the charset for a specific secret generation
|
||||
|
||||
!!! warning "Watch out for old versions of `abra` 🚧"
|
||||
|
||||
This feature is only available in the >= 0.10.x series of `abra`.
|
||||
|
||||
```
|
||||
SECRET_JWT_SECRET_VERSION=v1 # charset=default,special
|
||||
```
|
||||
|
||||
Options are:
|
||||
|
||||
* `special`: [source](https://github.com/decentral1se/passgen/blob/8404cb922dea92efa8c3514f0ec8c37ce12a880f/const.go#L22C29-L22C43)
|
||||
* `safespecial`: [source](https://git.coopcloud.tech/toolshed/abra/src/commit/6abaf7a094df1a96599af2c4cbae1769821ad17c/pkg/secret/secret.go#L182)
|
||||
* `default,special`: mix of `default` and `special`
|
||||
* `default,safespecial`: mix of `default` and `safespecial`
|
||||
|
||||
## How do I change secret generation length?
|
||||
|
||||
It is possible to tell `abra` which length it should generate secrets with from your recipe config.
|
||||
@@ -620,6 +603,13 @@ of passwords which admins have to type out in database shells.
|
||||
|
||||
## How do I change secret generation characters?
|
||||
|
||||
!!! warning "Watch out for old versions of `abra` 🚧"
|
||||
|
||||
This feature is only available in the >= 0.10.x series of `abra`.
|
||||
The generation of `hex` secrets is only available in the >= 0.12.x series of `abra`.
|
||||
The generation of `bytes` secrets is only available in the >= 0.13.x series of `abra`.
|
||||
|
||||
|
||||
It is also possible to tell `abra` which characters it should use to generate secrets with from your recipe config.
|
||||
|
||||
You do this by adding an additional modifier in the inline comment on the secret definition in the `.env.sample` / `.env` file.
|
||||
@@ -640,10 +630,52 @@ The possible Values are:
|
||||
| `default,special` | `abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789!@#$%^&*_-+=` | Uses uppercase letters, lowercase letters and numbers and special characters |
|
||||
| `default,safespecial` | `abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789!@#%^&*_-+=` | Uses uppercase letters, lowercase letters and numbers and console safe special characters |
|
||||
| `default` | `abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789` | Uses uppercase letters, lowercase letters and numbers |
|
||||
| `hex` | `0123456789abcdef` | Uses only hexadecimal characters (0-9, a-f) |
|
||||
| `bytes` | N/A (generates random bytes) | Generates random bytes instead of character-based passwords (requires `length` modifier, automatically uses `encoding=base64`) |
|
||||
| any other value or not setting one will be treated as `default` | `abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ23456789` | Uses uppercase letters, lowercase letters and numbers |
|
||||
|
||||
The setting does only apply when you also set a length modifier to the secret (documented [here](/maintainers/handbook/#how-do-i-change-secret-generation-length)), so it is not applicable for the "easy to remember word" style generator that used when you don't set a length.
|
||||
|
||||
## How do I encode generated secrets?
|
||||
|
||||
!!! warning "Watch out for old versions of `abra` 🚧"
|
||||
|
||||
This feature is only available in the >= 0.13.x series of `abra`.
|
||||
|
||||
You can tell `abra` to encode generated secrets using the `encoding` modifier in the inline comment on the secret definition in the `.env.sample` / `.env` file.
|
||||
|
||||
Here is an example:
|
||||
|
||||
```bash
|
||||
SECRET_API_KEY_VERSION=v1 # length=32 encoding=base64
|
||||
```
|
||||
|
||||
This will generate a 32-character secret and then base64-encode it before storing.
|
||||
|
||||
Currently supported encoding options:
|
||||
|
||||
- `base64`: Base64-encodes the generated secret value
|
||||
|
||||
**Note:** When using `charset=bytes`, the encoding automatically defaults to `base64` even if not explicitly specified, as raw binary data needs to be encoded for safe storage.
|
||||
|
||||
## How do I add a prefix to generated secrets?
|
||||
|
||||
!!! warning "Watch out for old versions of `abra` 🚧"
|
||||
|
||||
This feature is only available in the >= 0.13.x series of `abra`.
|
||||
|
||||
You can tell `abra` to add a prefix to generated secrets using the `prefix` modifier in the inline comment on the secret definition in the `.env.sample` / `.env` file.
|
||||
|
||||
Here is an example:
|
||||
|
||||
```bash
|
||||
SECRET_APP_KEY_VERSION=v1 # length=32 charset=bytes prefix=base64:
|
||||
```
|
||||
|
||||
This will generate a 32-byte random key, base64-encode it, and prefix it with `base64:`. This is useful for applications like Laravel that expect secrets in a specific format.
|
||||
|
||||
The prefix is applied after any encoding transformations.
|
||||
|
||||
## How do I configure backup/restore?
|
||||
|
||||
From the perspective of the recipe maintainer, backup/restore is just more
|
||||
|
||||
+2
-1
@@ -96,7 +96,6 @@ nav:
|
||||
- federation/resolutions/index.md
|
||||
- "Draft":
|
||||
- federation/resolutions/index.md
|
||||
- federation/resolutions/draft/035.md
|
||||
- "Passed":
|
||||
- federation/resolutions/passed/001.md
|
||||
- federation/resolutions/passed/002.md
|
||||
@@ -136,6 +135,8 @@ nav:
|
||||
- federation/resolutions/stalled/030.md
|
||||
- "In Progress":
|
||||
- federation/resolutions/index.md
|
||||
- federation/resolutions/in-progress/035.md
|
||||
- federation/resolutions/in-progress/037.md
|
||||
- "Minutes":
|
||||
- federation/minutes/index.md
|
||||
- "Recently":
|
||||
|
||||
Reference in New Issue
Block a user