Compare commits

..

20 Commits

Author SHA1 Message Date
basebuilder a3d16bd0b6 Add basic Decap CMS files 2024-02-05 18:29:35 +01:00
decentral1se 39ab74b9b8 fix: bump also Dockerfile deps 2024-02-05 13:39:03 +01:00
basebuilder f919f0c10b add Grid style to Operators, Maintainers, and Organisers 2024-02-04 23:21:40 +01:00
basebuilder d683a7e33e add & update theme dependencies 2024-02-04 23:20:30 +01:00
basebuilder 7f50082972 expand info in README 2024-02-03 16:00:40 +01:00
decentral1se 31a502cf6f feat: R017 2024-01-30 07:32:19 +01:00
decentral1se 304143d151 fix: woops too soon 2024-01-29 16:06:27 +01:00
decentral1se 1c09d09eeb docs: add new collectives 2024-01-29 16:03:26 +01:00
decentral1se 72e1c448df feat: R015 passed 2024-01-28 11:06:08 +01:00
decentral1se 259ece5a9f fix: budget number 2024-01-27 18:57:30 +01:00
decentral1se dec3335a87 fix: budget number 2024-01-27 18:56:36 +01:00
decentral1se 7be11d48a1 fix: lol lists & separator - chaos 2024-01-27 14:51:42 +01:00
decentral1se 02002fcde5 fix: lists 2024-01-27 14:50:01 +01:00
decentral1se 0478269b31 fix: typo 2024-01-27 14:47:37 +01:00
decentral1se d0fd7403d1 fix: titles 2024-01-27 14:44:52 +01:00
decentral1se 861eddaa71 feat: R016 2024-01-27 14:41:27 +01:00
decentral1se 139147d23d feat: add R015 2024-01-25 13:58:21 +01:00
3wordchant 2f21edf2b9 Update resolution 013 2024-01-09 23:13:03 -03:00
3wordchant f5cfe1f92b Fix index for moved resolution 014 2024-01-09 23:07:05 -03:00
3wordchant f6798cbe2d Move 014 to "passed" 2024-01-09 01:00:53 -03:00
18 changed files with 250 additions and 55 deletions
+4 -3
View File
@@ -1,4 +1,4 @@
FROM squidfunk/mkdocs-material:9.4.14
FROM squidfunk/mkdocs-material:9.5.7
EXPOSE 8000
@@ -9,5 +9,6 @@ WORKDIR /docs
RUN apk add --no-cache curl
RUN pip install \
mkdocs-awesome-pages-plugin==2.9.1 \
mkdocs-material-extensions==1.1.1
mkdocs-material~=9.5.7 \
mkdocs-material-extensions~=1.3.1 \
mkdocs-awesome-pages-plugin==2.9.2
+12 -4
View File
@@ -1,13 +1,21 @@
# docs.coopcloud.tech
# 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)
> https://docs.coopcloud.tech
View: [docs.coopcloud.tech](https://docs.coopcloud.tech)
## hacking
## Developing / Hacking
Co-op Cloud's docs are created with the [mkdocs-material](https://squidfunk.github.io/mkdocs-material/) framework.
To install dependencies and serve local build of site, simply run:
```
make
```
Theme docs are [here](https://squidfunk.github.io/mkdocs-material/setup/changing-the-colors/) and [there](https://squidfunk.github.io/mkdocs-material/reference/).
Useful docs for theming and content reference:
- [Changing the colors](https://squidfunk.github.io/mkdocs-material/setup/changing-the-colors/)
- [Reference](https://squidfunk.github.io/mkdocs-material/reference/)
+26
View File
@@ -0,0 +1,26 @@
display_url: "https://docs.coopcloud.tech/"
logo_url: "/img/coop_cloud_logo_pink.png"
backend:
name: gitea
repo: coop-cloud/docs.coopcloud.tech
branch: main
app_id: c5bb5fe3-d24d-4246-b790-7455a271d1e8
site_domain: docs.coopcloud.tech
api_root: https://git.coopcloud.tech/api/v1
base_url: https://git.coopcloud.tech
auth_endpoint: https://git.coopcloud.tech/login/oauth/authorize
media_folder: img
public_folder: /img
collections:
- name: 'docs'
label: 'Docs'
create: true
folder: 'docs/'
slug: '{{slug}}'
fields:
- label: 'Title'
name: 'title'
widget: 'string'
- label: "Body"
name: "body"
widget: "markdown"
+12
View File
@@ -0,0 +1,12 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="robots" content="noindex" />
<title>Co-op Cloud: Docs Editor</title>
</head>
<body>
<script src="https://unpkg.com/decap-cms@latest/dist/decap-cms.js"></script>
</body>
</html>
+1
View File
@@ -15,3 +15,4 @@ title: Membership
| ruangrupa | - | - | Henry `@babystepper:matrix.org` |
| UTAW | - | - | `@javielico:matrix.org` |
| ??? | - | - | `@mirsal:1312.media` |
| Klasse & Methode | - | - | `@p4u1_f4u1:matrix.org` |
@@ -1,25 +1,25 @@
---
title: "Resolution 013: Budget 007: Operator sync - 2023-10-14"
title: "Resolution 013: Budget 007: Operator sync - 2024-01-??"
---
- Deadline: 2023-10-28
!!! note
This resolution has been amended! The main change was to remove automatic
git synchronisation; please see [the file
history](https://git.coopcloud.tech/coop-cloud/docs.coopcloud.tech/commits/branch/main/docs/federation/resolutions/in-progress/013.md) for a full run-down.
- Deadline: 2024-01-XX
- Size: Large
### Summary
As highlighted in several tickets (e.g. [`#434`](https://git.coopcloud.tech/coop-cloud/organising/issues/434), [`#467`](https://git.coopcloud.tech/coop-cloud/organising/issues/467)), several operators working together on the same server routinely run into deployment instability. This is due to the fact that we do not store or sync the deployment version of the apps.
As highlighted in several tickets (e.g. [`#434`](https://git.coopcloud.tech/coop-cloud/organising/issues/434), [`#467`](https://git.coopcloud.tech/coop-cloud/organising/issues/467)), several operators working together on the same server routinely run into deployment instability. This is due to the fact that we do not store the deployment version of the apps.
With this proposal, we would like to address the synchronisation of app deployment versions. This is being called "Operator sync". What follows is the design proposal which has already received feedback from operators on [this pad](https://pad.riseup.net/p/IebZQkpe3OOpYyVT8f1j-keep).
### Details (Budget 007)
We support a config file (`$ABRA_DIR/config.yml`) which has these defaults:
```yaml
---
operator:
sync: false
```
We add support a config file (`$ABRA_DIR/config.yml`) which has these defaults:
We also add a `abra config` command which has the following shape:
@@ -44,22 +44,12 @@ There is also a new command `abra app sync <domain>` which triggers a synchronis
When `abra app deploy/upgrade/rollback/sync` is run, here's what we do:
* `git pull` on the sync repository
* if there are changes, pull them in & log them
* if there is a merge conflict, bail out and ask operator to resolve them
`abra` will search for Git repositories under `$ABRA_DIR/servers/...`. A single Git repository at the root (`$ABRA_DIR/servers/.git`) and on the individual server level (`$ABRA_DIR/servers/example.com/.git`) are supported. Both solution work alongside each other and symlinks are resolved.
The way to avoid merge conflicts will be to never move the `OPERATOR_SYNC_VERSION` env var (see below) from the line it is on in the app env config. `abra` will always insert it just under the `TYPE` env var.
The initial implementation asks operators to initialise their own Git repositories.
* Read the `OPERATOR_SYNC_VERSION` env var as the version to deploy / upgrade from / rollback from
* upgrade: if deployed version does not match `OPERATOR_SYNC_VERSION`, warn before overview
* rollback: same as above!
* Run the deployment
* if successful, record a new `OPERATOR_SYNC_VERSION`, commit & push the changes
* if successful, record a new `OPERATOR_SYNC_VERSION`
* if unsuccessful, do not record a `OPERATOR_SYNC_VERSION` and ask operator to resolve
If `--chaos` is passed, we use the short commit hash instead of the version label.
@@ -74,10 +64,10 @@ OPERATOR_SYNC_VERSION=4.0.0+v1.93.0 # managed by Abra
Operator documentation will also be provided.
**Budget amount**: 400 EUR (20 hrs * 20 EUR/hr)
**Budget amount**: 200 EUR (10 hrs * 20 EUR/hr)
**Who will implement this**: ??? (was `@decentral1se` but no more)
**Who will implement this**: (someone?)
**When will the money be spent**: Before mid November 2023.
**When will the money be spent**: Before mid-February 2024
**What is the money for**: Implementing the first steps of operator sync.
@@ -0,0 +1,46 @@
---
title: "Resolution 016: Budget 008: Backup-bot-two Documentation and Specification - 27-01-2024"
---
- Deadline: 10th February 2024
- Size: Large
### Summary
> (Co-written by p4u1 & d1)
The new backup-bot-two implementation is nearly finished. The only remaining step is to implement restore functionality. In a recently meeting with Moritz, p4u1 & d1, we discussed how to design and implement it. The mintues are [here](https://pad.riseup.net/p/UEC2JUPGb6tmRCZ7RX9X-keep).
In this meeting, we realised that there is already a lot of implicit, undocumented knowledge about how backup-bot-two & abra work together. How the restore interface will work is more or less designed in the meeting, with general agreement.
In order to communicate that design, we feel we need to have clear documentation and a specification on how things work. This will make sure we have consensus before commiting more budget to implementing the final step. It will also help operators pick up, use & extend backup-bot-two in the future.
In this resolution, we want to propose to write the initial documentation and specification for the new [backup-bot-two](https://git.coopcloud.tech/coop-cloud/backup-bot-two/).
The existing documentation for the old backupbot should be taken into account wherever possible.
### Details (Budget 008)
Documentation should be for:
- Operators using the backup-bot-two
- Maintainers of recipes
The documentation should have:
- Examples on using Abra with the backupbot
- Examples of recipe configurations
- Detailed explanation of features and their limitations
The Specification should include:
- Detailed specification on how annotations work
- With the specification it should be possible to implement backup and restore
without looking at the backupbot-two code
---
- Budget amount: 200 EUR (10 hrs * 20 EUR/hr)
- Who will implement this: p4u1
- When will the money be spent: Before the end of February
- What is the money for: Writing documentation and specification for backup-bot-two
@@ -0,0 +1,19 @@
---
title: "Resolution 17: BeWater joins the Co-op Cloud Federation - 30-01-2024"
---
- Deadline: 13-02-2024
- Size: Large
### Summary
[BeWater Co-op](https://bewater.contact).
`@decentral1se` is a member and has been active in Abra hacking & coordination
on several issues. BeWater maintains several small-scale Co-op Cloud
deployments.
### Details
BeWater is just starting and we're currently unable to pay the membership fees
at this time and ask for a waiver for 1 year. To be revisited on 30-01-2025.
@@ -5,7 +5,6 @@ title: "Resolution 014: Budget 008: Critical Fixes - 2023-12-06"
- Deadline: 2023-12-24
- Size: Large
## Summary
We (decentral1se, wykwit, moritz, knoflook) have identified bugs and lacking features that are a big obstacle to using abra.
+19
View File
@@ -0,0 +1,19 @@
---
title: "Resolution 15: Klasse & Methode joins the Co-op Cloud Federation - 25-01-2024"
---
- Deadline: 08-02-2024
- Size: Large
### Summary
[Klasse & Methode - IT Kollektiv Stuttgart](https://codeberg.org/Klasse-Methode).
`@p4u1` has been active in Abra hacking & coordination on several issues. K & M
manage a Co-op Cloud deployment with 9 apps running at the time of the
proposal.
### Details
K & M is volunteer based and are unable to pay the membership fees at this time
and ask for a waiver for 1 year. To be revisited on 25-01-2025.
+18 -3
View File
@@ -1,8 +1,23 @@
---
title: Maintainers guide
title: Maintainers Guide
---
Welcome to the maintainers guide! Maintainers are typically individuals who have a stake in building up and maintaining our digital configuration commons, the recipe configurations. Maintainers help keep recipes configurations up to date, respond to issues in a timely manner, help new users within the community and recruit new maintainers when possible.
- [New maintainers tutorial](/maintainers/tutorial): If you want to package a recipe and/or become a maintainer, start here :rocket:
- [Packaging handbook](/maintainers/handbook): One-stop shop for all you need to know to package recipes :package:
<div class="grid cards" markdown>
- __New maintainers tutorial__
If you want to package a recipe and/or become a maintainer, start here :rocket:
[Get Started](/maintainers/tutorial){ .md-button .md-button--primary }
- __Packaging handbook__
One-stop shop for all you need to know to package recipes :package:
[Read Handbook](/maintainers/handbook){ .md-button .md-button--primary }
</div>
Maintainers are encouraged to submit documentation patches! Sharing is caring :sparkling_heart:
+1 -1
View File
@@ -1,5 +1,5 @@
---
title: Operations handbook
title: Operators Handbook
---
## Understanding `~/.abra`
+18 -3
View File
@@ -2,7 +2,22 @@
title: Operators Guide
---
Welcome to the operators guide! Operators are typically individuals, members of tech co-ops or collectives who provide services powered by Co-op Cloud. This documentation is meant to help new & experienced operators manage their deployments as well as provide a space for sharing tricks & tips for keeping things running smoothly. Operators are encouraged to submit documentation patches! Sharing is caring :sparkling_heart:
Welcome to the operators guide! Operators are typically individuals, members of tech co-ops or collectives who provide services powered by Co-op Cloud. This documentation is meant to help new & experienced operators manage their deployments as well as provide a space for sharing tricks & tips for keeping things running smoothly.
- [New operators tutorial](/operators/tutorial): If you want to become an operator, start here :rocket:
- [Operations handbook](/operators/handbook): One-stop shop for all you need to know to manage a deployment :ribbon:
<div class="grid cards" markdown>
- __New Operators Tutorial__
If you want to become an operator, start your journey here :rocket:
[Get started](tutorial.md){ .md-button .md-button--primary }
- __Operators Handbook__
One-stop shop for all you need to know to manage a deployment :ribbon:
[Read Handbook](handbook.md){ .md-button .md-button--primary }
</div>
Operators are encouraged to submit documentation patches! Sharing is caring :sparkling_heart:
+1 -1
View File
@@ -1,5 +1,5 @@
---
title: New operators tutorial
title: New Operators Tutorial
---
## The moving parts
+16 -2
View File
@@ -4,6 +4,20 @@ title: Organisers Guide
Welcome to the organisers guide! Organisers are folks who focus on the social work in the project. Speaking for the project at talks, helping new tech co-ops & collectives join, keeping an eye out for funding opportunities, seeing what things come up in the community chats, etc. It's important work.
We're still working out what it looks like to do this kind of work in the project. If you like the idea of this kinda of work and/or are already doing it, please send patches to improve this documentation :rocket:
<div class="grid cards" markdown>
- [Organising handbook](/organisers/handbook): One-stop shop for all you need to know to organise in the community :sparkles:
- __Organisers handbook__
One-stop shop for all you need to know to organise in the community :sparkles:
[Read Handbook](/organisers/handbook){ .md-button .md-button--primary }
- __Say Hello First__
If you like what you see, but are not sure how to best contribute :speech_left:
[Get In Touch](/get-involved/){ .md-button .md-button--primary }
</div>
We're still working out what it looks like to do this kind of work in the project. If you like the idea of this kinda of work and/or are already doing it, please send patches to improve this documentation :rocket:
+8
View File
@@ -4,6 +4,14 @@
--md-primary-fg-color--dark: #ee4a33;
}
/* Button styling tweaks */
.md-button {
margin: .25em !important;
padding: .15em .6em !important;
font-size: .85em !important;
}
/* Navbar styling tweaks */
.md-search__form {
+21 -10
View File
@@ -26,20 +26,28 @@ theme:
copyright: Copyleft 2023 Co-op Cloud
markdown_extensions:
- meta
- admonition
- attr_list
- codehilite:
guess_lang: false
- def_list
- footnotes
- md_in_html
- meta
- toc:
permalink: true
- attr_list
- pymdownx.tabbed
- pymdownx.superfences
- pymdownx.tilde
- pymdownx.magiclink
- pymdownx.betterem:
smart_enable: all
- pymdownx.details
- pymdownx.emoji:
emoji_index: !!python/name:materialx.emoji.twemoji
emoji_generator: !!python/name:materialx.emoji.to_svg
emoji_generator: !!python/name:material.extensions.emoji.to_svg
emoji_index: !!python/name:material.extensions.emoji.twemoji
- pymdownx.magiclink
- pymdownx.mark
- pymdownx.smartsymbols
- pymdownx.superfences
- pymdownx.tabbed
- pymdownx.tilde
nav:
- "Introduction":
@@ -101,12 +109,15 @@ nav:
- federation/resolutions/passed/010.md
- federation/resolutions/passed/011.md
- federation/resolutions/passed/012.md
- federation/resolutions/in-progress/014.md
- federation/resolutions/passed/014.md
- federation/resolutions/passed/015.md
- "In progress":
- federation/resolutions/in-progress/index.md
- federation/resolutions/in-progress/013.md
- federation/resolutions/in-progress/016.md
- federation/resolutions/in-progress/017.md
- "Draft":
- federation/resolutions/drafts/index.md
- federation/resolutions/drafts/013.md
- "Finance": federation/finance.md
- "Membership": federation/membership.md
- "Minutes":
+14 -3
View File
@@ -1,4 +1,15 @@
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-material-extensions==1.3.1
mkdocs-material==9.4.14
mkdocs==1.5.3
pygments~=2.16
pymdown-extensions~=10.2
# Requirements for plugins
babel~=2.10
colorama~=0.4
paginate~=0.5
regex>=2022.4
requests~=2.26