From 839ce6f2790940d6014277187ceb3c67a17874c8 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 15:40:46 +0100 Subject: [PATCH 01/74] fix: links, wording --- docs/index.md | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/docs/index.md b/docs/index.md index 200723d..1f29000 100644 --- a/docs/index.md +++ b/docs/index.md @@ -4,9 +4,11 @@ title: Introduction ## Who is this for? -Welcome to the Co-op Cloud documentation πŸ₯³ +Welcome to the Co-op Cloud documentation πŸ‘‹ -The documentation is aimed at a technical audience: tech co-ops, collectives and individuals who are curious about Co-op Cloud or are already running and managing Co-op Cloud deployments. +In the spirit of transparency and to avoid confusion, we would like to begin with the explanation that this documentation is aimed at a **technical audience**. + +We have written this with the following groups in mind: tech co-ops, collectives and individuals who have familiarity with system administration and libre software communities and are curious about Co-op Cloud or are already running and managing Co-op Cloud deployments. A more general public may still find these pages useful but if you're just looking for a quick overview of the project from a less technical perspective, you can take a look at [coopcloud.tech](https://coopcloud.tech). @@ -16,18 +18,18 @@ We'd be happy to hear feedback about our documentation, if it was helpful, what !!! danger "Here be dragons" - This project is still [beta quality software](https://en.wikipedia.org/wiki/Software_release_life_cycle#Beta) :bomb: Please take that into consideration if you are thinking about using this system in production. We're working hard to make Co-op Cloud stable. In the meantime, this is a good time to help us out with initial testing, feedback, ideas or [join in with development](/get-involved/). + This project is still [beta quality software](https://en.wikipedia.org/wiki/Software_release_life_cycle#Beta) :bomb: Please take that into consideration if you are thinking about using this system in production. We're working hard to make Co-op Cloud stable. In the meantime, this is a good time to help us out with initial testing, feedback, ideas or [join in with development](/intro/get-involved/). - [Operators guide](/operators/): You run a Co-op Cloud based deployment or want to do so :computer: - [Maintainers guide](/maintainers/): You maintain recipes and ensure things run smoothly for operators :tools: -- [Organisers guide](/organisers): You run meetings, write guidelines & shape our democratic process :fist: +- [Organisers guide](/federation/organisers): You run meetings, write guidelines & shape our democratic process :fist: - [Recipes](/abra/recipes/): You want to know what recipes are packaged so you can deploy them as apps :nerd: - [Abra](/abra): You want to install the command-line client and hack the planet :unicorn: -- [Get involved](/get-involved): You'd like to help out with the project, we've love to see you stick around :heart: +- [Get involved](/intro/get-involved): You'd like to help out with the project, we've love to see you stick around :heart: -- [Glossary](/glossary/): You'd like clarification about project terminology :book: +- [Glossary](/intro/glossary/): You'd like clarification about project terminology :book: From b69dbd89bb223198cabc2ff96c1bd0cfd59808ee Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 16:25:00 +0100 Subject: [PATCH 02/74] see you on barricades --- docs/intro/strategy.md | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/docs/intro/strategy.md b/docs/intro/strategy.md index 4172d37..be0f63c 100644 --- a/docs/intro/strategy.md +++ b/docs/intro/strategy.md @@ -6,17 +6,25 @@ From our experiences working and organising as Autonomic, the tech co-op who [in ## Technological Saviors? -The urgency for providing an alternative comes out of the understanding that the concentration of our digital lives within the private sphere of corporate providers (e.g. [GAFAM](https://degooglisons-internet.org/en/)) represents a loss of freedom due to the threat to our privacy and self-determination through surveillance and monopolisation. +The urgency to build an alternative is based on an analysis of our current reality. -As a movement, we cannot compete with corporate providers in terms of cost and scale. Their network effects and available capital means that no one project, product or organisation can create the required shift to a more widespread public interest technology. +The monopolisation of our digital lives, the stranglehold of corporate control (aka [GAFAM](https://degooglisons-internet.org/en/)), represents a grave threat to our collective freedom, our societies and our hopes for a good life on planet earth. -> Technology alone will not save us +We must however acknowledge their vast accumulation of network effects and resources. We must acknowledge that no single project, product or organisation can create the required shift to a more widespread public interest technology. + +> Technology alone will not save us. > > Simply deploying libre software is not enough. -Our strategy is to mutualise our resources to facilitate this shift. _Co-op Cloud_ is an attempt to create a new shared resource - an open and democratically managed, open standards based, copyleft licensed, libre software infrastructure project. +Our strategy is to mutualise our resources to facilitate this shift. -From this base, we can focus on the urgent and necessary social organising work that goes beyond the technical question. +We can say that _Co-op Cloud_ is a libre software infrastructure project. It is based on open standards, is copyleft licensed and is open and democratically managed. + +We can also say that _Co-op Cloud_ is a social movement of hosters, hackers, technologists and their allies who defend a vision of collective self-management. + +We are committed to an organisational form which allows us to accumulate knowledge, solidarity, experience and resources. We claim a rich history of grassroots social resistance, direct action and collective liberation. + +We propose to go beyond a reductive technological vision of social change. ## The Moving Parts From bd9930fb46691a2c3e7fb67424f53ce208625884 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 16:35:53 +0100 Subject: [PATCH 03/74] docs: wording --- docs/abra/hack.md | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/docs/abra/hack.md b/docs/abra/hack.md index bd67922..b91d0a5 100644 --- a/docs/abra/hack.md +++ b/docs/abra/hack.md @@ -4,16 +4,9 @@ title: Hack ## Contributing -Welcome to Hacking the Planet with `abra`! We're looking forward to see what -you come up. If you have any questions, don't hesitate to ask πŸ’– If any of your -changes seems a bit controversial, it's probably to come have a chat first to -avoid heartache. +Welcome to Hacking the Planet with `abra`! We're looking forward to see what you come up. If you have any questions, don't hesitate to ask πŸ’– However, please keep in mind that if any of your changes seems a bit controversial, it's probably best to come have a chat first to avoid heartache. -In general, we're into the idea of "Optimistic Merging" (instead of -"Pessimistic Merging" based on our understanding of -[C4](https://hintjens.gitbooks.io/social-architecture/content/chapter4.html) -(described further down under "Development Process" and also [in this blog -post](http://hintjens.com/blog:106)). +In general, we're into the idea of "Optimistic Merging" (instead of "Pessimistic Merging" based on our understanding of [C4](https://hintjens.gitbooks.io/social-architecture/content/chapter4.html) (described further down under "Development Process" and also [in this blog post](http://hintjens.com/blog:106)). ## Quick start From 3c580c6a195249a843dc809096a9006f4eb6804d Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 16:40:35 +0100 Subject: [PATCH 04/74] fix: links --- docs/intro/get-involved.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/intro/get-involved.md b/docs/intro/get-involved.md index 18dcf62..7d6c9cb 100644 --- a/docs/intro/get-involved.md +++ b/docs/intro/get-involved.md @@ -4,19 +4,19 @@ title: Get Involved ## Overview -> :trumpet: **You don't have to be a programmer to contribute to this project!** :trumpet: +> πŸ“’ **You don't have to be a programmer to contribute to this project** πŸ“’ -Firstly, come say hello in our [chat room](/intro/contact/) if you'd like to help out or are interested to learn how :wave: +Firstly, come say hello in our [chat room](/intro/contact/) if you'd like to help out or are interested to learn how πŸ‘‹ We are happy to have designers, critical thinkers, artists, hackers, documenters, etc. involved in this project! There is a lot of work to do, if you find this project interesting, we want to have you working with us. There are a number of "roles" such as "operator", "maintainer", "organiser" which we've tried to come up with to make it more clear how you can relate to the project and how you can find ways to be involved which suit your interests. If you don't fit one of these roles, that is fine. -We have [an irregular online check-in](/organisers/handbook/#kite-flying-hours) for contributors of this project to let each other know what we're working on, how much time we've spent on it and how to coordinate further work. +We have [an irregular online check-in](/federation/organisers/#kite-flying-hours) for contributors of this project to let each other know what we're working on, how much time we've spent on it and how to coordinate further work. We have a [status page](/intro/bikemap) showing what we are aiming to achieve in the near future. That gives a good overview of where we're going together. -We use [issue trackers](https://git.coopcloud.tech/coop-cloud/organising/issues) and [project boards](https://git.coopcloud.tech/coop-cloud/organising/projects) to keep track of what we're working on right now. We collectively review these, to keep track of our time spent vs. budget available. +We use [issue trackers](https://git.coopcloud.tech/coop-cloud/organising/issues) and [project boards](https://git.coopcloud.tech/toolshed/projects) to keep track of what we're working on right now. We collectively review these, to keep track of our time spent vs. budget available. ## Compensation From 70ca00d2f4c5c34a43f434c72ce3fc14faf1b3af Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 16:41:26 +0100 Subject: [PATCH 05/74] fix: link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d831906..74ba848 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # docs.coopcloud.tech :open_book: -[![Build Status](https://build.coopcloud.tech/api/badges/coop-cloud/docs.coopcloud.tech/status.svg)](https://build.coopcloud.tech/coop-cloud/docs.coopcloud.tech) +[![Build Status](https://build.coopcloud.tech/api/badges/toolshed/docs.coopcloud.tech/status.svg)](https://build.coopcloud.tech/toolshed/docs.coopcloud.tech) View: [docs.coopcloud.tech](https://docs.coopcloud.tech) From 5235b796e4fd4dff7c3ca952979af8631d264e7a Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 16:48:38 +0100 Subject: [PATCH 06/74] fix: link --- docs/abra/recipes.md | 2 +- docs/maintainers/tutorial.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/abra/recipes.md b/docs/abra/recipes.md index 38731fd..16610c5 100644 --- a/docs/abra/recipes.md +++ b/docs/abra/recipes.md @@ -2,7 +2,7 @@ title: Recipes --- -_Recipes_ are what we call the configuration file used to deploy apps with our `abra` CLI tool. A longer explanation is in the [glossary](/glossary#recipe). Our _Catalogue_ is a web interface for exploring the currently available configurations, therefore which apps can be deployed. +_Recipes_ are what we call the configuration file used to deploy apps with our `abra` CLI tool. A longer explanation is in the [glossary](/intro/glossary#recipe). Our _Catalogue_ is a web interface for exploring the currently available configurations, therefore which apps can be deployed. ### Catalogue diff --git a/docs/maintainers/tutorial.md b/docs/maintainers/tutorial.md index 2dd7693..8076f96 100644 --- a/docs/maintainers/tutorial.md +++ b/docs/maintainers/tutorial.md @@ -10,7 +10,7 @@ Packaging a recipe is basically knowing a bag of about 20 tricks. Once you learn The nice thing about packaging is that only one person has to do it and then we all benefit. We've seen that over time, the core of the configuration doesn't really change. New options and versions might come but the config remains quite stable. This is good since it means that your packaging work stays relevant and useful for other maintainers & operators as time goes on. -Depending on your familiarity with recipes, it might be worth reading [how a recipe is structured](/maintainers/handbook/#how-is-a-recipe-structured) and making clear you understand [what a recipe is](/glossary/#recipe) before continuing. +Depending on your familiarity with recipes, it might be worth reading [how a recipe is structured](/maintainers/handbook/#how-is-a-recipe-structured) and making clear you understand [what a recipe is](/intro/glossary/#recipe) before continuing. ### Making a plan From 8ee454a6c28298043e219306c2670d165407ae1c Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 16:50:34 +0100 Subject: [PATCH 07/74] chore: update mkdocs-awesome-pages-plugin --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index d6689a8..4436e89 100644 --- a/requirements.txt +++ b/requirements.txt @@ -3,7 +3,7 @@ markdown~=3.2 mkdocs~=1.5.3 mkdocs-material~=9.5.7 mkdocs-material-extensions~=1.3.1 -mkdocs-awesome-pages-plugin==2.9.2 +mkdocs-awesome-pages-plugin==2.10.1 pygments~=2.16 pymdown-extensions~=10.2 mkdocs-redirects==1.2.2 From 1e481840da5635df481814950947cb15a16bb528 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 16:53:50 +0100 Subject: [PATCH 08/74] chore: pip-upgrade --- requirements.txt | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/requirements.txt b/requirements.txt index 4436e89..13fdf5b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,16 +1,15 @@ -markdown~=3.2 - mkdocs~=1.5.3 -mkdocs-material~=9.5.7 -mkdocs-material-extensions~=1.3.1 + +mkdocs-material==9.5.49 +mkdocs-material-extensions==1.3.1 mkdocs-awesome-pages-plugin==2.10.1 -pygments~=2.16 -pymdown-extensions~=10.2 +pygments==2.19.1 +pymdown-extensions==10.14 mkdocs-redirects==1.2.2 # Requirements for plugins -babel~=2.10 -colorama~=0.4 -paginate~=0.5 +babel==2.16.0 +colorama==0.4.6 +paginate==0.5.7 regex>=2022.4 -requests~=2.26 +requests==2.32.3 From 307ddf104a2c2295e080b2472ffbb02cefc71670 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 16:59:45 +0100 Subject: [PATCH 09/74] feat: new plugins --- mkdocs.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mkdocs.yml b/mkdocs.yml index f63ec5d..bbd66d2 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -11,11 +11,13 @@ theme: - navigation.expand - navigation.indexes - navigation.instant + navigation.instant.progress - navigation.path - navigation.sections - navigation.tabs - navigation.tabs.sticky - navigation.tracking + - navigation.top palette: primary: light pink accent: purple From 18c77fbd00e2ff11563cfabbc2c6ef205cf5d041 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 16:59:51 +0100 Subject: [PATCH 10/74] fix: year --- mkdocs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mkdocs.yml b/mkdocs.yml index bbd66d2..2f16ce6 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -25,7 +25,7 @@ theme: favicon: img/favicon.ico custom_dir: custom_theme/ -copyright: Copyleft 2020-2024 Co-op Cloud +copyright: Copyleft 2020-2025 Co-op Cloud markdown_extensions: - admonition From 7db77d31992e5291a3608c165e2bb172311e3a5c Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 17:00:06 +0100 Subject: [PATCH 11/74] chore: sort --- mkdocs.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mkdocs.yml b/mkdocs.yml index 2f16ce6..19a1746 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -7,17 +7,17 @@ use_directory_urls: true theme: name: material features: + navigation.instant.progress - content.action.edit - navigation.expand - navigation.indexes - navigation.instant - navigation.instant.progress - navigation.path - navigation.sections - navigation.tabs - navigation.tabs.sticky - - navigation.tracking - navigation.top + - navigation.tracking palette: primary: light pink accent: purple From 833317d67c6a7c7c6eabfff6418bb7b521ba627a Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 17:03:38 +0100 Subject: [PATCH 12/74] fix: image --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 45ab3ea..c2e4b9c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM squidfunk/mkdocs-material:9.5.7 +FROM squidfunk/mkdocs-material:9.5.49 EXPOSE 8000 From 82ae5d044d48aa3094992a178f180a2cc90f0c36 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 17:04:48 +0100 Subject: [PATCH 13/74] fix: deps (mkdocs-material 9.5.49 depends on mkdocs~=1.6) --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 13fdf5b..cff75e6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,4 @@ -mkdocs~=1.5.3 +mkdocs~=1.6.1 mkdocs-material==9.5.49 mkdocs-material-extensions==1.3.1 From e3a178e5fcc16043a0d62b70aacb74474f6eac57 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 17:09:25 +0100 Subject: [PATCH 14/74] docs: wording --- docs/intro/strategy.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/intro/strategy.md b/docs/intro/strategy.md index be0f63c..4c006a2 100644 --- a/docs/intro/strategy.md +++ b/docs/intro/strategy.md @@ -10,7 +10,7 @@ The urgency to build an alternative is based on an analysis of our current reali The monopolisation of our digital lives, the stranglehold of corporate control (aka [GAFAM](https://degooglisons-internet.org/en/)), represents a grave threat to our collective freedom, our societies and our hopes for a good life on planet earth. -We must however acknowledge their vast accumulation of network effects and resources. We must acknowledge that no single project, product or organisation can create the required shift to a more widespread public interest technology. +We begin with an acknowledgment of their vast accumulation of network effects and resources. We also acknowledge that no single project, product or organisation can create the required shift to a more widespread public interest technology. > Technology alone will not save us. > From 4869031a10b56018ce00311b66b8740ec33d48d6 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 18:30:28 +0100 Subject: [PATCH 15/74] docs: moar info on perms, formatting --- docs/abra/hack.md | 57 ++++++++++++++++++++--------------------------- 1 file changed, 24 insertions(+), 33 deletions(-) diff --git a/docs/abra/hack.md b/docs/abra/hack.md index b91d0a5..83de592 100644 --- a/docs/abra/hack.md +++ b/docs/abra/hack.md @@ -8,6 +8,17 @@ Welcome to Hacking the Planet with `abra`! We're looking forward to see what you In general, we're into the idea of "Optimistic Merging" (instead of "Pessimistic Merging" based on our understanding of [C4](https://hintjens.gitbooks.io/social-architecture/content/chapter4.html) (described further down under "Development Process" and also [in this blog post](http://hintjens.com/blog:106)). +In other words, we're happy to give you, as contributor, "the commit bit" (read/write permissions on the Git repositories) more or less as soon as you start to submit changes, write recipes, organise or in general, help out in the project. You don't have to prove anything, we can work and learn together! Mistakes are allowed and there are no "stupid questions". + +We maintain a "team" called "Co-operators" on our 2 main repositories: + +* [Toolshed](https://git.coopcloud.tech/org/toolshed/) +* [the recipes](https://git.coopcloud.tech/org/coop-cloud/) + +This gives you read/write access to all the repositories of the organisation. + +Any existing contributor can add you. + ## Quick start Get a fresh copy of the `abra` source code from [here](https://git.coopcloud.tech/toolshed/abra). @@ -21,7 +32,7 @@ Install [Go >= 1.16](https://golang.org/doc/install) and then: - `make test` will run tests - `make install-abra` will install abra to `$GOPATH/bin` - `make install-kadabra` will install kadabra to `$GOPATH/bin` -- `go get ` and `go mod tidy` to add a new dependency +- `go get `, `go mod tidy` and `go mod vendor` to add a new dependency 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. @@ -49,17 +60,13 @@ go test ./pkg/recipe -v -run TestGetVersionLabelLocalDoesNotUseTimeoutLabel ### Running on the CI server -Based on -[R020](https://docs.coopcloud.tech/federation/resolutions/passed/020/), we have -automated running the integration test suite. Here's the TLDR; +Based on [R020](https://docs.coopcloud.tech/federation/resolutions/passed/020/), we have 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 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/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. +What follows is a listing of how this was achieved so that we can collectivise the maintenance. On the server, we have: @@ -82,17 +89,13 @@ Please ask `@decentral1se` or on the Matrix channels for SSH access to the machi #### Install dependencies -We use [`bats`](https://bats-core.readthedocs.io/en/stable/) to run the tests. -You can install the required dependencies with the following. You also need a -working installation of Docker and Go >= 1.16 (not covered in this section). +We use [`bats`](https://bats-core.readthedocs.io/en/stable/) to run the tests. You can install the required dependencies with the following. You also need a working installation of Docker and Go >= 1.16 (not covered in this section). ``` apt install bats-file bats-assert bats-support jq make git ``` -Unfortunately, the latest `bats` version in Debian stable does not have the -"filter tests by tags" feature, which is very handy for running a subset of the -tests. For this, we need to install `bats` from source. It's easy. +Unfortunately, the latest `bats` version in Debian stable does not have the "filter tests by tags" feature, which is very handy for running a subset of the tests. For this, we need to install `bats` from source. It's easy. ``` apt purge -y bats @@ -103,10 +106,7 @@ sudo ./install.sh /usr/local #### Setup Test Server -For some tests an actual server is needed, where apps can be deployed. You can -either use a local one or a remote test server. There is also a way to run or -skip tests that require a remote server. This is covered below in the -[filtering tests](#filter-tests_1) section. +For some tests an actual server is needed, where apps can be deployed. You can either use a local one or a remote test server. There is also a way to run or skip tests that require a remote server. This is covered below in the [filtering tests](#filter-tests_1) section. ##### Remote swarm @@ -115,9 +115,7 @@ export ABRA_TEST_DOMAIN="test.example.com" export ABRA_DIR="$HOME/.abra_test" ``` -`ABRA_TEST_DOMAIN` should also have a DNS A record for `*.test.example.com` -which points to the same server so that the test suite can deploy apps freely. -The test suite does not deploy Traefik for you. +`ABRA_TEST_DOMAIN` should also have a DNS A record for `*.test.example.com` which points to the same server so that the test suite can deploy apps freely. The test suite does not deploy Traefik for you. ##### Local swarm @@ -146,13 +144,12 @@ bats -Tp tests/integration Or you can run a single test file: ``` -bats -Tp tests/integration/autocomplete.bats +bats -Tp tests/integration/app_check.bats ``` ### Tagging tests -When a test actually deploys something, we tag it as "slow". When the test -requires public DNS, we use "dns". There may be more tags we write more tests. +When a test actually deploys something, we tag it as "slow". When the test requires public DNS, we use "dns". There may be more tags we write more tests. ``` # bats test_tags=slow,dns @@ -161,18 +158,14 @@ requires public DNS, we use "dns". There may be more tags we write more tests. } ``` -Then we can use [filters](#filter-tests) (see below) to pick out a subset of -tests which do/do not use a live server. Feel free to come up with your own -tags. See the `bats-core` -[docs](https://bats-core.readthedocs.io/en/stable/writing-tests.html#tagging-tests) -for more. +Then we can use [filters](#filter-tests) (see below) to pick out a subset of tests which do/do not use a live server. Feel free to come up with your own tags. See the `bats-core` [docs](https://bats-core.readthedocs.io/en/stable/writing-tests.html#tagging-tests) for more. ### Filter tests You can run a specific file. ``` -bats -Tp tests/integration/autocomplete.bats +bats -Tp tests/integration/app_check.bats ``` For example, if you want to check that all `abra recipe ...` tests remain working. @@ -205,9 +198,7 @@ bats -Tp tests/integration --filter-status failed # re-run only failed ### Debug tests -If you're running into issues and want to debug stuff, you can pass `-x` to -`bats` to trace all commands run in the test. You can add `echo '...' >&3` -debug statements to your test to output stuff also. +If you're running into issues and want to debug stuff, you can pass `-x` to `bats` to trace all commands run in the test. You can add `echo '...' >&3` debug statements to your test to output stuff also. ## Using the `abra` public API From 5f8633432dbf11155bd8586eb9ae2ffbe7124fc4 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 18:32:26 +0100 Subject: [PATCH 16/74] fix: link --- docs/abra/hack.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/abra/hack.md b/docs/abra/hack.md index 83de592..8b0d4ec 100644 --- a/docs/abra/hack.md +++ b/docs/abra/hack.md @@ -12,8 +12,8 @@ In other words, we're happy to give you, as contributor, "the commit bit" (read/ We maintain a "team" called "Co-operators" on our 2 main repositories: -* [Toolshed](https://git.coopcloud.tech/org/toolshed/) -* [the recipes](https://git.coopcloud.tech/org/coop-cloud/) +* [`git.coopcloud.tech/org/toolshed`](https://git.coopcloud.tech/org/toolshed/) +* [`git.coopcloud.tech/org/coop-cloud`](https://git.coopcloud.tech/org/coop-cloud/) This gives you read/write access to all the repositories of the organisation. From 1a4186210ad4c6ca6a882b4ae3043291d86e751f Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 18:36:18 +0100 Subject: [PATCH 17/74] docs: wording --- docs/intro/strategy.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/intro/strategy.md b/docs/intro/strategy.md index 4c006a2..0b2624e 100644 --- a/docs/intro/strategy.md +++ b/docs/intro/strategy.md @@ -32,9 +32,9 @@ _Co-op Cloud_ is made up of a few simple, composable pieces. The system does not ``` mermaid graph LR - A[Libre Software\n Apps] --> B{Recipe Packaging}; - B --> C[CLI Tool]; - C --> D[Container\n Orchestrator]; + A[Libre software apps] --> B{Recipe packaging}; + B --> C[Command-line tool]; + C --> D[Container orchestrator]; ``` Once you [grok](https://en.wikipedia.org/wiki/Grok) this, you grok the moving parts of the entire project. You can then move on to [deploying your first app](/operators/tutorial/#deploy-your-first-app). From d3e78c5fb4a1bf0ecafc1170a637bde25f4f8f71 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 10 Jan 2025 18:41:00 +0100 Subject: [PATCH 18/74] docs: more compact overview --- docs/operators/handbook.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/docs/operators/handbook.md b/docs/operators/handbook.md index 4648542..2cdd0af 100644 --- a/docs/operators/handbook.md +++ b/docs/operators/handbook.md @@ -336,13 +336,15 @@ cheetsheet](/abra/cheat-sheet/#manually-restoring-app-data). MySQL / MariaDB: ``` -abra app run foo.bar.com db mysqldump -u root | gzip > ~/.abra/backups/foo.bar.com_db_`date +%F`.sql.gz +abra app run foo.bar.com db mysqldump -u root \ + | gzip > ~/.abra/backups/foo.bar.com_db_`date +%F`.sql.gz ``` Postgres: ``` -abra app run foo.bar.com db pg_dump -u root | gzip > ~/.abra/backups/foo.bar.com_db_`date +%F`.sql.gz +abra app run foo.bar.com db pg_dump -u root | \ + gzip > ~/.abra/backups/foo.bar.com_db_`date +%F`.sql.gz ``` If you get errors about database access: @@ -351,7 +353,8 @@ If you get errors about database access: something like this: ``` -abra app run foo.bar.com db bash -c 'mysqldump -u root -p"$(cat /run/secrets/db_oot_password)" ' | gzip > ~/.abra/backups/foo.bar.com_db_`date +%F`.sql.gz +abra app run foo.bar.com db \ + bash -c 'mysqldump -u root -p"$(cat /run/secrets/db_oot_password)" ' | gzip > ~/.abra/backups/foo.bar.com_db_`date +%F`.sql.gz ``` ## Can I deploy a recipe without `abra`? From 2bc61ebb36fc5dfb141c0f26e57cbfb31aa63589 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sat, 11 Jan 2025 19:38:55 +0100 Subject: [PATCH 19/74] fix: link --- docs/abra/upgrade.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/abra/upgrade.md b/docs/abra/upgrade.md index de24b38..55943d5 100644 --- a/docs/abra/upgrade.md +++ b/docs/abra/upgrade.md @@ -60,8 +60,7 @@ And test things work. * `abra` will now write the app deployment version to the app env file (`$ABRA_DIR/servers//.env`) against the `TYPE=/RECIPE=` env var. This has a number of implications which are detailed in the [release - announcement - post](https://pad.local-it.org/G1TOcidEQtyArJU9gI0SDw?both#New-abra-release-candidate). + announcement post](https://coopcloud.tech/blog/new-year-status-update-25/). The current `v0.9.x` series of `abra` will not be able to parse this version. So, if you're testing the release candidate, you might to clean up your `.env` files afterwards. From 3cb36b891bddf73f432c6237a8ba2e24875bf281 Mon Sep 17 00:00:00 2001 From: simon Date: Tue, 14 Jan 2025 10:13:47 +0000 Subject: [PATCH 20/74] updated info on local-it and (new) makeITsocial --- docs/intro/managed.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/intro/managed.md b/docs/intro/managed.md index 87e21b7..acc36db 100644 --- a/docs/intro/managed.md +++ b/docs/intro/managed.md @@ -9,5 +9,6 @@ title: Managed hosting The Co-op Cloud is still [beta quality software](https://en.wikipedia.org/wiki/Software_release_life_cycle#Beta) :bomb: but you can still work with a tech co-op or collective to host some part or all of your online digital services with it. Organisations who want to support the project can get in touch with Co-op Cloud service providers via the following list for a quote on what they're looking for and how much it will cost. Service providers can then factor in some percentage of the cost to co-fund the development of this project. - [Autonomic Co-op](https://autonomic.zone) (contact: [`helo@autonomic.zone`](mailto:boop@autonomic.zone)) -- [Local-IT](https://local-it.org/) (contact [`info@local-it.org`](mailto:info@local-it.org)) +- [makeITsocial](https://makeitsocial.net) (managed hosting, see [price calculator](https://makeitsocial.net/kolli-cloud/)) +- [Local-IT](https://local-it.org/) ([selfhosting](https://wiki.local-it.org/s/kollicloud-wiki/doc/selfhosting-guide-1xZJt8UIha) & cooperative hosting, contact: [`info@local-it.org`](mailto:info@local-it.org)) - [Solisoft](https://solisoft.top) (contact [`contact@solisoft.top`](mailto:contact@solisoft.top)) From e14c4e6f099cbac79733fbf7a6bed80e92f29eb4 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Fri, 17 Jan 2025 19:30:51 +0100 Subject: [PATCH 21/74] another pass --- docs/intro/strategy.md | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/docs/intro/strategy.md b/docs/intro/strategy.md index 0b2624e..29a19ee 100644 --- a/docs/intro/strategy.md +++ b/docs/intro/strategy.md @@ -6,23 +6,21 @@ From our experiences working and organising as Autonomic, the tech co-op who [in ## Technological Saviors? -The urgency to build an alternative is based on an analysis of our current reality. +The urgency to build an alternative is based on a shared analysis of our current reality. We briefly summarise the main points below. -The monopolisation of our digital lives, the stranglehold of corporate control (aka [GAFAM](https://degooglisons-internet.org/en/)), represents a grave threat to our collective freedom, our societies and our hopes for a good life on planet earth. +We begin with the monopolisation of our digital lives, the stranglehold of corporate control (aka [GAFAM](https://degooglisons-internet.org/en/)), which represents a grave threat to our collective freedom, our societies and our hopes for a good life on planet earth. -We begin with an acknowledgment of their vast accumulation of network effects and resources. We also acknowledge that no single project, product or organisation can create the required shift to a more widespread public interest technology. +We acknowledge the vast accumulation of network effects and resources accrued by these monopolies. This is the basis of our understanding that no single project, "product" or organisation can create the required shift to a more widespread public interest technology. -> Technology alone will not save us. -> -> Simply deploying libre software is not enough. +When we say public interest technology, we mean a technology which is not built in the service of monopoly. We are speaking of a technology which emerges from elements of democracy: bottom-up decision making, social need, community ownership and ecological thinking. Our aspiration is a technology which is built in the service of social justice, equality and collective freedom. -Our strategy is to mutualise our resources to facilitate this shift. +Our strategy is to mutualise our resources to facilitate this shift. We harbour no illusions: technology alone will not "save us" and simply deploying libre software is not enough. We do not operate in a bubble and do not wish to remain contained within subculture. We aim to re-connect with society. We can say that _Co-op Cloud_ is a libre software infrastructure project. It is based on open standards, is copyleft licensed and is open and democratically managed. We can also say that _Co-op Cloud_ is a social movement of hosters, hackers, technologists and their allies who defend a vision of collective self-management. -We are committed to an organisational form which allows us to accumulate knowledge, solidarity, experience and resources. We claim a rich history of grassroots social resistance, direct action and collective liberation. +We are committed to an organisational form which allows us to accumulate knowledge, solidarity, experience and resources. We claim a rich history of grassroots social resistance, direct action and struggle for collective liberation. We propose to go beyond a reductive technological vision of social change. From d4c12a54d99aa9ecbf07e617e7fd4ed98d41102a Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sat, 18 Jan 2025 10:38:41 +0100 Subject: [PATCH 22/74] sharper perhaps --- docs/intro/strategy.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/intro/strategy.md b/docs/intro/strategy.md index 29a19ee..4afec4d 100644 --- a/docs/intro/strategy.md +++ b/docs/intro/strategy.md @@ -14,7 +14,7 @@ We acknowledge the vast accumulation of network effects and resources accrued by When we say public interest technology, we mean a technology which is not built in the service of monopoly. We are speaking of a technology which emerges from elements of democracy: bottom-up decision making, social need, community ownership and ecological thinking. Our aspiration is a technology which is built in the service of social justice, equality and collective freedom. -Our strategy is to mutualise our resources to facilitate this shift. We harbour no illusions: technology alone will not "save us" and simply deploying libre software is not enough. We do not operate in a bubble and do not wish to remain contained within subculture. We aim to re-connect with society. +Our strategy is to mutualise our resources to facilitate this shift. We harbour no illusions: technology alone will not "save us" and simply deploying libre software is not enough. We do not operate in a bubble and do not wish to remain contained within a subculture. We can say that _Co-op Cloud_ is a libre software infrastructure project. It is based on open standards, is copyleft licensed and is open and democratically managed. From d884d690b261a94cead958e133e1feba4456492f Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sat, 18 Jan 2025 11:36:57 +0100 Subject: [PATCH 23/74] docs: R027 --- .../federation/resolutions/in-progress/027.md | 25 +++++++++++++++++++ mkdocs.yml | 1 + 2 files changed, 26 insertions(+) create mode 100644 docs/federation/resolutions/in-progress/027.md diff --git a/docs/federation/resolutions/in-progress/027.md b/docs/federation/resolutions/in-progress/027.md new file mode 100644 index 0000000..9990e33 --- /dev/null +++ b/docs/federation/resolutions/in-progress/027.md @@ -0,0 +1,25 @@ +--- +title: "Resolution 027" +--- + +- Topic: MIR joins the Co-op Cloud Federation +- Date: 18-01-25 +- Deadline: 31-01-25 +- Size: Large + +### Summary + +[MIR](https://mirnet.org) would like to the join the Co-op Cloud Federation. +Several members of the project are involved in hacking recipes, there has been +personal contact via a call with `@decentral1se` (also several federation +members have expressed enthusiasm for them joining) and they have ambitions to +co-develop Co-op Cloud. + +### Details + +MIR can contribute fees at this time: + +> @marlon0: We'll contribute $100/mo for at least the next year, and then +> re-evaluate depending on budget. + +`@decentral1se` is happy to vouch πŸ’– diff --git a/mkdocs.yml b/mkdocs.yml index 19a1746..885d5be 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -121,6 +121,7 @@ nav: - "In Progress": - federation/resolutions/in-progress/025.md - federation/resolutions/in-progress/026.md + - federation/resolutions/in-progress/027.md - "Minutes": - federation/minutes/index.md - "Recently": From 4aaa997695c8ee2b83a4526398223a6ad78590ec Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sat, 18 Jan 2025 22:36:59 +0100 Subject: [PATCH 24/74] fix: didnt ask permission --- docs/federation/resolutions/in-progress/027.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/docs/federation/resolutions/in-progress/027.md b/docs/federation/resolutions/in-progress/027.md index 9990e33..f800acf 100644 --- a/docs/federation/resolutions/in-progress/027.md +++ b/docs/federation/resolutions/in-progress/027.md @@ -19,7 +19,4 @@ co-develop Co-op Cloud. MIR can contribute fees at this time: -> @marlon0: We'll contribute $100/mo for at least the next year, and then -> re-evaluate depending on budget. - `@decentral1se` is happy to vouch πŸ’– From cf8f1502ce0b0550aa1fdff5fe8b8cd3ede95aec Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Sat, 18 Jan 2025 18:54:53 -0500 Subject: [PATCH 25/74] Add resolution 028, Red Abya Yala --- docs/federation/resolutions/in-progress/028.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 docs/federation/resolutions/in-progress/028.md diff --git a/docs/federation/resolutions/in-progress/028.md b/docs/federation/resolutions/in-progress/028.md new file mode 100644 index 0000000..bd3811a --- /dev/null +++ b/docs/federation/resolutions/in-progress/028.md @@ -0,0 +1,15 @@ +# Resolution 028: Red Abya Yala joins the Co-op Cloud Federation + +- Topic: Red Abya Yala joins the Co-op Cloud Federation +- Date: 16-01-2025 +- Deadline: 30-01-2025 +- Size: large + +## Summary + +Red Abya Yala is the network of Coopcloud nodes from Escuela ComΓΊn. It has facilitated Coopcloud workshops during Escuela ComΓΊn and some members have contributed to recipes. + +Representative: `@fauno:sutty.nl` + +* https://abyayala.sutty.nl/ +* https://escuelacomun.yanapak.org/ From b74e33d5ca7408cb844704620ea5fef53aae323e Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Sat, 18 Jan 2025 18:57:00 -0500 Subject: [PATCH 26/74] Add R028 to menu --- mkdocs.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/mkdocs.yml b/mkdocs.yml index 885d5be..3a16fc1 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -122,6 +122,7 @@ nav: - federation/resolutions/in-progress/025.md - federation/resolutions/in-progress/026.md - federation/resolutions/in-progress/027.md + - federation/resolutions/in-progress/028.md - "Minutes": - federation/minutes/index.md - "Recently": From 97ba8b1a77cdd47274a5db9c173479c60ca5915f Mon Sep 17 00:00:00 2001 From: f Date: Fri, 24 Jan 2025 17:34:13 -0300 Subject: [PATCH 27/74] feat: add red abyaya yala --- docs/federation/membership.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/federation/membership.md b/docs/federation/membership.md index 7bc31c6..c3eab93 100644 --- a/docs/federation/membership.md +++ b/docs/federation/membership.md @@ -19,3 +19,4 @@ title: Membership | [BeWater](https://bewater.contact) | Waiver | - | `@decentral1se` | | [ruangrupa](https://ruangrupa.id) | - | - | Henry `@babystepper:matrix.org` | | [Ammar](https://social.coop/@ammaratef45) | - | - | `@ammaratef45:matrix.org` | +| [Red Abya Yala](https://abyayala.sutty.nl/) | - | - | `@fauno:sutty.nl` | From b9bff04773ab35d1b64c6ebb65fe1a7de5c4b60b Mon Sep 17 00:00:00 2001 From: decentral1se Date: Thu, 13 Mar 2025 22:45:31 +0100 Subject: [PATCH 28/74] fix: promote all the stuff to passed --- .../federation/resolutions/in-progress/030.md | 79 +++++++++++++++++++ .../{in-progress => passed}/025.md | 0 .../{in-progress => passed}/026.md | 0 .../{in-progress => passed}/027.md | 0 .../{in-progress => passed}/028.md | 0 mkdocs.yml | 8 +- 6 files changed, 83 insertions(+), 4 deletions(-) create mode 100644 docs/federation/resolutions/in-progress/030.md rename docs/federation/resolutions/{in-progress => passed}/025.md (100%) rename docs/federation/resolutions/{in-progress => passed}/026.md (100%) rename docs/federation/resolutions/{in-progress => passed}/027.md (100%) rename docs/federation/resolutions/{in-progress => passed}/028.md (100%) diff --git a/docs/federation/resolutions/in-progress/030.md b/docs/federation/resolutions/in-progress/030.md new file mode 100644 index 0000000..e350cb1 --- /dev/null +++ b/docs/federation/resolutions/in-progress/030.md @@ -0,0 +1,79 @@ +--- +title: Resolution 30 Budget 14: Federation Radmin +--- + +- Topic: Specify mandate & budget for federation radmin role +- Date: XX-XX-2025 +- Deadline: XX-XX-2025 +- Size: Large + +## Summary + +Experience shows that solid administration is the basis for effective self-organisation. We call this "radmin" (radical admin) because this admin work acts as a motor which boosts our self-organisation and coordination potential. + +We are in a unique position to discuss and implement a financial model which can meet our vision of sustainability based on our democratic structure and decision making process. + +We believe that it is more important than ever to make software project governance work without dictators. This role plays a critical role in making that possible. + +Autonomic has been carrying out the financial administration so far but cannot continue to do this due to low capacity. No other federation member can pick up this work at this time. + +To make progress, we propose to create a strict mandate for a paid radmin role which will be published as an open call. Anyone can fill this role, claim the budget and support the federation. + +Federation members will decide on who fills the role based on an evaluation of the candidates. The open call draft will specify exact details once this decision is approved and will be presented to federation members. The open call will be agreed upon by discussion with fedi members feedback, not resolution. + +## Details + +### Term mandate + +**IMPORTANT**: Extensions to this mandate can **only** be established through official decision making process. + +* Up to 12 hours a month @ 20 GBP per hour based on the currently available federation membership dues +* Establishing a financial bookkeeping structure for the federation with associated documentation +* Instigating handover from Autonomic finance admin +* Leading a discussion which establishes a shared understanding of what financial sustainability means for the federation today with associated documentation +* Designing and implementing a new federation membership fees system which supports financial sustainability and is passed with a large decision +* Contribuiting to the Co-op Cloud wiki - https://docs.coopcloud.tech/ (training provided) +* Making sure invoices are submitted correctly and approving them via the Co-op Cloud Open Collective (OC) +* Managing budgets and faciliating timetracking against those budgets (e.g. https://kimai.coopcloud.tech) +* Herding cats +* Invoicing for your time each month to the Co-op Cloud OC + +### Term duration + +The term duration of this role is 1 year with a start date which will be decided in conversation with the contractor. + +### Term revocation + +The term of duration can be revoked by the federation via established decision making channels (large resolution) if issues cannot be reached through dialogue and constructive feedback. + +In the event of revocation, there will be a collaborative feedback session between the federation and the contractor. + +### Buddy system + +Implementors of this resolution commit to a fixed monthly meeting, date/time to be determined, to check in and discuss challenges, progress, plans etc. + +This is an important accountability structure which is not aimed to surveil the contractorp but ensure that both the federation and the radmin role are working well together and where things can be improved, take action together to resolve it. + +### Open call + +An open call is to be publised based on this proposal and shared openly. The open call will be presented as a draft to federation members before publishing. Exact details of the process, evaluation, start/end date etc. will be included in the text. + +## Budget 014 + +The role is paid from the current membership fees, as decided on [R002](https://docs.coopcloud.tech/federation/resolutions/passed/002/). The hope is that by filling this role, we can increase this budget through the design and implementation of a more sustainable financial model for the federation. + +Budget amount: GBP 250 per month +Who will implement this: decentral1se, kawaiipunk (Autonomic) +When will the money be spent: On an ongoing basis +What is the money for: Paying the working hours of whoever fills the role + +## Legal + +You will be a freelancer contractor and be responsible for your own invoices and taxes. Currently the Co-op Cloud project is stewarded by Autonomic Co-operative Limited and does not have it's own legal entity, so your freelance contract will be with Autonomic Co-operative Limited. + +FEEDBACK +kawaiipunk - we have to setup a new bank account as the money is currently managed by Autonomic's WISE account (as a seperate "pot"). This might require registering as a co-op legal entity. +kawaiipunk - 20 EUR p/h is sooo loww. Maybe we can mention we are evaluating putting the wage up but we need the finance admin to do that. +fauno - we can talk with mayfirst folks about their experience with membership dues +fauno - thought it was going to be more project management. Will share with networks. +kawaiipunk: VeganVenom (Autonomic finance admin) is up for handover diff --git a/docs/federation/resolutions/in-progress/025.md b/docs/federation/resolutions/passed/025.md similarity index 100% rename from docs/federation/resolutions/in-progress/025.md rename to docs/federation/resolutions/passed/025.md diff --git a/docs/federation/resolutions/in-progress/026.md b/docs/federation/resolutions/passed/026.md similarity index 100% rename from docs/federation/resolutions/in-progress/026.md rename to docs/federation/resolutions/passed/026.md diff --git a/docs/federation/resolutions/in-progress/027.md b/docs/federation/resolutions/passed/027.md similarity index 100% rename from docs/federation/resolutions/in-progress/027.md rename to docs/federation/resolutions/passed/027.md diff --git a/docs/federation/resolutions/in-progress/028.md b/docs/federation/resolutions/passed/028.md similarity index 100% rename from docs/federation/resolutions/in-progress/028.md rename to docs/federation/resolutions/passed/028.md diff --git a/mkdocs.yml b/mkdocs.yml index 3a16fc1..2e841d3 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -116,13 +116,13 @@ nav: - federation/resolutions/passed/022.md - federation/resolutions/passed/023.md - federation/resolutions/passed/024.md + - federation/resolutions/passed/025.md + - federation/resolutions/passed/026.md + - federation/resolutions/passed/027.md + - federation/resolutions/passed/028.md - "Stalled": - federation/resolutions/stalled/013.md - "In Progress": - - federation/resolutions/in-progress/025.md - - federation/resolutions/in-progress/026.md - - federation/resolutions/in-progress/027.md - - federation/resolutions/in-progress/028.md - "Minutes": - federation/minutes/index.md - "Recently": From 6ff951cf5a766174356984efef3d0d526b04b1bd Mon Sep 17 00:00:00 2001 From: decentral1se Date: Thu, 13 Mar 2025 22:47:04 +0100 Subject: [PATCH 29/74] fix: show item --- mkdocs.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/mkdocs.yml b/mkdocs.yml index 2e841d3..56aeb24 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -123,6 +123,7 @@ nav: - "Stalled": - federation/resolutions/stalled/013.md - "In Progress": + - federation/resolutions/index.md - "Minutes": - federation/minutes/index.md - "Recently": From e9599971296d278cf0f4f12a6e798121f35baa85 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Thu, 13 Mar 2025 22:48:57 +0100 Subject: [PATCH 30/74] fix: numbber --- docs/federation/resolutions/in-progress/{030.md => 029.md} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename docs/federation/resolutions/in-progress/{030.md => 029.md} (99%) diff --git a/docs/federation/resolutions/in-progress/030.md b/docs/federation/resolutions/in-progress/029.md similarity index 99% rename from docs/federation/resolutions/in-progress/030.md rename to docs/federation/resolutions/in-progress/029.md index e350cb1..0d19e0b 100644 --- a/docs/federation/resolutions/in-progress/030.md +++ b/docs/federation/resolutions/in-progress/029.md @@ -1,5 +1,5 @@ --- -title: Resolution 30 Budget 14: Federation Radmin +title: Resolution 29 Budget 14: Federation Radmin --- - Topic: Specify mandate & budget for federation radmin role From ea7ed9ed06d53c987a3d0ebb136f6c67553d7d08 Mon Sep 17 00:00:00 2001 From: Apfelwurm Date: Sun, 16 Mar 2025 20:03:58 +0100 Subject: [PATCH 31/74] update offline certificates secret insert command --- docs/operators/handbook.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/operators/handbook.md b/docs/operators/handbook.md index 2cdd0af..b39397c 100644 --- a/docs/operators/handbook.md +++ b/docs/operators/handbook.md @@ -479,8 +479,8 @@ COMPOSE_FILE="$COMPOSE_FILE:compose.wildcard.yml" 2. Generate a self-signed certificate using the [command listed here](https://letsencrypt.org/docs/certificates-for-localhost/#making-and-trusting-your-own-certificates). Unless using `localhost` you may want to edit that where it appears in the command, and/or add multiple (sub)domains to the certificate e.g: `subjectAltName=DNS:localhost,DNS:myapp.localhost` 3. Run these commands: ``` -abra app secret insert localhost ssl_cert v1 "$(cat localhost.crt)" -abra app secret insert localhost ssl_key v1 "$(cat localhost.key)" +abra app secret insert localhost ssl_cert v1 localhost.crt -f +abra app secret insert localhost ssl_key v1 localhost.key -f ``` 4. Re-deploy `traefik` with `--force` and voila! From 29f85f332341b32e78c6ace5ba0541f8878fb792 Mon Sep 17 00:00:00 2001 From: Apfelwurm Date: Fri, 21 Mar 2025 11:24:50 +0000 Subject: [PATCH 32/74] add secret generation characters modifier to maintainers handbook (#271) This is the documentation part for the secret generation characters modifier addition to abra ( https://git.coopcloud.tech/toolshed/abra/pulls/521) It might get updated or deleted depending on the outcome of the features PR. Reviewed-on: https://git.coopcloud.tech/toolshed/docs.coopcloud.tech/pulls/271 Co-authored-by: Apfelwurm Co-committed-by: Apfelwurm --- docs/maintainers/handbook.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/docs/maintainers/handbook.md b/docs/maintainers/handbook.md index 8202c52..3bf68a9 100644 --- a/docs/maintainers/handbook.md +++ b/docs/maintainers/handbook.md @@ -533,6 +533,32 @@ word" style generator but instead a string of characters to match the exact length. This can be useful if you have to generate "key" style values instead of passwords which admins have to type out in database shells. +## How do I change secret generation characters? + +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. + +Here are some examples: + +```bash +SECRET_ADMIN_INIT_PASSWORD_VERSION=v1 # length=64 charset=default,safespecial +SECRET_SERVICE_PASSWORD_VERSION=v1 # length=64 charset=default,special +``` + +The possible Values are: + +| Value | Characters | Description | +| -------------------------------------------- | ----------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | +| `special` | `!@#$%^&*_-+=` | Uses only Special Characters | +| `safespecial` | `!@#%^&*_-+=` | Uses only Special Characters, but removes the dollar sign for Console safety | +| `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 | +| 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 are recipes added to the catalogue? > This is so far a manual process which requires someone who's been added to the From 9f06dae65fe3f0bab1fd25ff59a4b74871be97ab Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sun, 23 Mar 2025 11:15:46 +0100 Subject: [PATCH 33/74] docs: latest RC2 changes --- docs/abra/upgrade.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/abra/upgrade.md b/docs/abra/upgrade.md index 55943d5..d7fee32 100644 --- a/docs/abra/upgrade.md +++ b/docs/abra/upgrade.md @@ -55,7 +55,7 @@ And test things work. ### `0.9.x-beta` -> `0.10.x-beta` -> 🎺🎺🎺 Get the [release candidate](https://git.coopcloud.tech/toolshed/abra/releases/tag/0.10.0-rc1-beta) 🎺🎺🎺 +> 🎺🎺🎺 Get the [release candidate](https://git.coopcloud.tech/toolshed/abra/releases/tag/0.10.0-rc2-beta) 🎺🎺🎺 * `abra` will now write the app deployment version to the app env file (`$ABRA_DIR/servers//.env`) against the `TYPE=/RECIPE=` env @@ -113,6 +113,11 @@ And test things work. to accomodate the work done around operator collaboration and stable versioning. +* `abra app deploy` / `upgrade` / `rollback` / etc. now show the deployment + progress, retry attempts and the healthcheck status. + +* Failed deployments will write output logs to file in `~/$ABRA_DIR/logs`. + * `abra app errors` went away. It never really worked and was retired. You can rely on `abra app logs` for the time being. @@ -127,6 +132,9 @@ And test things work. * `abra recipe fetch` now accepts an `--all` flag to fetch all repositories. +* It's now possible to set the character charset for a password. See + [`#521`](https://git.coopcloud.tech/toolshed/abra/issues/521) for more. + ### `0.8.x-beta` -> `0.9.x-beta` None at this time. From 03eb13b639930b70532c25e5e45f4709764649a8 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 24 Mar 2025 18:15:05 +0100 Subject: [PATCH 34/74] fix: point to projects --- docs/intro/bikemap.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/intro/bikemap.md b/docs/intro/bikemap.md index 0066986..6e47804 100644 --- a/docs/intro/bikemap.md +++ b/docs/intro/bikemap.md @@ -6,4 +6,4 @@ title: Bike map - We are working towards a stable `1.0.0` release. -- What we're currently working on is listed on this issue tracker: [`coop-cloud/organising`](https://git.coopcloud.tech/coop-cloud/organising/issues). +- What we're currently working on is listed on this issue tracker: [`toolshed/projects`](https://git.coopcloud.tech/toolshed/-/projects). From 6302b26cc78e8dbc276e627bb869e554abbaf0d6 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 24 Mar 2025 18:15:10 +0100 Subject: [PATCH 35/74] fix: it's gone --- docs/intro/managed.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/intro/managed.md b/docs/intro/managed.md index acc36db..c8f23cc 100644 --- a/docs/intro/managed.md +++ b/docs/intro/managed.md @@ -11,4 +11,3 @@ The Co-op Cloud is still [beta quality software](https://en.wikipedia.org/wiki/S - [Autonomic Co-op](https://autonomic.zone) (contact: [`helo@autonomic.zone`](mailto:boop@autonomic.zone)) - [makeITsocial](https://makeitsocial.net) (managed hosting, see [price calculator](https://makeitsocial.net/kolli-cloud/)) - [Local-IT](https://local-it.org/) ([selfhosting](https://wiki.local-it.org/s/kollicloud-wiki/doc/selfhosting-guide-1xZJt8UIha) & cooperative hosting, contact: [`info@local-it.org`](mailto:info@local-it.org)) -- [Solisoft](https://solisoft.top) (contact [`contact@solisoft.top`](mailto:contact@solisoft.top)) From 8f120c1eb44171bf00d7ac22cab762d08291584f Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 24 Mar 2025 18:15:55 +0100 Subject: [PATCH 36/74] fix: clarify --- docs/federation/membership.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/federation/membership.md b/docs/federation/membership.md index c3eab93..6d91eb1 100644 --- a/docs/federation/membership.md +++ b/docs/federation/membership.md @@ -16,7 +16,7 @@ title: Membership | [Local IT](https://local-it.org/) | - | - | `@moritz:matrix.local-it.org` + `@simon_sth:matrix.org`| | Mirsal β„’ | - | - | `@mirsal:1312.media` | | [UTAW](https://utaw.tech) | - | - | `@javielico:matrix.org` | -| [BeWater](https://bewater.contact) | Waiver | - | `@decentral1se` | +| `@decentral1se` (previously Solisoft, BeWater) | Waiver | - | `@decentral1se` | | [ruangrupa](https://ruangrupa.id) | - | - | Henry `@babystepper:matrix.org` | | [Ammar](https://social.coop/@ammaratef45) | - | - | `@ammaratef45:matrix.org` | | [Red Abya Yala](https://abyayala.sutty.nl/) | - | - | `@fauno:sutty.nl` | From ea9a9b94670f0fd23fbae1e516b91e7fa53569b9 Mon Sep 17 00:00:00 2001 From: KawaiiPunk Date: Mon, 24 Mar 2025 17:48:58 +0000 Subject: [PATCH 37/74] Update docs/federation/resolutions/in-progress/029.md Improved md a little --- docs/federation/resolutions/in-progress/029.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/federation/resolutions/in-progress/029.md b/docs/federation/resolutions/in-progress/029.md index 0d19e0b..037532b 100644 --- a/docs/federation/resolutions/in-progress/029.md +++ b/docs/federation/resolutions/in-progress/029.md @@ -62,18 +62,18 @@ An open call is to be publised based on this proposal and shared openly. The ope The role is paid from the current membership fees, as decided on [R002](https://docs.coopcloud.tech/federation/resolutions/passed/002/). The hope is that by filling this role, we can increase this budget through the design and implementation of a more sustainable financial model for the federation. -Budget amount: GBP 250 per month -Who will implement this: decentral1se, kawaiipunk (Autonomic) -When will the money be spent: On an ongoing basis -What is the money for: Paying the working hours of whoever fills the role +- Budget amount: GBP 250 per month +- Who will implement this: decentral1se, kawaiipunk (Autonomic) +- When will the money be spent: On an ongoing basis +- What is the money for: Paying the working hours of whoever fills the role ## Legal You will be a freelancer contractor and be responsible for your own invoices and taxes. Currently the Co-op Cloud project is stewarded by Autonomic Co-operative Limited and does not have it's own legal entity, so your freelance contract will be with Autonomic Co-operative Limited. FEEDBACK -kawaiipunk - we have to setup a new bank account as the money is currently managed by Autonomic's WISE account (as a seperate "pot"). This might require registering as a co-op legal entity. -kawaiipunk - 20 EUR p/h is sooo loww. Maybe we can mention we are evaluating putting the wage up but we need the finance admin to do that. -fauno - we can talk with mayfirst folks about their experience with membership dues -fauno - thought it was going to be more project management. Will share with networks. -kawaiipunk: VeganVenom (Autonomic finance admin) is up for handover +- kawaiipunk - we have to setup a new bank account as the money is currently managed by Autonomic's WISE account (as a seperate "pot"). This might require registering as a co-op legal entity. +- kawaiipunk - 20 EUR p/h is sooo loww. Maybe we can mention we are evaluating putting the wage up but we need the finance admin to do that. +- fauno - we can talk with mayfirst folks about their experience with membership dues +- fauno - thought it was going to be more project management. Will share with networks. +- kawaiipunk: VeganVenom (Autonomic finance admin) is up for handover From 4cc142d42044d3e52d1a6657f895d6f68b7581e5 Mon Sep 17 00:00:00 2001 From: KawaiiPunk Date: Mon, 24 Mar 2025 17:52:07 +0000 Subject: [PATCH 38/74] Update docs/federation/resolutions/in-progress/029.md Added a lined about time tracking using kimai --- docs/federation/resolutions/in-progress/029.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/federation/resolutions/in-progress/029.md b/docs/federation/resolutions/in-progress/029.md index 037532b..49d6147 100644 --- a/docs/federation/resolutions/in-progress/029.md +++ b/docs/federation/resolutions/in-progress/029.md @@ -36,6 +36,7 @@ Federation members will decide on who fills the role based on an evaluation of t * Making sure invoices are submitted correctly and approving them via the Co-op Cloud Open Collective (OC) * Managing budgets and faciliating timetracking against those budgets (e.g. https://kimai.coopcloud.tech) * Herding cats +* Timetrack to be done on the activity level via our [Kimai](https://kimai.coopcloud.tech) for accountability * Invoicing for your time each month to the Co-op Cloud OC ### Term duration @@ -52,7 +53,7 @@ In the event of revocation, there will be a collaborative feedback session betwe Implementors of this resolution commit to a fixed monthly meeting, date/time to be determined, to check in and discuss challenges, progress, plans etc. -This is an important accountability structure which is not aimed to surveil the contractorp but ensure that both the federation and the radmin role are working well together and where things can be improved, take action together to resolve it. +This is an important accountability structure which is not aimed to surveil the contractor but ensure that both the federation and the radmin role are working well together and where things can be improved, take action together to resolve it. ### Open call From 13b80b3b934eef581b1835e77540046e0d172d78 Mon Sep 17 00:00:00 2001 From: KawaiiPunk Date: Mon, 24 Mar 2025 17:53:17 +0000 Subject: [PATCH 39/74] Update docs/federation/resolutions/in-progress/029.md Added a header --- docs/federation/resolutions/in-progress/029.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/federation/resolutions/in-progress/029.md b/docs/federation/resolutions/in-progress/029.md index 49d6147..d52b22c 100644 --- a/docs/federation/resolutions/in-progress/029.md +++ b/docs/federation/resolutions/in-progress/029.md @@ -72,7 +72,7 @@ The role is paid from the current membership fees, as decided on [R002](https:// You will be a freelancer contractor and be responsible for your own invoices and taxes. Currently the Co-op Cloud project is stewarded by Autonomic Co-operative Limited and does not have it's own legal entity, so your freelance contract will be with Autonomic Co-operative Limited. -FEEDBACK +## Federation Feedback - kawaiipunk - we have to setup a new bank account as the money is currently managed by Autonomic's WISE account (as a seperate "pot"). This might require registering as a co-op legal entity. - kawaiipunk - 20 EUR p/h is sooo loww. Maybe we can mention we are evaluating putting the wage up but we need the finance admin to do that. - fauno - we can talk with mayfirst folks about their experience with membership dues From a2def8f9429f05d550822fde42b326634e9e6c4d Mon Sep 17 00:00:00 2001 From: decentral1se Date: Tue, 25 Mar 2025 22:16:16 +0100 Subject: [PATCH 40/74] docs: tweaks --- .../federation/resolutions/in-progress/029.md | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/docs/federation/resolutions/in-progress/029.md b/docs/federation/resolutions/in-progress/029.md index d52b22c..e20a34d 100644 --- a/docs/federation/resolutions/in-progress/029.md +++ b/docs/federation/resolutions/in-progress/029.md @@ -9,41 +9,39 @@ title: Resolution 29 Budget 14: Federation Radmin ## Summary -Experience shows that solid administration is the basis for effective self-organisation. We call this "radmin" (radical admin) because this admin work acts as a motor which boosts our self-organisation and coordination potential. +Experience shows that solid administration is the basis for effective self-organisation. We call this "radmin" (radical admin) because this admin work acts as motor which boosts our self-organisation and coordination potential. -We are in a unique position to discuss and implement a financial model which can meet our vision of sustainability based on our democratic structure and decision making process. +We are in a unique position to discuss and implement a financial model which can meet our vision of sustainability based on our democratic structure and decision making process. We believe that it is more important than ever to make software project governance work without dictators. This role plays a critical role in making that possible. -We believe that it is more important than ever to make software project governance work without dictators. This role plays a critical role in making that possible. - -Autonomic has been carrying out the financial administration so far but cannot continue to do this due to low capacity. No other federation member can pick up this work at this time. - -To make progress, we propose to create a strict mandate for a paid radmin role which will be published as an open call. Anyone can fill this role, claim the budget and support the federation. +Autonomic has been carrying out the financial administration so far but cannot continue to do this due to low capacity. No other federation member can pick up this work at this time. To make progress, we propose to create a strict mandate for a paid radmin role which will be published as an open call. Anyone can fill this role, claim the budget and support the federation. Federation members will decide on who fills the role based on an evaluation of the candidates. The open call draft will specify exact details once this decision is approved and will be presented to federation members. The open call will be agreed upon by discussion with fedi members feedback, not resolution. ## Details -### Term mandate - -**IMPORTANT**: Extensions to this mandate can **only** be established through official decision making process. +### Mandate * Up to 12 hours a month @ 20 GBP per hour based on the currently available federation membership dues * Establishing a financial bookkeeping structure for the federation with associated documentation * Instigating handover from Autonomic finance admin * Leading a discussion which establishes a shared understanding of what financial sustainability means for the federation today with associated documentation * Designing and implementing a new federation membership fees system which supports financial sustainability and is passed with a large decision -* Contribuiting to the Co-op Cloud wiki - https://docs.coopcloud.tech/ (training provided) +* Contribuiting to the Co-op Cloud [wiki](https://docs.coopcloud.tech/ (training provided) * Making sure invoices are submitted correctly and approving them via the Co-op Cloud Open Collective (OC) * Managing budgets and faciliating timetracking against those budgets (e.g. https://kimai.coopcloud.tech) * Herding cats * Timetrack to be done on the activity level via our [Kimai](https://kimai.coopcloud.tech) for accountability * Invoicing for your time each month to the Co-op Cloud OC -### Term duration +### Extension + +**IMPORTANT**: Extensions to this mandate can **only** be established through official decision making process. + +### Duration The term duration of this role is 1 year with a start date which will be decided in conversation with the contractor. -### Term revocation +### Revocation The term of duration can be revoked by the federation via established decision making channels (large resolution) if issues cannot be reached through dialogue and constructive feedback. @@ -72,9 +70,11 @@ The role is paid from the current membership fees, as decided on [R002](https:// You will be a freelancer contractor and be responsible for your own invoices and taxes. Currently the Co-op Cloud project is stewarded by Autonomic Co-operative Limited and does not have it's own legal entity, so your freelance contract will be with Autonomic Co-operative Limited. + From 5cbb7fd0835cd1b584c0549389f9588f7788b504 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Tue, 25 Mar 2025 22:26:51 +0100 Subject: [PATCH 41/74] fix: link --- docs/federation/resolutions/in-progress/029.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/federation/resolutions/in-progress/029.md b/docs/federation/resolutions/in-progress/029.md index e20a34d..0befadd 100644 --- a/docs/federation/resolutions/in-progress/029.md +++ b/docs/federation/resolutions/in-progress/029.md @@ -26,7 +26,7 @@ Federation members will decide on who fills the role based on an evaluation of t * Instigating handover from Autonomic finance admin * Leading a discussion which establishes a shared understanding of what financial sustainability means for the federation today with associated documentation * Designing and implementing a new federation membership fees system which supports financial sustainability and is passed with a large decision -* Contribuiting to the Co-op Cloud [wiki](https://docs.coopcloud.tech/ (training provided) +* Contribuiting to the Co-op Cloud [wiki](https://docs.coopcloud.tech) (training provided) * Making sure invoices are submitted correctly and approving them via the Co-op Cloud Open Collective (OC) * Managing budgets and faciliating timetracking against those budgets (e.g. https://kimai.coopcloud.tech) * Herding cats From fb3ef6faa3351d84f19b6d7bc711f7ae3e947b0b Mon Sep 17 00:00:00 2001 From: decentral1se Date: Tue, 25 Mar 2025 22:29:12 +0100 Subject: [PATCH 42/74] docs: note about future --- docs/federation/resolutions/in-progress/029.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/federation/resolutions/in-progress/029.md b/docs/federation/resolutions/in-progress/029.md index 0befadd..5466f67 100644 --- a/docs/federation/resolutions/in-progress/029.md +++ b/docs/federation/resolutions/in-progress/029.md @@ -35,7 +35,9 @@ Federation members will decide on who fills the role based on an evaluation of t ### Extension -**IMPORTANT**: Extensions to this mandate can **only** be established through official decision making process. +**IMPORTANT**: Extensions to this mandate can **only** be established through official decision making process. + +We expect that this radmin work will continue to be necessary as long as the federation exists, so it can be a stable source of (some) income in the future. ### Duration From a8caa4af42c8a2aee4fd20125b42456c57197ec0 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Tue, 25 Mar 2025 22:29:55 +0100 Subject: [PATCH 43/74] fix: wording --- docs/federation/resolutions/in-progress/029.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/federation/resolutions/in-progress/029.md b/docs/federation/resolutions/in-progress/029.md index 5466f67..bb537d9 100644 --- a/docs/federation/resolutions/in-progress/029.md +++ b/docs/federation/resolutions/in-progress/029.md @@ -45,7 +45,7 @@ The term duration of this role is 1 year with a start date which will be decided ### Revocation -The term of duration can be revoked by the federation via established decision making channels (large resolution) if issues cannot be reached through dialogue and constructive feedback. +The term of duration can be revoked by the federation via established decision making channels (large resolution) if issues cannot be resolved through dialogue and constructive feedback. In the event of revocation, there will be a collaborative feedback session between the federation and the contractor. From 6b9b01d078487aa44df6c2be392729ffc951b0fd Mon Sep 17 00:00:00 2001 From: decentral1se Date: Tue, 25 Mar 2025 22:30:56 +0100 Subject: [PATCH 44/74] docs: point to mandate --- docs/federation/resolutions/in-progress/029.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/federation/resolutions/in-progress/029.md b/docs/federation/resolutions/in-progress/029.md index bb537d9..c71ccfc 100644 --- a/docs/federation/resolutions/in-progress/029.md +++ b/docs/federation/resolutions/in-progress/029.md @@ -61,7 +61,7 @@ An open call is to be publised based on this proposal and shared openly. The ope ## Budget 014 -The role is paid from the current membership fees, as decided on [R002](https://docs.coopcloud.tech/federation/resolutions/passed/002/). The hope is that by filling this role, we can increase this budget through the design and implementation of a more sustainable financial model for the federation. +The role is paid from the current membership fees, as decided on [R002](https://docs.coopcloud.tech/federation/resolutions/passed/002/). The hope is that by filling this role, we can increase this budget through the design and implementation of a more sustainable financial model for the federation (see mandate above). - Budget amount: GBP 250 per month - Who will implement this: decentral1se, kawaiipunk (Autonomic) From 9e314b097db83ce93d8168bdfc1e9c99d776d16c Mon Sep 17 00:00:00 2001 From: decentral1se Date: Wed, 26 Mar 2025 13:12:56 +0100 Subject: [PATCH 45/74] docs: tweakin' (thx p_p) --- docs/federation/resolutions/in-progress/029.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/federation/resolutions/in-progress/029.md b/docs/federation/resolutions/in-progress/029.md index c71ccfc..b1734ba 100644 --- a/docs/federation/resolutions/in-progress/029.md +++ b/docs/federation/resolutions/in-progress/029.md @@ -2,7 +2,7 @@ title: Resolution 29 Budget 14: Federation Radmin --- -- Topic: Specify mandate & budget for federation radmin role +- Topic: Implementing a paid role to do administration tasks - Date: XX-XX-2025 - Deadline: XX-XX-2025 - Size: Large @@ -15,7 +15,7 @@ We are in a unique position to discuss and implement a financial model which can Autonomic has been carrying out the financial administration so far but cannot continue to do this due to low capacity. No other federation member can pick up this work at this time. To make progress, we propose to create a strict mandate for a paid radmin role which will be published as an open call. Anyone can fill this role, claim the budget and support the federation. -Federation members will decide on who fills the role based on an evaluation of the candidates. The open call draft will specify exact details once this decision is approved and will be presented to federation members. The open call will be agreed upon by discussion with fedi members feedback, not resolution. +Federation members will decide on who fills the role based on an evaluation of the candidates. The open call draft will specify exact details once this decision is approved and will be presented to federation members. The open call will be agreed upon by discussion with fedi members feedback, not decision making. ## Details From a0bb8ad46432cf9dc54651a96f1ccbc1f629ed81 Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Wed, 2 Apr 2025 14:57:44 +0100 Subject: [PATCH 46/74] More catalogue autogeneration explanation --- docs/maintainers/handbook.md | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/docs/maintainers/handbook.md b/docs/maintainers/handbook.md index 3bf68a9..099fa64 100644 --- a/docs/maintainers/handbook.md +++ b/docs/maintainers/handbook.md @@ -431,7 +431,7 @@ You can pass `--publish` to have `abra` automatically publish those changes. In order to have `abra` publish changes for you automatically, you'll have to have write permissons to the git.coopcloud.tech repository and your account must have a working SSH key configuration. `abra` will use the SSH based URL connection details for Git by automagically creating an `origin-ssh` remote in the repository and pushing to it. -## How is I make the catalogue automatically regenerate after new versions are published? +## How do I make the catalogue automatically regenerate after new versions are published? "I'd like to make it so that whenever I push a new git tag to the [`coop-cloud/rallly` repository](https://git.coopcloud.tech/coop-cloud/rallly) @@ -457,13 +457,21 @@ release`](#how-do-i-release-a-new-recipe-version)), it automatically does the ## How does automatic catalogue regeneration work? -TODO +**TODO: write up properly** + +Context: the catalogue lives in a git repo here: https://git.coopcloud.tech/toolshed/recipes-catalogue-json + +The expectation is that this repo will only be updated automatically. While manual commits are possible, they're likely to be overwritten. + +Automatic regeneration is handled by this Drone step, in the separate `auto-recipes-catalogue-json` repo: https://git.coopcloud.tech/toolshed/auto-recipes-catalogue-json/src/branch/main/.drone.yml#L5-L25 + +This is run on a daily schedule (question: where is `nightly-app-date` configured?), and can also be triggered by recipe repositories to make new versions available quicker – see "[How do I make the catalogue automatically regenerate after new versions are published?](#how-do-i-make-the-catalogue-automatically-regenerate-after-new-versions-are-published)" above. ## How do I enable healthchecks A healthcheck is an important and often overlooked part of the recipe configuration. It is part of the configuration that the runtime uses to figure out if a container is really up-and-running. You can tweak what command to run, how often and how many times to try until you assume the container is not up. -There are no real univesal configs and most maintainers just pick up what others are doing and try to adapt. There is some testing involved to see what works well. You can browse the existing recipe repositories and see from there. +There are no real universal configs and most maintainers just pick up what others are doing and try to adapt. There is some testing involved to see what works well. You can browse the existing recipe repositories and see from there. You'll often find the same one used for things like caches & supporting services, such as Redis: From 4133342909312f4357da7dbc90b6011de3a88396 Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Thu, 3 Apr 2025 20:07:16 +0100 Subject: [PATCH 47/74] Add resolution 030: docs / naming survey --- .../in-progress/030-docs-naming-survey.md | 35 +++++++++++++++++++ mkdocs.yml | 2 ++ 2 files changed, 37 insertions(+) create mode 100644 docs/federation/resolutions/in-progress/030-docs-naming-survey.md diff --git a/docs/federation/resolutions/in-progress/030-docs-naming-survey.md b/docs/federation/resolutions/in-progress/030-docs-naming-survey.md new file mode 100644 index 0000000..ee8bcf6 --- /dev/null +++ b/docs/federation/resolutions/in-progress/030-docs-naming-survey.md @@ -0,0 +1,35 @@ +# Co-op Cloud resolution 030: docs / naming survey + +- Topic: Budget for a survey about the Co-op Cloud documentation +- Date: 2025-04-03 +- Deadline: 2025-04-17 +- Size: large + +## Summary + +Allocate up to €160 for the production and analysis of a survey to get feedback on the Co-op Cloud documentation (https://docs.coopcloud.tech), with a particular focus on the "operator" and "maintainer" names. + +Optional feedback on what docs example survey takers think we could benefit from observing and/or an optional description of how documentation can be improved in general will be present but not necessary acted on as part of this resolution. + +## Details + +- We've received some feedback that the key "Operators" and "Maintainers" names can be confusing, especially for non-native-English speakers +- We're interested in getting wide input, from both the existing Co-op Cloud community, and the wider democratic tech space -- including from people unfamiliar with Co-op Cloud +- As well as specific input on this naming question, it would also be useful to gather general feedback on the documentation, collecting suggestions on structure, clarity, format (including potential other media like screencasts, videos, or educational materials) + +Our rough plan / budget for this work is: +- collecting information 1-2h +- design survey 1-2h +- distribute survey 1-2h +- analyse survey 1-2h +- 4-8 hours + +## Budget 0YY: Docs / naming survey + +* Budget amount: up to EUR 160 + +* Who will implement this: 3wordchant & Ammar + +* When will the money be spent: in Q1 2025 + + * What is the money for: paying for work on a community survey about the Co-op Cloud documentation diff --git a/mkdocs.yml b/mkdocs.yml index 56aeb24..86ad4fe 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -124,6 +124,8 @@ nav: - federation/resolutions/stalled/013.md - "In Progress": - federation/resolutions/index.md + - federation/resolutions/in-progress/029.md + - federation/resolutions/in-progress/030-docs-naming-survey.md - "Minutes": - federation/minutes/index.md - "Recently": From 341cd29b864a4e71dbe079a03fbeba9b1dc706f0 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sat, 5 Apr 2025 23:08:28 +0200 Subject: [PATCH 48/74] docs: another run at R29 --- .../federation/resolutions/in-progress/029.md | 28 ++++++++----------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/docs/federation/resolutions/in-progress/029.md b/docs/federation/resolutions/in-progress/029.md index b1734ba..ef0addd 100644 --- a/docs/federation/resolutions/in-progress/029.md +++ b/docs/federation/resolutions/in-progress/029.md @@ -2,7 +2,7 @@ title: Resolution 29 Budget 14: Federation Radmin --- -- Topic: Implementing a paid role to do administration tasks +- Topic: Establish Budget 14, to pay for up to 12 hours a month of "radmin" (radical administration) work, to help the federation run smoother, for an initial period of 12 months. - Date: XX-XX-2025 - Deadline: XX-XX-2025 - Size: Large @@ -21,7 +21,7 @@ Federation members will decide on who fills the role based on an evaluation of t ### Mandate -* Up to 12 hours a month @ 20 GBP per hour based on the currently available federation membership dues +* Up to 12 hours a month @ 20 EUR per hour based on the currently available federation membership dues * Establishing a financial bookkeeping structure for the federation with associated documentation * Instigating handover from Autonomic finance admin * Leading a discussion which establishes a shared understanding of what financial sustainability means for the federation today with associated documentation @@ -43,15 +43,15 @@ We expect that this radmin work will continue to be necessary as long as the fed The term duration of this role is 1 year with a start date which will be decided in conversation with the contractor. -### Revocation +### Recall -The term of duration can be revoked by the federation via established decision making channels (large resolution) if issues cannot be resolved through dialogue and constructive feedback. +The term of duration can be recalled by the federation via established decision making channels (large resolution) if issues cannot be resolved through dialogue and constructive feedback. -In the event of revocation, there will be a collaborative feedback session between the federation and the contractor. +In the event of recall, there will be a collaborative feedback session between the federation and the contractor with the implementors of this propsal. ### Buddy system -Implementors of this resolution commit to a fixed monthly meeting, date/time to be determined, to check in and discuss challenges, progress, plans etc. +Implementors of this resolution commit to a fixed monthly meeting, date/time to be determined, to check in and discuss challenges, progress, plans etc. This could preferably occur during the [Kite-flying hours (R024)](https://docs.coopcloud.tech/federation/resolutions/passed/024/) unless privacy needs require otherwise. This is an important accountability structure which is not aimed to surveil the contractor but ensure that both the federation and the radmin role are working well together and where things can be improved, take action together to resolve it. @@ -63,20 +63,14 @@ An open call is to be publised based on this proposal and shared openly. The ope The role is paid from the current membership fees, as decided on [R002](https://docs.coopcloud.tech/federation/resolutions/passed/002/). The hope is that by filling this role, we can increase this budget through the design and implementation of a more sustainable financial model for the federation (see mandate above). -- Budget amount: GBP 250 per month +- Budget amount: + - 250 EUR per month (radmin hours) + - 40 EUR per month (implementors attending check-in meeting) + - **Total**: 290 EUR per month - Who will implement this: decentral1se, kawaiipunk (Autonomic) - When will the money be spent: On an ongoing basis - What is the money for: Paying the working hours of whoever fills the role ## Legal -You will be a freelancer contractor and be responsible for your own invoices and taxes. Currently the Co-op Cloud project is stewarded by Autonomic Co-operative Limited and does not have it's own legal entity, so your freelance contract will be with Autonomic Co-operative Limited. - - +The contractor must function as a freelancer contractor and is responsible for their own invoices and taxes. Currently the Co-op Cloud project is stewarded by Autonomic Co-operative Limited and does not have it's own legal entity, so the freelance contract will be with Autonomic Co-operative Limited. From 4cc9c23f2194c93a0dbb519d7d35d0261bcfe400 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sat, 5 Apr 2025 23:13:13 +0200 Subject: [PATCH 49/74] docs: fixes for 029 --- docs/federation/resolutions/in-progress/029.md | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/docs/federation/resolutions/in-progress/029.md b/docs/federation/resolutions/in-progress/029.md index ef0addd..7875f4e 100644 --- a/docs/federation/resolutions/in-progress/029.md +++ b/docs/federation/resolutions/in-progress/029.md @@ -1,10 +1,8 @@ ---- -title: Resolution 29 Budget 14: Federation Radmin ---- +# Resolution 29 Budget 14: Federation Radmin - Topic: Establish Budget 14, to pay for up to 12 hours a month of "radmin" (radical administration) work, to help the federation run smoother, for an initial period of 12 months. -- Date: XX-XX-2025 -- Deadline: XX-XX-2025 +- Date: 05-04-2025 +- Deadline: 19-04-2025 - Size: Large ## Summary @@ -61,12 +59,12 @@ An open call is to be publised based on this proposal and shared openly. The ope ## Budget 014 -The role is paid from the current membership fees, as decided on [R002](https://docs.coopcloud.tech/federation/resolutions/passed/002/). The hope is that by filling this role, we can increase this budget through the design and implementation of a more sustainable financial model for the federation (see mandate above). +The role is paid primarily from the current membership fees, as decided on [R002](https://docs.coopcloud.tech/federation/resolutions/passed/002/). The hope is that by filling this role, we can increase this budget through the design and implementation of a more sustainable financial model for the federation (see mandate above). - Budget amount: - - 250 EUR per month (radmin hours) - - 40 EUR per month (implementors attending check-in meeting) - - **Total**: 290 EUR per month + - 250 EUR per month (radmin hours) + - 40 EUR per month (implementors attending check-in meeting) + - **Total**: 290 EUR per month - Who will implement this: decentral1se, kawaiipunk (Autonomic) - When will the money be spent: On an ongoing basis - What is the money for: Paying the working hours of whoever fills the role From 21b247c916e8da17a161244778066a347e33e64a Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sat, 5 Apr 2025 23:14:40 +0200 Subject: [PATCH 50/74] docs: clarify hours --- docs/federation/resolutions/in-progress/029.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/federation/resolutions/in-progress/029.md b/docs/federation/resolutions/in-progress/029.md index 7875f4e..d67e821 100644 --- a/docs/federation/resolutions/in-progress/029.md +++ b/docs/federation/resolutions/in-progress/029.md @@ -62,8 +62,8 @@ An open call is to be publised based on this proposal and shared openly. The ope The role is paid primarily from the current membership fees, as decided on [R002](https://docs.coopcloud.tech/federation/resolutions/passed/002/). The hope is that by filling this role, we can increase this budget through the design and implementation of a more sustainable financial model for the federation (see mandate above). - Budget amount: - - 250 EUR per month (radmin hours) - - 40 EUR per month (implementors attending check-in meeting) + - 250 EUR per month (hours for contractor) + - 40 EUR per month (hours for implementors / buddys) - **Total**: 290 EUR per month - Who will implement this: decentral1se, kawaiipunk (Autonomic) - When will the money be spent: On an ongoing basis From af542d15372289f4abebbdbd6a91389e91929e7b Mon Sep 17 00:00:00 2001 From: decentral1se Date: Tue, 15 Apr 2025 18:20:07 +0200 Subject: [PATCH 51/74] docs: drop that, old --- docs/abra/index.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/abra/index.md b/docs/abra/index.md index 4fe7d5a..e2aa158 100644 --- a/docs/abra/index.md +++ b/docs/abra/index.md @@ -10,7 +10,9 @@ title: 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: -Once you've got `abra` installed, you can start your own Co-op Cloud deployment. `abra` allows you to create, deploy and maintain libre software apps. It supports working with existing servers or can create new servers (supported providers: [Servers.coop](https://servers.coop/) & [Hetzner](https://hetzner.com)). It can also help you manage your DNS configuration (supported providers: [Gandi](https://gandi.net)). +`abra` is the flagship client & command-line tool for Co-op Cloud. It has been developed specifically for the purpose of making the day-to-day operations of [operators](https://docs.coopcloud.tech/operators/) and [maintainers](https://docs.coopcloud.tech/maintainers/) pleasant & convenient. It is libre software, written in [Go](https://go.dev) and maintained and extended by the community πŸ’– + +Once you've got `abra` installed, you can start your own Co-op Cloud deployment. - [Install](/abra/install): You want to install `abra` :100: - [Quick start](/abra/quickstart): You're ready to get started using `abra` :muscle: From d357bafb24d82f76568bd8c6dc5b3651134dd460 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sat, 19 Apr 2025 09:22:11 +0200 Subject: [PATCH 52/74] docs: drop that note --- docs/federation/membership.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/federation/membership.md b/docs/federation/membership.md index 6d91eb1..960f68d 100644 --- a/docs/federation/membership.md +++ b/docs/federation/membership.md @@ -16,7 +16,7 @@ title: Membership | [Local IT](https://local-it.org/) | - | - | `@moritz:matrix.local-it.org` + `@simon_sth:matrix.org`| | Mirsal β„’ | - | - | `@mirsal:1312.media` | | [UTAW](https://utaw.tech) | - | - | `@javielico:matrix.org` | -| `@decentral1se` (previously Solisoft, BeWater) | Waiver | - | `@decentral1se` | +| `@decentral1se` | Waiver | - | `@decentral1se` | | [ruangrupa](https://ruangrupa.id) | - | - | Henry `@babystepper:matrix.org` | | [Ammar](https://social.coop/@ammaratef45) | - | - | `@ammaratef45:matrix.org` | | [Red Abya Yala](https://abyayala.sutty.nl/) | - | - | `@fauno:sutty.nl` | From a97fb77429fd2beaae303d456d8fd8b955c6d333 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sat, 19 Apr 2025 09:22:18 +0200 Subject: [PATCH 53/74] docs: add MIR --- docs/federation/membership.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/federation/membership.md b/docs/federation/membership.md index 960f68d..17e95ab 100644 --- a/docs/federation/membership.md +++ b/docs/federation/membership.md @@ -19,4 +19,5 @@ title: Membership | `@decentral1se` | Waiver | - | `@decentral1se` | | [ruangrupa](https://ruangrupa.id) | - | - | Henry `@babystepper:matrix.org` | | [Ammar](https://social.coop/@ammaratef45) | - | - | `@ammaratef45:matrix.org` | +| [MIR](https://mirnet.org/) | βœ… | - | `@brooke:pub.solar` | | [Red Abya Yala](https://abyayala.sutty.nl/) | - | - | `@fauno:sutty.nl` | From 9ec95bc60e1cd57e023231c056611ef86d573198 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sun, 20 Apr 2025 08:09:04 +0200 Subject: [PATCH 54/74] docs: bump up R029 --- docs/federation/resolutions/{in-progress => passed}/029.md | 0 mkdocs.yml | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) rename docs/federation/resolutions/{in-progress => passed}/029.md (100%) diff --git a/docs/federation/resolutions/in-progress/029.md b/docs/federation/resolutions/passed/029.md similarity index 100% rename from docs/federation/resolutions/in-progress/029.md rename to docs/federation/resolutions/passed/029.md diff --git a/mkdocs.yml b/mkdocs.yml index 86ad4fe..6a3d556 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -120,11 +120,11 @@ nav: - federation/resolutions/passed/026.md - federation/resolutions/passed/027.md - federation/resolutions/passed/028.md + - federation/resolutions/passed/029.md - "Stalled": - federation/resolutions/stalled/013.md - "In Progress": - federation/resolutions/index.md - - federation/resolutions/in-progress/029.md - federation/resolutions/in-progress/030-docs-naming-survey.md - "Minutes": - federation/minutes/index.md @@ -153,7 +153,7 @@ nav: - "Recipes": abra/recipes.md - "Hack": abra/hack.md - "Troubleshoot": abra/trouble.md - - "Cheat Sheet": abra/cheat-sheet.md + - "Cheat Sheet": abra/cheat-sheet.md - "Specifications": - specs/index.md - "Backups": From 6bcdb457302b52b218c8fa9268649277a132c671 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 21 Apr 2025 10:48:05 +0200 Subject: [PATCH 55/74] docs: link to spec --- docs/specs/backup/maintain.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/specs/backup/maintain.md b/docs/specs/backup/maintain.md index 8e4b966..1218ba6 100644 --- a/docs/specs/backup/maintain.md +++ b/docs/specs/backup/maintain.md @@ -6,7 +6,7 @@ backup/restore logic. ## Tools -Two of the current "blessed" options are, which both implement the [backupbot specification](link to spec) +Two of the current "blessed" options are, which both implement the [backupbot specification](/specs/backup/spec/). - [`backup-bot-two`](https://git.coopcloud.tech/coop-cloud/backup-bot-two) - [`abra`](https://git.coopcloud.tech/toolshed/abra) From 738858100322e75198454a0d9d9710241a39c681 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 21 Apr 2025 19:36:04 +0200 Subject: [PATCH 56/74] docs: focus broader --- docs/intro/faq.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/docs/intro/faq.md b/docs/intro/faq.md index 44983e0..e26ff09 100644 --- a/docs/intro/faq.md +++ b/docs/intro/faq.md @@ -8,12 +8,10 @@ Co-op Cloud aims to make hosting libre software apps simple for small service pr ## Who is behind the project? -The project was started by workers at [Autonomic](https://autonomic.zone/) which -is a [worker-owned co-operative](https://en.wikipedia.org/wiki/Worker_cooperative) who provides -technologies and infrastructure to empower users to make a positive impact on -the world. Numerous other like minded co-ops have since joined our -[Federation](/federation/) and rely *Co-op Cloud* in production. - +The project was initiated by workers at [Autonomic](https://autonomic.zone/), a +[worker-owned co-operative](https://en.wikipedia.org/wiki/Worker_cooperative). +Numerous other like minded co-ops have since joined the +[Federation](/federation/) and rely on *Co-op Cloud* in production. ## Why Co-op Cloud? From d1f538e335c113f62fca4f34e383da26f432ae99 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 21 Apr 2025 19:37:41 +0200 Subject: [PATCH 57/74] docs: free software syndicalism --- docs/intro/inspirations.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/intro/inspirations.md b/docs/intro/inspirations.md index 5c0651f..a813ec0 100644 --- a/docs/intro/inspirations.md +++ b/docs/intro/inspirations.md @@ -4,3 +4,4 @@ title: Inspirations * [Dmytri Kleiner: "You can't code away their wealth"](https://yewtu.be/watch?v=FEU632_Em3g). Also, [The Telekommunist Manifesto](https://www.networkcultures.org/_uploads/%233notebook_telekommunist.pdf). Reading / checking out Kleiners work is a must IMHO -- `@decentral1se`. * [CoopCycle](https://coopcycle.org/en/) - heavily inspired the Federation model and how we shaped the first decisions on how to do it. -- `@decentral1se` +* [Free Software Syndicalism](https://oxygen.offdem.net/pub/synware-free-software-syndicates) - explores the modalities of using, creating, and maintaining digital technologies collectively. Synware documents decentralized free software, their usage and community organization as much technical as conceptual, aesthetic and political. -- `@decentral1se` From e109f4705d5a2b4e88f9e302e23d96ace078e32a Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 21 Apr 2025 19:39:13 +0200 Subject: [PATCH 58/74] docs: less me --- docs/intro/inspirations.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/intro/inspirations.md b/docs/intro/inspirations.md index a813ec0..9815873 100644 --- a/docs/intro/inspirations.md +++ b/docs/intro/inspirations.md @@ -2,6 +2,6 @@ title: Inspirations --- -* [Dmytri Kleiner: "You can't code away their wealth"](https://yewtu.be/watch?v=FEU632_Em3g). Also, [The Telekommunist Manifesto](https://www.networkcultures.org/_uploads/%233notebook_telekommunist.pdf). Reading / checking out Kleiners work is a must IMHO -- `@decentral1se`. -* [CoopCycle](https://coopcycle.org/en/) - heavily inspired the Federation model and how we shaped the first decisions on how to do it. -- `@decentral1se` -* [Free Software Syndicalism](https://oxygen.offdem.net/pub/synware-free-software-syndicates) - explores the modalities of using, creating, and maintaining digital technologies collectively. Synware documents decentralized free software, their usage and community organization as much technical as conceptual, aesthetic and political. -- `@decentral1se` +* [CoopCycle](https://coopcycle.org/en/) +* [Dmytri Kleiner: "You can't code away their wealth"](https://yewtu.be/watch?v=FEU632_Em3g), [The Telekommunist Manifesto](https://www.networkcultures.org/_uploads/%233notebook_telekommunist.pdf) +* [Free Software Syndicalism](https://oxygen.offdem.net/pub/synware-free-software-syndicates) From d6b93121226f7b77e34e62c5a6a80acdb4d4089e Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 21 Apr 2025 19:39:38 +0200 Subject: [PATCH 59/74] docs: newline --- docs/intro/inspirations.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/intro/inspirations.md b/docs/intro/inspirations.md index 9815873..2714633 100644 --- a/docs/intro/inspirations.md +++ b/docs/intro/inspirations.md @@ -3,5 +3,6 @@ title: Inspirations --- * [CoopCycle](https://coopcycle.org/en/) -* [Dmytri Kleiner: "You can't code away their wealth"](https://yewtu.be/watch?v=FEU632_Em3g), [The Telekommunist Manifesto](https://www.networkcultures.org/_uploads/%233notebook_telekommunist.pdf) +* [Dmytri Kleiner: "You can't code away their wealth"](https://yewtu.be/watch?v=FEU632_Em3g) +* [The Telekommunist Manifesto](https://www.networkcultures.org/_uploads/%233notebook_telekommunist.pdf) * [Free Software Syndicalism](https://oxygen.offdem.net/pub/synware-free-software-syndicates) From fdec4f5b5039fabb97f6552b0900f7919708c174 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 21 Apr 2025 19:40:54 +0200 Subject: [PATCH 60/74] docs: wording, formatting --- docs/intro/managed.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/intro/managed.md b/docs/intro/managed.md index c8f23cc..b1c968a 100644 --- a/docs/intro/managed.md +++ b/docs/intro/managed.md @@ -4,9 +4,13 @@ title: Managed hosting !!! danger "We're still working this out, you can help too!" - If you're a co-operative or a tech collective who wants to appear on this list, please [get in touch](/intro/contact/)! We want to expand the number of service providers using the Co-op Cloud so that project is more widely available to end-users and organisations who can influence the direction and co-fund the development. + If you're a co-operative or a tech collective who wants to appear on this + list, please [get in touch](/intro/contact/)! We want to expand the number + of service providers using Co-op Cloud so that project is more widely + available to end-users and organisations who can influence the direction + and co-fund the development. -The Co-op Cloud is still [beta quality software](https://en.wikipedia.org/wiki/Software_release_life_cycle#Beta) :bomb: but you can still work with a tech co-op or collective to host some part or all of your online digital services with it. Organisations who want to support the project can get in touch with Co-op Cloud service providers via the following list for a quote on what they're looking for and how much it will cost. Service providers can then factor in some percentage of the cost to co-fund the development of this project. +*Co-op Cloud* is still [beta quality software](https://en.wikipedia.org/wiki/Software_release_life_cycle#Beta) :bomb: but you can still work with a tech co-op or collective to host some part or all of your online digital services with it. Organisations who want to support the project can get in touch with *Co-op Cloud* service providers via the following list for a quote on what they're looking for and how much it will cost. Service providers can then factor in some percentage of the cost to co-fund the development of this project. - [Autonomic Co-op](https://autonomic.zone) (contact: [`helo@autonomic.zone`](mailto:boop@autonomic.zone)) - [makeITsocial](https://makeitsocial.net) (managed hosting, see [price calculator](https://makeitsocial.net/kolli-cloud/)) From 87769148887618d3fb553869c03fe7455c697a10 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 21 Apr 2025 19:49:57 +0200 Subject: [PATCH 61/74] docs: point to project, wording/formatting warning --- docs/maintainers/handbook.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/maintainers/handbook.md b/docs/maintainers/handbook.md index 099fa64..15291a3 100644 --- a/docs/maintainers/handbook.md +++ b/docs/maintainers/handbook.md @@ -374,7 +374,7 @@ And once more, we can validate this tag has been created with `cd ~/.abra/recipe ## How are new recipe versions tested? -This is currently a manual process. Our best estimates are to do a backup and run a test deployment and see how things go. +This is currently a manual process. Our best estimates are to do a backup and run a test deployment and see how things go. [We are working on improving this](https://git.coopcloud.tech/toolshed/-/projects/31). Following the [entry above](/maintainers/handbook/#how-do-i-release-a-new-recipe-version), before running `abra recipe release --publish `, you can deploy the new version of the recipe. You find an app that relies on this recipe and pass `-C/--chaos` to `ugrade` so that it accepts the locally unstaged changes. @@ -398,7 +398,7 @@ And then create a text file which corresponds to the version release, e.g. `1.1. You can also add release notes for the next release into a special file `release/next`. This file will be used when running `abra recipe release`. -!!! warning "Not available previous versions of Abra" +!!! warning "Watch out for old versions of `abra` 🚧" Using `release/next` is only available in > 0.9.x series of `abra`. From a87e54a1d12d4ddc49c998dc7393f7db92db358e Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 21 Apr 2025 20:02:27 +0200 Subject: [PATCH 62/74] docs: v0.10 migration notes --- docs/abra/upgrade.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/abra/upgrade.md b/docs/abra/upgrade.md index d7fee32..5dcb6a2 100644 --- a/docs/abra/upgrade.md +++ b/docs/abra/upgrade.md @@ -55,7 +55,9 @@ And test things work. ### `0.9.x-beta` -> `0.10.x-beta` -> 🎺🎺🎺 Get the [release candidate](https://git.coopcloud.tech/toolshed/abra/releases/tag/0.10.0-rc2-beta) 🎺🎺🎺 +* `abra app deploy` will now report on deployment status in a new realtime + update output. This is a best-effort implementation building on the shifting + sands of the container runtime. Please report issues if you see them! * `abra` will now write the app deployment version to the app env file (`$ABRA_DIR/servers//.env`) against the `TYPE=/RECIPE=` env From 4bcc5a7f04d2fcc06d53bc788e0f1b53929b2540 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 21 Apr 2025 20:02:42 +0200 Subject: [PATCH 63/74] docs: v0.10 operators handbook updates --- docs/operators/handbook.md | 27 +++++++++++++++++++-------- docs/operators/tutorial.md | 7 +++---- 2 files changed, 22 insertions(+), 12 deletions(-) diff --git a/docs/operators/handbook.md b/docs/operators/handbook.md index b39397c..62b2daa 100644 --- a/docs/operators/handbook.md +++ b/docs/operators/handbook.md @@ -486,9 +486,9 @@ abra app secret insert localhost ssl_key v1 localhost.key -f ## Remote recipes -!!! warning "This is only available in the currently unreleased version of `abra`" +!!! warning "Watch out for old versions of `abra` 🚧" - Please see [this issue](https://git.coopcloud.tech/toolshed/organising/issues/583) to track current progress towards a release. All feedback and testing are welcome on this new feature. The design is not finalised yet. + This feature is only available in > 0.10.x series of `abra`. It is possible to specify a remote recipe in your `.env` file: @@ -506,7 +506,9 @@ $ABRA_DIR/recipes/mygit_org_myorg_cool-recipe ## Saving the version to the app `.env` file -!!! warning "This is only available in the currently unreleased version of `abra`" +!!! warning "Watch out for old versions of `abra` 🚧" + + This feature is only available in > 0.10.x series of `abra`. If you `abra app new`/`abra app deploy`/`abra app upgrade`/`abra app rollback`, the version that is deployed will be written to your app `.env` file. You can @@ -531,7 +533,9 @@ with `[version]` `--chaos/-C` or `--ignore-env-version/-i`. ## How is the new deployment version determined? -!!! warning "This is only available in the currently unreleased version of `abra`" +!!! warning "Watch out for old versions of `abra` 🚧" + + This feature is only available in > 0.10.x series of `abra`. ### `.env` version @@ -549,10 +553,10 @@ This is the most flexible command so it can be hard to follow. It is possible to deploy the following kinds of versions with `abra app deploy`: 1. latest recipe version (standard `abra app deploy`) -2. version retrieved from the app `.env` (`abra app deploy` + `TYPE=custom-html:1.7.1+1.27.2`) -3. latest commit (`--chaos/-C` / `abra app deploy` + no released recipe versions) -4. latest commit with unstaged changes (`abra app deploy --chaos/-C`) -5. recipe version or Git hash (`abra app deploy 1.7.1+1.27.2`) +1. version retrieved from the app `.env` (`abra app deploy` + `TYPE=custom-html:1.7.1+1.27.2`) +1. latest commit (`--chaos/-C` / `abra app deploy` + no released recipe versions) +1. latest commit with unstaged changes (`abra app deploy --chaos/-C`) +1. recipe version or Git hash (`abra app deploy 1.7.1+1.27.2`) The app `.env` version is always used as the recipe checkout version if present. @@ -562,6 +566,13 @@ present, then it will be used. This is the *only time* the app `.env` version is used using `abra app deploy`. This is done to reduce unwanted upgrades (we do not automatically choose the latest release). +The version is chosen using the following logic. + +1. version from cli argument +1. version from .env file +1. version from deployed app +1. version from catalogue (if undeployed) + Use `--ignore-env-version/-i` to deploy the latest release version or commit. In all cases 3-5, the app `.env` version is **ignored** as a version candidate. diff --git a/docs/operators/tutorial.md b/docs/operators/tutorial.md index 9d5ae53..1923ed5 100644 --- a/docs/operators/tutorial.md +++ b/docs/operators/tutorial.md @@ -129,16 +129,15 @@ It is important to note that `` here is a publicy accessible doma ??? warning "Can I use arbitrary server names?" - Yes, this is possible. You need to pass `-D` to `server add` and ensure - that your `Host ...` entry in your SSH configuration includes the name. - So, for example: + Yes, this is possible. Snsure that your `Host ...` entry in your SSH + configuration includes the name. So, for example: Host example.com example ... And then: - abra server add -D example + abra server add example You will now have a new `~/.abra/` folder on your local file system which stores all the configuration of your Co-op Cloud instance. From d618da51f6e8427d1d9670c5bd0b1bed6ca7a23d Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 21 Apr 2025 20:04:01 +0200 Subject: [PATCH 64/74] docs: wording --- docs/maintainers/handbook.md | 2 +- docs/operators/handbook.md | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/maintainers/handbook.md b/docs/maintainers/handbook.md index 15291a3..f10c6b4 100644 --- a/docs/maintainers/handbook.md +++ b/docs/maintainers/handbook.md @@ -400,7 +400,7 @@ You can also add release notes for the next release into a special file `release !!! warning "Watch out for old versions of `abra` 🚧" - Using `release/next` is only available in > 0.9.x series of `abra`. + This feature is only available in the > 0.9.x series of `abra`. ## How do I generate the recipe catalogue diff --git a/docs/operators/handbook.md b/docs/operators/handbook.md index 62b2daa..077c6ec 100644 --- a/docs/operators/handbook.md +++ b/docs/operators/handbook.md @@ -488,7 +488,7 @@ abra app secret insert localhost ssl_key v1 localhost.key -f !!! warning "Watch out for old versions of `abra` 🚧" - This feature is only available in > 0.10.x series of `abra`. + This feature is only available in the > 0.10.x series of `abra`. It is possible to specify a remote recipe in your `.env` file: @@ -508,7 +508,7 @@ $ABRA_DIR/recipes/mygit_org_myorg_cool-recipe !!! warning "Watch out for old versions of `abra` 🚧" - This feature is only available in > 0.10.x series of `abra`. + This feature is only available in the > 0.10.x series of `abra`. If you `abra app new`/`abra app deploy`/`abra app upgrade`/`abra app rollback`, the version that is deployed will be written to your app `.env` file. You can @@ -535,7 +535,7 @@ with `[version]` `--chaos/-C` or `--ignore-env-version/-i`. !!! warning "Watch out for old versions of `abra` 🚧" - This feature is only available in > 0.10.x series of `abra`. + This feature is only available in the > 0.10.x series of `abra`. ### `.env` version From 50a0aca694b64f6e988810097ece9549a98116bd Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 21 Apr 2025 20:07:55 +0200 Subject: [PATCH 65/74] docs: wording / less verbose --- docs/operators/handbook.md | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/docs/operators/handbook.md b/docs/operators/handbook.md index 077c6ec..befdd18 100644 --- a/docs/operators/handbook.md +++ b/docs/operators/handbook.md @@ -552,7 +552,7 @@ with `[version]` `--chaos/-C` or `--ignore-env-version/-i`. This is the most flexible command so it can be hard to follow. It is possible to deploy the following kinds of versions with `abra app deploy`: -1. latest recipe version (standard `abra app deploy`) +1. latest recipe version if no `.env` version (standard `abra app deploy`) 1. version retrieved from the app `.env` (`abra app deploy` + `TYPE=custom-html:1.7.1+1.27.2`) 1. latest commit (`--chaos/-C` / `abra app deploy` + no released recipe versions) 1. latest commit with unstaged changes (`abra app deploy --chaos/-C`) @@ -561,19 +561,15 @@ to deploy the following kinds of versions with `abra app deploy`: The app `.env` version is always used as the recipe checkout version if present. -For 2), if the app **is undeployed** and there is an app `.env` version -present, then it will be used. This is the *only time* the app `.env` version -is used using `abra app deploy`. This is done to reduce unwanted upgrades (we -do not automatically choose the latest release). +The version is chosen using the following priority logic. -The version is chosen using the following logic. - -1. version from cli argument -1. version from .env file -1. version from deployed app -1. version from catalogue (if undeployed) +1. cli argument +1. `.env` file +1. deployed app +1. recipe catalogue (if undeployed) Use `--ignore-env-version/-i` to deploy the latest release version or commit. + In all cases 3-5, the app `.env` version is **ignored** as a version candidate. ### `abra app upgrade` From 90686dd52f4aa6105c7b14c21fe661364a995df1 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Mon, 21 Apr 2025 21:12:27 +0200 Subject: [PATCH 66/74] fix: redundant --- docs/abra/upgrade.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/docs/abra/upgrade.md b/docs/abra/upgrade.md index 5dcb6a2..c8b19cd 100644 --- a/docs/abra/upgrade.md +++ b/docs/abra/upgrade.md @@ -55,10 +55,6 @@ And test things work. ### `0.9.x-beta` -> `0.10.x-beta` -* `abra app deploy` will now report on deployment status in a new realtime - update output. This is a best-effort implementation building on the shifting - sands of the container runtime. Please report issues if you see them! - * `abra` will now write the app deployment version to the app env file (`$ABRA_DIR/servers//.env`) against the `TYPE=/RECIPE=` env var. This has a number of implications which are detailed in the [release From ceea72df37b0eaaf266137aea669c7edbbe30cea Mon Sep 17 00:00:00 2001 From: decentral1se Date: Tue, 22 Apr 2025 12:02:43 +0200 Subject: [PATCH 67/74] docs: point to new issue tracker --- docs/abra/trouble.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/abra/trouble.md b/docs/abra/trouble.md index 221a364..8872854 100644 --- a/docs/abra/trouble.md +++ b/docs/abra/trouble.md @@ -4,7 +4,7 @@ title: Troubleshoot ## Where do I report `abra` bugs / feature requests? -You can use [this issue tracker](https://git.coopcloud.tech/toolshed/organising/issues/new/choose). +You can use [this issue tracker](https://git.coopcloud.tech/toolshed/abra/issues/new). ## SSH connection issues? From 141eb762bc37005ddd496eda006eaed457c67276 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Tue, 22 Apr 2025 12:08:13 +0200 Subject: [PATCH 68/74] docs: troubleshooting branch issue Closes https://git.coopcloud.tech/toolshed/docs.coopcloud.tech/issues/272 --- docs/abra/trouble.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/docs/abra/trouble.md b/docs/abra/trouble.md index 8872854..264f38a 100644 --- a/docs/abra/trouble.md +++ b/docs/abra/trouble.md @@ -83,3 +83,21 @@ This appears to be an upstream issue for which we can't do much in `abra` to sol ## Caller path in debug stacktrace doesn't exist Debug stacktrace currently begins with `/drone/` due to CI. Remove the initial `/drone/` and the path is relative to the abra project root. + +## `failed to select default branch` error + +General speaking, this error should happen in the > v0.10.x `abra` version series. You can try upgrading if you're on an old version: `abra upgrade`. + +If you're really stuck, `rm -rf`'ing the relevant recipe repository and catalogue might do the trick. + +``` +$ abra app new foobar +FATA[0000] unable to validate recipe: failed to select default branch in /root/.abra/catalogue +$ rm -rf ~/.abra/recipes/foobar ~/.abra/catalogue +``` + +Otherwise, you can try manually cloning the recipe repository to the correct location. + +``` +$ git clone https://git.coopcloud.tech/coop-cloud/MyCoolRecipe.git ~/.abra/recipes +``` From 10a1dafba21727cc61946b70266ef1d743ab51db Mon Sep 17 00:00:00 2001 From: decentral1se Date: Tue, 22 Apr 2025 12:09:16 +0200 Subject: [PATCH 69/74] fix: wording --- docs/abra/trouble.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/abra/trouble.md b/docs/abra/trouble.md index 264f38a..b888d98 100644 --- a/docs/abra/trouble.md +++ b/docs/abra/trouble.md @@ -86,7 +86,7 @@ Debug stacktrace currently begins with `/drone/` due to CI. Remove the initial ` ## `failed to select default branch` error -General speaking, this error should happen in the > v0.10.x `abra` version series. You can try upgrading if you're on an old version: `abra upgrade`. +General speaking, this error should not happen in the > v0.10.x `abra` version series. You can try upgrading if you're on an old version: `abra upgrade`. If you're really stuck, `rm -rf`'ing the relevant recipe repository and catalogue might do the trick. From 7195d776b0494d422a04e9bb777c6e3db58e7e2d Mon Sep 17 00:00:00 2001 From: decentral1se Date: Tue, 22 Apr 2025 12:09:56 +0200 Subject: [PATCH 70/74] fix: wording --- docs/abra/trouble.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/abra/trouble.md b/docs/abra/trouble.md index b888d98..d7fe395 100644 --- a/docs/abra/trouble.md +++ b/docs/abra/trouble.md @@ -84,7 +84,7 @@ This appears to be an upstream issue for which we can't do much in `abra` to sol Debug stacktrace currently begins with `/drone/` due to CI. Remove the initial `/drone/` and the path is relative to the abra project root. -## `failed to select default branch` error +## "Failed to select default branch" General speaking, this error should not happen in the > v0.10.x `abra` version series. You can try upgrading if you're on an old version: `abra upgrade`. From f37a71b635212f7ebbdfc7613a839550c37061aa Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sun, 27 Apr 2025 13:08:41 +0200 Subject: [PATCH 71/74] docs: point to Counter Cloud Strategies --- docs/intro/strategy.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/intro/strategy.md b/docs/intro/strategy.md index 4afec4d..a495a7d 100644 --- a/docs/intro/strategy.md +++ b/docs/intro/strategy.md @@ -6,7 +6,7 @@ From our experiences working and organising as Autonomic, the tech co-op who [in ## Technological Saviors? -The urgency to build an alternative is based on a shared analysis of our current reality. We briefly summarise the main points below. +The urgency to build an alternative to ["corporate clouds"](https://2023.transmediale.de/en/event/counter-cloud-strategies) is based on an anaylsis which we summarise briefly. We begin with the monopolisation of our digital lives, the stranglehold of corporate control (aka [GAFAM](https://degooglisons-internet.org/en/)), which represents a grave threat to our collective freedom, our societies and our hopes for a good life on planet earth. From 6f29f3c3ce71c33e53162dd47ccc3b84bfe73c57 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Sun, 27 Apr 2025 13:11:57 +0200 Subject: [PATCH 72/74] docs: typo --- docs/intro/strategy.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/intro/strategy.md b/docs/intro/strategy.md index a495a7d..736e514 100644 --- a/docs/intro/strategy.md +++ b/docs/intro/strategy.md @@ -6,7 +6,7 @@ From our experiences working and organising as Autonomic, the tech co-op who [in ## Technological Saviors? -The urgency to build an alternative to ["corporate clouds"](https://2023.transmediale.de/en/event/counter-cloud-strategies) is based on an anaylsis which we summarise briefly. +The urgency to build an alternative to ["corporate clouds"](https://2023.transmediale.de/en/event/counter-cloud-strategies) is based on an analysis which we summarise briefly here. We begin with the monopolisation of our digital lives, the stranglehold of corporate control (aka [GAFAM](https://degooglisons-internet.org/en/)), which represents a grave threat to our collective freedom, our societies and our hopes for a good life on planet earth. From 5d267e682fca5fc1df744105a8effe58fa13fda4 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Thu, 1 May 2025 07:56:45 +0200 Subject: [PATCH 73/74] fix: typo See https://git.coopcloud.tech/toolshed/coopcloud.tech/pulls/53#issuecomment-24331 --- docs/federation/resolutions/passed/029.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/federation/resolutions/passed/029.md b/docs/federation/resolutions/passed/029.md index d67e821..6fd979a 100644 --- a/docs/federation/resolutions/passed/029.md +++ b/docs/federation/resolutions/passed/029.md @@ -24,7 +24,7 @@ Federation members will decide on who fills the role based on an evaluation of t * Instigating handover from Autonomic finance admin * Leading a discussion which establishes a shared understanding of what financial sustainability means for the federation today with associated documentation * Designing and implementing a new federation membership fees system which supports financial sustainability and is passed with a large decision -* Contribuiting to the Co-op Cloud [wiki](https://docs.coopcloud.tech) (training provided) +* Contributing to the Co-op Cloud [wiki](https://docs.coopcloud.tech) (training provided) * Making sure invoices are submitted correctly and approving them via the Co-op Cloud Open Collective (OC) * Managing budgets and faciliating timetracking against those budgets (e.g. https://kimai.coopcloud.tech) * Herding cats From fe1db55f69d34b8abe06911a2100b70836cf1313 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Thu, 1 May 2025 07:57:32 +0200 Subject: [PATCH 74/74] fix: typo See https://git.coopcloud.tech/toolshed/coopcloud.tech/pulls/53#issuecomment-24332 --- docs/federation/resolutions/passed/029.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/federation/resolutions/passed/029.md b/docs/federation/resolutions/passed/029.md index 6fd979a..e2685b3 100644 --- a/docs/federation/resolutions/passed/029.md +++ b/docs/federation/resolutions/passed/029.md @@ -26,7 +26,7 @@ Federation members will decide on who fills the role based on an evaluation of t * Designing and implementing a new federation membership fees system which supports financial sustainability and is passed with a large decision * Contributing to the Co-op Cloud [wiki](https://docs.coopcloud.tech) (training provided) * Making sure invoices are submitted correctly and approving them via the Co-op Cloud Open Collective (OC) -* Managing budgets and faciliating timetracking against those budgets (e.g. https://kimai.coopcloud.tech) +* Managing budgets and facilitating timetracking against those budgets (e.g. https://kimai.coopcloud.tech) * Herding cats * Timetrack to be done on the activity level via our [Kimai](https://kimai.coopcloud.tech) for accountability * Invoicing for your time each month to the Co-op Cloud OC