Compare commits
48 Commits
wrap-up-cc
...
main
Author | SHA1 | Date | |
---|---|---|---|
fbe395ca7d | |||
3c7a7fabb2 | |||
9f7924af56 | |||
bd20a3f8f2 | |||
32a209f04f | |||
852002171e | |||
d111f55448 | |||
3c691b0605 | |||
5d0c7a851a | |||
67bacf454b | |||
8fa5ff8ebf | |||
13b44e49ad | |||
ab3a15c751 | |||
3631cef540 | |||
c1a479ff27 | |||
5881a5bd21 | |||
9fb33be7fb | |||
6e9d66dfd2 | |||
666464f18c | |||
7ca4786dd3 | |||
fc3e2918c9 | |||
86023ee113 | |||
e775d5cc77 | |||
161dfd53ad | |||
76035f8f4d | |||
b67f55facd | |||
e85a2ed84e | |||
6bef2696fb | |||
d066d9143f | |||
00a32cf563 | |||
630045649a | |||
39363fb625 | |||
b9632f54d1 | |||
672f63e3b4 | |||
e3cc0e5c8f | |||
ab526d3626 | |||
a9844bba1f | |||
77e31bfbc3 | |||
bc15488129 | |||
458399ca21 | |||
8266f909f2 | |||
c9c279d363 | |||
9f7037eebd | |||
7764c12a64 | |||
dc416fb45c | |||
793d25f098 | |||
b522c93e7f | |||
d0c5ec8cfc |
26
.drone.yml
@ -5,35 +5,23 @@ steps:
|
||||
- name: bundle static
|
||||
image: plugins/docker
|
||||
settings:
|
||||
username: thecoopcloud
|
||||
username: abra-bot
|
||||
password:
|
||||
from_secret: thecoopcloud_password
|
||||
repo: thecoopcloud/coopcloud.tech
|
||||
from_secret: git_coopcloud_tech_token_abra_bot
|
||||
repo: git.coopcloud.tech/toolshed/coopcloud.tech
|
||||
tags: latest
|
||||
registry: git.coopcloud.tech
|
||||
|
||||
- name: deployment
|
||||
image: decentral1se/stack-ssh-deploy:latest
|
||||
image: git.coopcloud.tech/coop-cloud/stack-ssh-deploy:latest
|
||||
settings:
|
||||
stack: coop_cloud_site
|
||||
host: swarm-0.coopcloud.tech
|
||||
deploy_key:
|
||||
from_secret: drone_ssh_swarm.autonomic.zone
|
||||
from_secret: drone_ssh_swarm-0_coopcloud_tech
|
||||
depends_on:
|
||||
- bundle static
|
||||
|
||||
- name: notify coopcloud-dev on failure
|
||||
image: plugins/matrix
|
||||
settings:
|
||||
homeserver: https://matrix.autonomic.zone
|
||||
roomid: "IFazIpLtxiScqbHqoa:autonomic.zone"
|
||||
userid: "@autono-bot:autonomic.zone"
|
||||
accesstoken:
|
||||
from_secret: autono_bot_access_token
|
||||
depends_on:
|
||||
- bundle static
|
||||
- deployment
|
||||
when:
|
||||
status:
|
||||
- failure
|
||||
trigger:
|
||||
branch:
|
||||
- main
|
||||
|
14
README.md
@ -1,6 +1,6 @@
|
||||
# coopcloud.tech
|
||||
|
||||
[](https://build.coopcloud.tech/coop-cloud/coopcloud.tech)
|
||||
[](https://build.coopcloud.tech/toolshed/coopcloud.tech)
|
||||
|
||||
> https://coopcloud.tech
|
||||
|
||||
@ -16,12 +16,14 @@ $ hugo server
|
||||
|
||||
## Deploy me manually to the prod site
|
||||
|
||||
Need to have a docker context that points to swarm.autonomic.zone. To have permissions to push the image, need to use `docker login` using the creds in the pass store at `logins/dockerhub`
|
||||
Need to have a docker context that points to `swarm-0.coopcloud.tech`.
|
||||
|
||||
To have permissions to push the image, need to use `docker login` using your Gitea credentials
|
||||
|
||||
```bash
|
||||
docker build -t thecoopcloud/coopcloud.tech:latest .
|
||||
docker push thecoopcloud/coopcloud.tech:latest
|
||||
DOCKER_CONTEXT=autonomic-swarm docker stack deploy -c compose.yml coop_cloud_site
|
||||
docker build -t git.coopcloud.tech/toolshed/coopcloud.tech .
|
||||
docker push git.coopcloud.tech/toolshed/coopcloud.tech
|
||||
DOCKER_CONTEXT=swarm-0.coopcloud.tech docker stack deploy -c compose.yml coop_cloud_site
|
||||
```
|
||||
|
||||
The site should auto-deploy though [over here](https://build.coopcloud.tech/coop-cloud/coopcloud.tech).
|
||||
The site should auto-deploy though [over here](https://build.coopcloud.tech/toolshed/coopcloud.tech).
|
||||
|
@ -3,7 +3,7 @@ version: "3.8"
|
||||
|
||||
services:
|
||||
app:
|
||||
image: thecoopcloud/coopcloud.tech:latest
|
||||
image: git.coopcloud.tech/toolshed/coopcloud.tech:latest
|
||||
networks:
|
||||
- proxy
|
||||
healthcheck:
|
||||
|
21
config.toml
@ -4,20 +4,28 @@ title = "The Co-op Cloud"
|
||||
theme = "coopcloud.tech"
|
||||
enableemoji = true
|
||||
[menu]
|
||||
[[menu.main]]
|
||||
name = "Git"
|
||||
url = "https://git.coopcloud.tech"
|
||||
weight = 1
|
||||
[[menu.main]]
|
||||
name = "Docs"
|
||||
url = "https://docs.coopcloud.tech"
|
||||
weight = 1
|
||||
weight = 2
|
||||
[[menu.main]]
|
||||
name = "Recipes"
|
||||
url = "https://recipes.coopcloud.tech"
|
||||
weight = 3
|
||||
[[menu.main]]
|
||||
name = "Blog"
|
||||
url = "/blog/"
|
||||
weight = 2
|
||||
weight = 4
|
||||
|
||||
[params]
|
||||
[params.links]
|
||||
docs = "https://docs.coopcloud.tech/"
|
||||
docsfaq = "https://docs.coopcloud.tech/intro/faq/"
|
||||
getinvolved = "https://docs.coopcloud.tech/get-involved/"
|
||||
getinvolved = "https://docs.coopcloud.tech/intro/get-involved/"
|
||||
autonomicSite = "https://autonomic.zone"
|
||||
|
||||
[[params.links.footer]]
|
||||
@ -33,8 +41,11 @@ enableemoji = true
|
||||
name = "Mastodon"
|
||||
link = "https://social.coop/@coopcloud"
|
||||
[[params.links.footer]]
|
||||
name = "Twitter"
|
||||
link = "https://twitter.com/coop_cloud"
|
||||
name = "RSS"
|
||||
link = "https://coopcloud.tech/blog/index.xml"
|
||||
|
||||
[Permalinks]
|
||||
code = "/:filename/"
|
||||
|
||||
[markup.goldmark.renderer]
|
||||
unsafe = true
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
title: "April 2023 funding report"
|
||||
date: 2023-01-02T11:32:59+02:00
|
||||
date: 2023-04-13T11:32:59+02:00
|
||||
draft: false
|
||||
image: "/img/comp-squat.jpg"
|
||||
imageCredit: "Image from the Outdoor Computing Club collection by Fletcher Bach (are.na/fletcher-bach)."
|
||||
@ -17,7 +17,7 @@ At the start of 2023, we announced [our next major round of funding](https://coo
|
||||
|
||||
## Tooling updates
|
||||
|
||||
There’s a new `abra` available and if you haven’t upgraded, [please go ahead](https://docs.coopcloud.tech/abra/upgrade/)! There’s a [migration guide](https://docs.coopcloud.tech/abra/upgrade/#06x-beta-07x-beta) available and the full changelog is [here](https://git.coopcloud.tech/coop-cloud/abra/releases/tag/0.7.0-beta).
|
||||
There’s a new `abra` available and if you haven’t upgraded, [please go ahead](https://docs.coopcloud.tech/abra/upgrade/)! There’s a [migration guide](https://docs.coopcloud.tech/abra/upgrade/#06x-beta-07x-beta) available and the full changelog is [here](https://git.coopcloud.tech/coop-cloud/abra/releases/tag/0.7.0-beta).
|
||||
|
||||
The idea behind the `0.7.x` series of `abra` was to fix several critical bugs and also re-factor - and, in some cases, remove - some of the more unreliable parts of the tool. Some of the main improvements are:
|
||||
|
||||
@ -29,9 +29,11 @@ The idea behind the `0.7.x` series of `abra` was to fix several critical bugs an
|
||||
|
||||
Lastly, we’re also happy to share news of `kadabra`, a server-side companion tool which is available for general alpha-testing (here be dragons!) which has been developed by `@Moritz`, a member of [Local-IT](https://local-it.org). Thank you `@Moritz` and Local-IT!
|
||||
|
||||
`kadabra` is about helping perform automatic upgrades of apps in your Co-op Cloud deployment. `abra` now attaches some extra metadata to the deployed app, and `kadabra` can read that and make a decision about whether or not to perform an automated upgrade. It’s all new, and we welcome brave alpha-testers to check it out!
|
||||
`kadabra` is about helping perform automatic upgrades of apps in your Co-op Cloud deployment. `abra` now attaches some extra metadata to the deployed app, and `kadabra` can read that and make a decision about whether or not to perform an automated upgrade. It’s all new, and we welcome brave alpha-testers to check it out!
|
||||
|
||||
## The Co-op Cloud Federation bootstrap meeting
|
||||
## The Federation bootstrap meeting
|
||||
|
||||
> Update: read more about our progress on [this post](/blog/federation-bootstrapped/)
|
||||
|
||||
We’re delighted to announce that we have finally bootstrapped the federation 🎉 The process is far from over, but the wheels are now officially turning: we had 13 in attendance at the founding meeting, representing 7 collectives.
|
||||
|
||||
@ -51,7 +53,7 @@ For the federation, there will be more discussions and meetings coming up soon.
|
||||
|
||||
## Get Radical with us
|
||||
|
||||
We'd love to see more folks [get involved](https://docs.coopcloud.tech/get-involved/) :tada:
|
||||
We'd love to see more folks [get involved](https://docs.coopcloud.tech/intro/get-involved/) :tada:
|
||||
|
||||
If you're thinking about setting up a technology co-op, you have a software stack sitting around waiting for you to pick up now; we have the technology! It's built by tech co-ops for tech co-ops. If you're curious but don't know where to start, [get in touch](https://docs.coopcloud.tech/intro/contact/) anyway!
|
||||
|
@ -106,7 +106,7 @@ Lists are always incomplete but we'll try anyway! Here is the cast of Co-op Clou
|
||||
|
||||
### [Compensating contributors](https://pad.autonomic.zone/s/C3uuqfSCk#Compensating-contributors)
|
||||
|
||||
We didn't want to be another project which asks people to do free work them. Instead, we set up an [Open Collective](https://opencollective.com/coop-cloud), [wrote clear documentation](https://docs.coopcloud.tech/get-involved/#compensation) and simply paid people for their contributions!
|
||||
We didn't want to be another project which asks people to do free work them. Instead, we set up an [Open Collective](https://opencollective.com/coop-cloud), [wrote clear documentation](https://docs.coopcloud.tech/intro/get-involved/#compensation) and simply paid people for their contributions!
|
||||
|
||||
We're proud to report that we paid out around 2,000 euros worth of funding for work done by external contributors. It was a pleasure to open up space for people to actually get paid for their free software work and to re-distribute the available funding to other individuals, groups and projects.
|
||||
|
||||
@ -206,7 +206,7 @@ As members of [Autonomic](https://autonomic.zone/), the idea of Co-op Cloud was
|
||||
|
||||
## Get Radical with us
|
||||
|
||||
We'd love to see more folks [get involved](https://docs.coopcloud.tech/get-involved/) :tada:
|
||||
We'd love to see more folks [get involved](https://docs.coopcloud.tech/intro/get-involved/) :tada:
|
||||
|
||||
If you're thinking about setting up a technology co-op, you have a software stack sitting around waiting for you to pick up now. We have the technology. It's built by tech co-ops for tech co-ops. If you're curious but don't know where to start, [get in touch](https://docs.coopcloud.tech/intro/contact/) anyway!
|
||||
|
||||
|
44
content/blog/federation-bootstrapped.md
Normal file
@ -0,0 +1,44 @@
|
||||
---
|
||||
title: "The Federation is bootstrapped"
|
||||
date: 2023-04-17T11:32:59+02:00
|
||||
draft: false
|
||||
image: "/img/solifedi.jpg"
|
||||
imageCredit: "Solidarity by Roger Peet (instagram.com/toosphexy)"
|
||||
description: "The democratic wheels are turning."
|
||||
---
|
||||
|
||||
The democratic wheels are turning. We've successfully had the Federation Boostrap ™ meeting and things are up and running! Here's what we now know.
|
||||
|
||||
<!--more-->
|
||||
|
||||
### Public documentation
|
||||
|
||||
As of [Resolution 005](https://docs.coopcloud.tech/federation/resolutions/passed/005/), we now have public documentation for the federation.
|
||||
|
||||
Grab a beverage and dive in on [`docs.coopcloud.tech/federation`](https://docs.coopcloud.tech/federation).
|
||||
|
||||
### Decision making
|
||||
|
||||
In the [bootstrap meeting](https://docs.coopcloud.tech/federation/minutes/2022-03-03/), we decided on a decision making protocol in [Resolution 001](https://docs.coopcloud.tech/federation/resolutions/passed/001/). This has since been put to great use and we're seeing resolutions coming in and getting voted on. All resolutions that are passed are documented over [here](https://docs.coopcloud.tech/federation/resolutions/).
|
||||
|
||||
### Membership & dues
|
||||
|
||||
The federation currently has [9 members](https://docs.coopcloud.tech/federation/membership/) 🤓 As per [Resolution 002](https://docs.coopcloud.tech/federation/resolutions/passed/002/), all members present at the [bootstrap meeting](https://docs.coopcloud.tech/federation/minutes/2022-03-03/) are now members. Thanks everyone for turning up and joining in!
|
||||
|
||||
We've done some Open Collective adminstration and It is now possible to pay membership dues 🤑 Please submit an expense on behalf of your collective against the "Federation membership dues" tier. You can do that by clicking [here](https://opencollective.com/coop-cloud/contribute/federation-membership-dues-55111/checkout).
|
||||
|
||||
Membership is open if you're interested in joining! See [this FAQ question](https://docs.coopcloud.tech/federation/faq/#how-do-i-join-the-federation) for more information on how to get started. If you're hosting, developing or using free software which has some relation to Co-op Cloud, we'd encourage you to join the federation!
|
||||
|
||||
### Finances
|
||||
|
||||
Autonomic has published documentation about how the federation finances work [here](https://docs.coopcloud.tech/federation/finance/). If anything is unclear, please let us know!
|
||||
|
||||
As of today, the Open Collective balance represents the total sum of money available to the federation. This is currently **6,507.14 GBP** 🎉 This money is made up the ongoing Open Collective "Infrastructure Sustainability" tier donations and the remainder of [our previous round of funding](/blog/april-2023-funding-report/) (budget for this funding available to review [here](/blog/new-year-status-update/)). Thanks again for the support folks 😍
|
||||
|
||||
In [Resolution 003](https://docs.coopcloud.tech/federation/resolutions/passed/003/), we decided on budgets for paid work and an hourly rate. If you're a member of the federation, please submit budget proposals to get paid for your work!
|
||||
|
||||
### Meeting schedule
|
||||
|
||||
There is a poll currently flying around in the members only federation channel on Matrix. Please take a look and fill in your times! We will aim to discuss a fixed meeting schedule (which takes all members timezones into account) going forward, so we can avoid the organisational churn of online polls.
|
||||
|
||||
-- decentral1se on behalf of Autonomic
|
@ -19,7 +19,7 @@ Before we get into the proposal, some context on where we're at now. Some "metri
|
||||
|
||||
- Stabilised our command line client [`abra`](https://docs.coopcloud.tech/abra/) (the `v0.4` release series is out this month). We've seen a diverse group of people picking the tool up and deploying a bunch of software such as [bath.social](https://bath.social), [bonfirenetworks.org](https://bonfirenetworks.org/), [utaw.tech](https://utaw.tech), [wiki.cafe](https://wiki.cafe), [biobulkbende.org](https://biobulkbende.org) & [servers.coop](https://servers.coop) :exploding_head:
|
||||
|
||||
- Established an [Open Collective](https://opencollective.com/coop-cloud) account which has been used to [compensate contributors](https://docs.coopcloud.tech/get-involved/#compensation) and begin with [building up a monthly income](https://opencollective.com/coop-cloud/transactions?type=CREDIT) which will sustain the project beyond grant funding.
|
||||
- Established an [Open Collective](https://opencollective.com/coop-cloud) account which has been used to [compensate contributors](https://docs.coopcloud.tech/intro/get-involved/#compensation) and begin with [building up a monthly income](https://opencollective.com/coop-cloud/transactions?type=CREDIT) which will sustain the project beyond grant funding.
|
||||
|
||||
- Facilitated space for an online community of friendly & helpful individuals to come together on our [matrix rooms](https://docs.coopcloud.tech/intro/contact/). Folks on the fediverse are fairly keen [on the project](https://social.coop/@coopcloud) and the ideas of the project have been well received on [ssb](https://scuttlebutt.nz).
|
||||
|
||||
|
167
content/blog/new-year-status-update-25.md
Normal file
@ -0,0 +1,167 @@
|
||||
---
|
||||
title: "New year status update"
|
||||
date: 2025-01-10T11:32:59+02:00
|
||||
draft: false
|
||||
image: "/img/keyb.png"
|
||||
imageCredit: "Image from the Outdoor Computing Club collection by Fletcher Bach (are.na/block/21997694)"
|
||||
description: "New year status update 2025"
|
||||
---
|
||||
|
||||
Happy new year all! Here's another status update from your friendly neighbourhood democratic software federation 💫
|
||||
|
||||
<!--more-->
|
||||
|
||||
## Kite flying hour is back 🪁
|
||||
|
||||
We are meeting weekly again!
|
||||
|
||||
Here's the [running agenda](https://pad.autonomic.zone/VtyrLUl9RWaJGgEDrncQUw?view) and [documentation](https://docs.coopcloud.tech/federation/organisers/#kite-flying-hours) for context and motivation for this regular online hangout and co-working session.
|
||||
|
||||
We are meeting every Thursday online at alternating moments to account for different timezones:
|
||||
|
||||
* timeslot 1: 12 UTC 📅
|
||||
* timeslot 2: 19 UTC 📅
|
||||
|
||||
Check in on our [Matrix channels](https://docs.coopcloud.tech/intro/contact/) to see what the upcoming time slot is or keep an eye on [this fedi thread](https://social.coop/@coopcloud/113555815289767778). There is budget to claim for active contributors. See [`R024`](https://docs.coopcloud.tech/federation/resolutions/passed/024/) for more.
|
||||
|
||||
## `social.coop` donation 💸
|
||||
|
||||
The Good People of [`social.coop`](https://social.coop) decided to make an incredible financial contribution to Co-op Cloud. Thank you all so much! Read more [here](https://social.coop/@coopcloud/113442786975981368).
|
||||
|
||||
## Updating the anarchist cookbook of recipes 🧨
|
||||
|
||||
As more comrades start to use Co-op Cloud more regularly in their daily infrastructure work, we're starting to see new recipes come in, recipes that hadn't been working correctly are fixed, while others receive upgrades and new features!
|
||||
|
||||
Here's a quick run-through of the weird and wonderful recipe updates we saw passing by in the last weeks/months.
|
||||
|
||||
* The [Mastodon recipe](https://git.coopcloud.tech/coop-cloud/mastodon) is so back (thanks to `bimbo.blog.br`)
|
||||
* The [Workadventure recipe](https://git.coopcloud.tech/coop-cloud/workadventure) is *almost* back (thanks to `wiki.cafe`)
|
||||
* A wild [Gitlab recipe](https://git.coopcloud.tech/coop-cloud/gitlab) recipe appears (thanks `@marlon0` from [MIR](https://mirnet.org))
|
||||
* A wild [Pretix recipe](https://git.coopcloud.tech/coop-cloud/pretix) appears (thanks [Local-IT](https://local-it.org) / ESN)
|
||||
* We have Signal and Telegram bridges available in the [Matrix Synapse recipe](https://git.coopcloud.tech/coop-cloud/matrix-synapse) (thanks `@Simon`, `@decentral1se`)
|
||||
* The [Limesurvey recipe](https://git.coopcloud.tech/coop-cloud/limesurvey) got Authentik LDAP Outpost support (thanks [a bunch of hackers](https://git.coopcloud.tech/coop-cloud/limesurvey/commits/branch/main))
|
||||
* A wild [XWiki recipe](https://git.coopcloud.tech/coop-cloud/xwiki) appears (thanks [a bunch of hackers](https://git.coopcloud.tech/coop-cloud/xwiki/commits/branch/main))
|
||||
* The [Zammad recipe](https://git.coopcloud.tech/coop-cloud/zammad) now has SAML support integrated with [Authentik](https://git.coopcloud.tech/coop-cloud/authentik) (thanks `@moritz`)
|
||||
* The [Rallly recipe](https://git.coopcloud.tech/coop-cloud/rallly) now has Single-Sign-on support (thanks `@simon`)
|
||||
* The [Kimai recipe](https://git.coopcloud.tech/coop-cloud/kimai) now includes SAML SSO (thanks [a bunch of hackers](https://git.coopcloud.tech/coop-cloud/kimai/commits/branch/main))
|
||||
* A wild suite of `*arr` recipes appear! That is, [Sonarr](https://git.coopcloud.tech/coop-cloud/sonarr), [Radarr](https://git.coopcloud.tech/coop-cloud/radarr) and [Prowlarr](https://git.coopcloud.tech/coop-cloud/prowlarr). Also, the [Photoprism](https://git.coopcloud.tech/coop-cloud/photo-prism) and [Navidrome](https://git.coopcloud.tech/coop-cloud/navidrome) recipes too! Huge thanks to `@Ammar` 🎉
|
||||
|
||||
## New federation members and friends 👩💻
|
||||
|
||||
A very warm welcome to the new federation members 👋 🥹
|
||||
|
||||
* [Ammar](https://docs.coopcloud.tech/federation/resolutions/passed/022/)
|
||||
* [Karrot](https://docs.coopcloud.tech/federation/resolutions/passed/019/)
|
||||
* [EOTL](https://docs.coopcloud.tech/federation/resolutions/passed/018/)
|
||||
* [Klasse & Methode](https://docs.coopcloud.tech/federation/resolutions/passed/015/)
|
||||
|
||||
We've also seen some spectacular projects getting interested in and/or deploying Co-op Cloud: [Movement Infrastructure Research](https://mirnet.org) and [Escuela Común](https://escuelacomun.yanapak.org/) / [Red Abya Yala](https://abyayala.sutty.nl/) 👀
|
||||
|
||||
Anyone can [become a member](https://docs.coopcloud.tech/federation/membership/) and help shape the project 📢
|
||||
|
||||
## New website Coming Soon ™ 🕸️
|
||||
|
||||
[`R023`](https://docs.coopcloud.tech/federation/resolutions/passed/023/) has been passed! `@sef` from [`doop.coop`](https://doop.coop) is on the case! We're hoping to have the results of a federation wide survey coming in shortly and then we can start to come up with a new design 🎉
|
||||
|
||||
## Self-management migrations 🚚
|
||||
|
||||
We ran into a few "growing pains" recently regarding how we self-manage the project. We won't bore you with the details (they're in [this small resolution](https://pad.local-it.org/5JBUdyfkQauR5yhJ_IR2xA?both) if you really must) but based on feedback we've got a new setup on `git.coopcloud.tech` 🤓
|
||||
|
||||
* [`git.coopcloud.tech/toolshed`](https://git.coopcloud.tech/toolshed): the new location for all "non-recipe" repositores such as `abra`, the docs, the website etc.
|
||||
* [`git.coopcloud.tech/coop-cloud`](https://git.coopcloud.tech/coop-cloud): now dedicated for recipe repositories.
|
||||
* [We're migrating away](https://git.coopcloud.tech/toolshed/organising/issues/667) from a single issue tracker for the entire project. We originally went with this option to have a single overview but we can now do this with [organisation-wide project boards](https://git.coopcloud.tech/toolshed/-/projects).
|
||||
* We're considering the use of the [timetracking software Kimai ](https://git.coopcloud.tech/coop-cloud/kimai) to track our time and monitor budgets but we hit the [ol' SSO question](https://git.coopcloud.tech/toolshed/organising/issues/669).
|
||||
|
||||
## New `abra` release candidate 🌈
|
||||
|
||||
It's been 10 months and 236+ commits of `abra` hacking without a release 🙈
|
||||
|
||||
We took on quite an ambitious list of new features and ran into a number of challenges along the way. Thanks everyone for your patience 💓
|
||||
|
||||
Due to the sheer amount of changes, we're going with a release candidate (`0.10.0-rc1-beta`) which people can test out before we do a proper release.
|
||||
|
||||
You can test it out by running: `abra upgrade --rc`. Please note however, this will overwrite your current `abra` binary in-place (run `which abra` to see where it is if you want to make a backup).
|
||||
|
||||
You can also grab the right binary for your system from [`git.coopcloud.tech/toolshed/abra/releases`](https://git.coopcloud.tech/toolshed/abra/releases/tag/0.10.0-rc1-beta) and manually download and `chmod +x` it. Documentation for this is [here](https://docs.coopcloud.tech/abra/upgrade/#manually).
|
||||
|
||||
⚠️ As always, **please back up** your `$ABRA_DIR` / `~/.abra` before testing. More specifically, any app `.env` files or recipe changes you're hacking on ⚠️
|
||||
|
||||
Here's the *Work-In-Progress* migration guide: [`0.9.x-beta` 👉 `0.10.x-beta`](https://docs.coopcloud.tech/abra/upgrade/#09x-beta-010x-beta).
|
||||
|
||||
If you're curious, here's the ["mega issue"](https://git.coopcloud.tech/toolshed/organising/issues/583) we used to coordinate this release (*and* the [project board](https://git.coopcloud.tech/toolshed/-/projects/29) we migrated to 😅).
|
||||
|
||||
Finally, a list of the top-level features that are ready to test is as follows.
|
||||
|
||||
### `backup-bot-two` support
|
||||
|
||||
The specification has been [published](https://docs.coopcloud.tech/specs/backup/spec/). The implementation has been [released](https://git.coopcloud.tech/coop-cloud/backup-bot-two). The `abra` machinery has been [wired up](https://git.coopcloud.tech/toolshed/abra/pulls/447).
|
||||
|
||||
We're happy to finally announce that `backup-bot-two` is available for general testing!
|
||||
|
||||
In the grand tradition of Co-op Cloud, several federation members have been running an unreleased version of `backup-bot-two` in production for some time 😂
|
||||
|
||||
The documentation is still coming together but you can dive in right now. Deploy a `backup-bot-two`, wire up labels on your recipes and `backup` / `restore` directly from `abra`.
|
||||
|
||||
Many recipe hackers have already put in the work to enable the correct `backup-bot-two` labels. Thank you all for your maintenance work!
|
||||
|
||||
See the `backup-bot-two` [`README.md`](https://git.coopcloud.tech/coop-cloud/backup-bot-two#backupbot-ii) for more 📚
|
||||
|
||||
### Improved CLI handling
|
||||
|
||||
We finally took the plunge and migrated to a more stable command-line library in `abra`. The [enormous diff](https://git.coopcloud.tech/toolshed/abra/pulls/452) is pretty gnarly.
|
||||
|
||||
The good news is that there are now several improvements for convenient and ergonomic use of `abra` on the command-line 🌻
|
||||
|
||||
* You can now generate `abra` manpages for your system! See `abra man --help` for more.
|
||||
* The handling of `--` on the command-line is now stable again. For example, running `abra app cmd 1312.net app --user nobody -- ls -lha` works.
|
||||
* Autocompletion works for flags and for flag arguments. So you can `abra app ls -[tab]` and see a list of all possible flags. And you can `abra app ls -s [tab]` to get a list of all servers. Happy tabbin' ⌨️
|
||||
* We now have an `EXAMPLES` section for all commands in the `--help` output. Please let us know what we can improve and don't hesitate to send your docs patches!
|
||||
* It is finally possible to combine "shorthand" flags into one. For example, before: `abra app deploy -C -n 1312.net` now: `abra app deploy -Cn 1312.net`
|
||||
|
||||
#### "Operator collaboration"
|
||||
|
||||
For context, the problem in a nutshell is: when you work with others and you deploy stuff with `abra`, how do you let your collaborators know what you did?
|
||||
|
||||
At the moment, several collectives are manually syncing a Git repository somewhere under `$ABRA_DIR` / `~/.abra`. We want to eventually bring this support into `abra` itself but we're still researching how to support the existing diverse workflows.
|
||||
|
||||
In the meantime, the foundations have been implemented and are now available in `abra`. A huge thanks to `@p4u1` from [K & M](https://klasse-methode.it) for implementing a huge part of this work.
|
||||
|
||||
Here's the docs:
|
||||
* [Remote recipes](https://docs.coopcloud.tech/operators/handbook/#remote-recipes)
|
||||
* [Saving the version to the app .env file](https://docs.coopcloud.tech/operators/handbook/#saving-the-version-to-the-app-env-file)
|
||||
* [How is the new deployment version determined?](https://docs.coopcloud.tech/operators/handbook/#how-is-the-new-deployment-version-determined)
|
||||
|
||||
### Integration test suite
|
||||
|
||||
`abra` now has an automated integration test suite. It's humming away each night running (so far) 290+ tests which keep us grounded. For those curious, it's [implemented in Bash](https://git.coopcloud.tech/toolshed/abra/src/branch/main/tests/integration) 😌 Thanks to comrade `@mirsal` for loaning us the server resources 💞
|
||||
|
||||
## What we're up to next 🔭
|
||||
|
||||
It's hard to have a clear overview with so much going on but this is what seems to be gathering momentum in the channels and on the issue trackers:
|
||||
|
||||
* More inclusive documentation tool (aka "edit the docs without having to know Git and Python") ([`#665`](https://git.coopcloud.tech/toolshed/organising/issues/665)).
|
||||
* We now have a [`Co-op Cloud Docs Channel`](https://matrix.to/#/#coop-cloud-docs:autonomic.zone) and are discussing [ways to improve terminology](https://git.coopcloud.tech/toolshed/organising/issues/664) in the project.
|
||||
* Improving the recipe release workflow with `abra` ([`#663`](https://git.coopcloud.tech/toolshed/organising/issues/663)) and related, [The Maintainers Proposal ™](https://pad.autonomic.zone/42Ier8ZgQ-CUgBsFKUmdpQ?view)
|
||||
* TUI replacement for `abra app ls` ([`#657`](https://git.coopcloud.tech/toolshed/organising/issues/657))
|
||||
* Going collectively further down the "operator collaboration" rabbit hole (specifically, how to remotely sync deployment changes to fellow operators) ([`#467`](https://git.coopcloud.tech/toolshed/organising/issues/467))
|
||||
* We want to move towards a 1.0 stable release of `abra` in the near future. The discussion is beginning over on [`#670`](https://git.coopcloud.tech/toolshed/organising/issues/670).
|
||||
|
||||
The new directions of our project will always be democratically determined by participants and federation members, so please get involved to have your say 📢
|
||||
|
||||
## We're reading this month 📚 ☕
|
||||
|
||||
### SYNWARE
|
||||
|
||||
**Free software syndicates**
|
||||
|
||||
> The present volume inaugurates the Synware collection (sinwɛːʁ) on free software syndicalism. This collection 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.
|
||||
|
||||
More info, credits and an online PDF are all [here](https://oxygen.offdem.net/pub/synware-free-software-syndicates).
|
||||
|
||||
## Get Radical with us 🚩🏴
|
||||
|
||||
We’d love to see more folks [get involved](https://docs.coopcloud.tech/intro/get-involved/) 🎉
|
||||
|
||||
If you’re thinking about setting up a technology co-op, you have a software stack sitting around waiting for you to pick up now; we have the technology! It’s built by tech co-ops for tech co-ops.
|
||||
|
||||
If you’re curious but don’t know where to start, [get in touch](https://docs.coopcloud.tech/intro/contact/) anyway!
|
@ -33,7 +33,7 @@ We're now a grand total of [8 `abra` hackers](https://git.coopcloud.tech/coop-cl
|
||||
|
||||
## Get Radical with us
|
||||
|
||||
We'd love to see more folks [get involved](https://docs.coopcloud.tech/get-involved/) :tada:
|
||||
We'd love to see more folks [get involved](https://docs.coopcloud.tech/intro/get-involved/) :tada:
|
||||
|
||||
If you're thinking about setting up a technology co-op, you have a software stack sitting around waiting for you to pick up now; we have the technology! It's built by tech co-ops for tech co-ops. If you're curious but don't know where to start, [get in touch](https://docs.coopcloud.tech/intro/contact/) anyway!
|
||||
|
||||
|
79
content/blog/radmin-open-call.md
Normal file
@ -0,0 +1,79 @@
|
||||
---
|
||||
title: "Open call: financial administrator"
|
||||
date: 2025-04-25T08:00:00+00:00
|
||||
draft: true
|
||||
image: "/img/cc-finance-admin.jpg"
|
||||
imageCredit: "From the 'internet gardening' collection by tf (are.na/tf)."
|
||||
description: "The financial administrator open call"
|
||||
---
|
||||
|
||||
We are excited to announce our first open call: a *1 year term, paid position* for a special someone who can support the *Co-op Cloud Federation* with our financial administration.
|
||||
|
||||
<!--more-->
|
||||
|
||||
## What is Co-op Cloud?
|
||||
|
||||
*Co-op Cloud* is a libre software infrastructure project built by and for democratic tech collectives and worker co-ops. The goal is to craft libre software tools from existing parts which simplify and standardise the set up and maintenance of digital infrastructure. Co-op Cloud is built to serve everyday people and organisations who align with our values: grassroots democracy, public ownership and social justice. Please read [the initial project announcement post](https://autonomic.zone/blog/co-op-cloud/) and/or [our project strategy](https://docs.coopcloud.tech/intro/strategy/) for further motivation 🤓
|
||||
|
||||
*Co-op Cloud* is self-managed based on a [federation model](https://tv.undersco.re/w/3KXDjZr1JHWemx5MfKF12i). Organisations and individuals join in order to help sustain the project, pay membership dues (or apply for a waiver) and participate in [democratic decision making](https://docs.coopcloud.tech/federation/resolutions/passed/001/). See our [documentation](https://docs.coopcloud.tech/federation/) for more.
|
||||
|
||||
The *Co-op Cloud Federation* is an active and dynamic international organisation of 15 members who currently organise and carry out our work together online. An important pillar of our project sustainability is ["A fair day's wage for a fair day's work"](https://docs.coopcloud.tech/intro/get-involved/#compensation) and this requires regular and careful financial administration work. The federation has [received grant funding](https://docs.coopcloud.tech/federation/funding-applications/) and actively searchs for additional funding. We [document our ways of working](https://docs.coopcloud.tech/federation/finance/) and often members bring new proposals forward which have a financial dimension. For example: [`R009`](https://docs.coopcloud.tech/federation/resolutions/passed/009/), [`R010`](https://docs.coopcloud.tech/federation/resolutions/passed/010/) and [`R014`](https://docs.coopcloud.tech/federation/resolutions/passed/014/).
|
||||
|
||||
|
||||
## What will you do?
|
||||
|
||||
Due to lack of capacity on the part of the current Federation membership, we are actively looking for someone to support us primarily with *financial administration* . This is not a "pure" financial administration role, we also need support organising debate, adaptation and democratic decision making around the topic of money and how we deal with it together within the federation. The exact tasks of this role ("mandate") have been voted on by all federation members in [a large decision](https://docs.coopcloud.tech/federation/resolutions/passed/029/) which will be repeated here in full.
|
||||
|
||||
* Up to 12 hours a month @ 20 EUR per hour based on the currently available [federation membership dues](https://docs.coopcloud.tech/federation/membership/).
|
||||
* Establishing a financial bookkeeping structure for the federation with associated documentation.
|
||||
* Instigating handover from [Autonomic](https://autonomic.zone) 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.
|
||||
* 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](https://opencollective.com/coop-cloud).
|
||||
* Managing budgets and facilitating timetracking against those budgets (e.g. https://kimai.coopcloud.tech).
|
||||
* Herding cats. (proactively reaching out to members and chasing up loose ends, reminders, etc.)
|
||||
* Timetrack to be done on the activity level via our Kimai for accountability.
|
||||
* Invoicing for your time each month to the [Co-op Cloud Open Collective](https://opencollective.com/coop-cloud).
|
||||
|
||||
## Who are we looking for?
|
||||
|
||||
> We strongly believe in the learning capacity of people and we believe who you are as a person is more important than a limited focus on "work experience". Please don't hesitate to apply if you don't meet every aspect of this open call. If you have the desire to learn and work together, we wholeheartedly invite you to apply! If you have any questions, [please get in touch](https://docs.coopcloud.tech/intro/contact/)!
|
||||
|
||||
Are you someone who:
|
||||
|
||||
* Has affinity with self-organisation, activism and/or social movements?
|
||||
* Has knowledge and know-how of financial administration using libre software tools in a grassroots organisation?
|
||||
* Has strong communication skills?
|
||||
* Is a proactive, independent person with a "hands-on" mentality who can quickly recognize and tackle challenges?
|
||||
* Has demonstrable experience with grassroots organizations and working with members and volunteers?
|
||||
* Is comfortable speaking English as a common language and working fully online?
|
||||
* Has read and agrees to our [Code of Co-operation](https://docs.coopcloud.tech/federation/code-of-coop/)?
|
||||
|
||||
Then we'd love to hear from you 💞
|
||||
|
||||
## What do we offer?
|
||||
|
||||
The *Co-op Cloud Federation* is stewarded by [Autonomic Co-operative Limited](https://autonomic.zone) and does not have it's own legal entity. Whoever fills this role, must do so as a **freelance contractor** and be responsible for their own invoices and taxes.
|
||||
|
||||
We can offer the following:
|
||||
|
||||
* A collaboration agreement with Autonomic Co-operative Limited on a self-employed basis for up to 12 hours a month.
|
||||
* Fully remote and self-directed online working conditions. You have control over your schedule and working rhythm.
|
||||
* A role term of 1 year with a possibility to extend based on further democratic decision making. The exact start date can be decided on in conversation with the applicant.
|
||||
* An hourly rate of 20 EUR per hour (240 EUR total per month for the maximum 12 hours work). This is the rate that is offered for all paid work in the federation at this moment in time. See [`R003`](https://docs.coopcloud.tech/federation/resolutions/passed/003/) for more context.
|
||||
* A "buddy system" in which we meet once a month to focus on challenges, progress and plans. For more context, see the [proposal text](https://docs.coopcloud.tech/federation/resolutions/passed/029/#buddy-system).
|
||||
|
||||
## The Process
|
||||
|
||||
> Diversity is important to *Co-op Cloud* and we therefore strongly encourage women, people of color and people from the LGBTQIA+ community to apply for this vacancy.
|
||||
|
||||
If this seems interesting to you, please apply!
|
||||
|
||||
Please note, the application process will be conducted fully online and English is the expected common language.
|
||||
|
||||
* Send us a brief introduction and summary of your motivation and affinity to this role to [`helo AT coopcloud DOT tech`](mailto:helo@coopcloud.tech).
|
||||
* It's up to you on length but we think a single A4 sheet of paper is enough (e.g. 400-500 words with 12 pt font size).
|
||||
* We are publishing this open call mid May 2025. We hope to receive candidates and make a selection for mid to late June 2025.
|
||||
* We will be in touch some time in June 2025 to schedule an online conversation.
|
||||
* We hope to make a final decision for some time in July based on conversations with our selection of candidates.
|
187
content/blog/selfhosted-infrastructure-any%.md
Normal file
@ -0,0 +1,187 @@
|
||||
|
||||
---
|
||||
title: "Selfhosted Infrastructure Any%"
|
||||
date: 2024-03-30T16:00:00+00:00
|
||||
draft: false
|
||||
image: "/img/speedrun.jpg"
|
||||
---
|
||||
|
||||
A Co-op Cloud speedrun attempt livestream! Brought to you by by libre software.
|
||||
|
||||
<!--more-->
|
||||
|
||||
It'd been so long since [the last Co-op Cloud demo video](https://asciinema.org/a/405836) that, since then, our core command-line tool `abra` had been completely rewritten (from Bash to Golang), and the entire Co-op Cloud project moved from an in-house Autonomic production to a participatory, democratic [Co-op Cloud federation](https://docs.coopcloud.tech/federation/). Definitely time for an update!
|
||||
|
||||
So, Co-op Cloud nerd `@3wc` picked up the fine tradition of [speedrunning](https://en.wikipedia.org/wiki/Speedrunning) for a "Selfhosted Infrastructure Any%" livestream – attempting to beat their personal best time of 46m17s to deploy chat (Matrix / Fluffychat), microblogging (Hometown), and file-/calendar-sharing (Nextcloud) behind single sign-on (Keycloak).
|
||||
|
||||
<iframe title="Selfhosted Infrastructure Any%" width="560" height="315" src="https://tv.undersco.re/videos/embed/0044ff41-bf84-4b53-a6e0-4f7d7ce38622" frameborder="0" allowfullscreen="" sandbox="allow-same-origin allow-scripts allow-popups"></iframe>
|
||||
|
||||
Before we dive into the write-up, mega-thanks to audience member `@yala` for putting together an excellent write-up during the stream, including some insightful questions. And, of course, to everyone who came along, and everyone who helped signal-boost the announcement beforehand!
|
||||
|
||||
# Concept
|
||||
|
||||
The integrated set-up of Keycloak/Matrix/Hometown/Nextcloud is a running start for a small-to-medium group looking for alternatives to corporate spyware. It comprises solid alternatives to Dropbox/Google Drive, Twitter, and Slack/Discord/Whatsapp. And, the entire stack can be hosted on a cheap server (or even an old laptop or desktop computer), and the services can be accessed using reasonably slick mobile and desktop apps.
|
||||
|
||||
Single sign-on means that in some ways, this set-up is even more usable, even for non-technical users, than the corporate equivalents. And, highlighting where Co-op Cloud can help, getting this combination of tools running manually without Co-op Cloud (that is, following the separate set-up instructions for each platform) is a non-trivial technical challenge.
|
||||
|
||||
The choice of apps is primarily geared towards working groups of 3-200 people, and the focus is on internal coördination platforms rather than publication.
|
||||
|
||||
## Preparation
|
||||
|
||||
To try and simulate an experience of setting up these apps for the first time, and as a nod to the purist conditions popular with videogame speedruns, the demo starts with a blank Debian Docker image (`docker run debian`) and a blank Debian 12 server. (All commands below are run inside that container, unless specified otherwise).
|
||||
|
||||
To avoid needing to screenshare DNS and server configuration, there are DNS records for `speedrun.coopcloud.tech` and `*.speedrun.coopcloud.tech` set up, and a pre-generated SSH key has permission to log into the server as root.
|
||||
|
||||
## Howto / script
|
||||
|
||||
### 1 Local setup
|
||||
|
||||
```bash
|
||||
apt update && apt install vim curl wget openssh-client -y
|
||||
export EDITOR=vim
|
||||
```
|
||||
|
||||
(The recommended installation instructions for `abra` require both `curl` and `wget` for some reason. An issue has been opened to figure that out: [`#591`](https://git.coopcloud.tech/coop-cloud/organising/issues/591))
|
||||
|
||||
The next step is to copy-paste this from the [`abra` installation instructions](https://docs.coopcloud.tech/operators/tutorial/#install-abra):
|
||||
|
||||
```bash
|
||||
curl https://install.abra.coopcloud.tech | bash
|
||||
```
|
||||
|
||||
> An audience member commented that `curl X | bash` is not amazing security, and indeed downloading [the latest `abra` release binary](https://git.coopcloud.tech/coop-cloud/abra/releases) manually, and comparing the file checksums, would be more secure – patches to [`docs.coopcloud.tech`](https://git.coopcloud.tech/coop-cloud/docs.coopcloud.tech/) extremely welcome! See more on [`#593`](https://git.coopcloud.tech/coop-cloud/organising/issues/593).
|
||||
|
||||
Then, running `abra autocomplete bash` shows the necessary commands to set us up some autocompletion for `abra` commands.
|
||||
|
||||
### 2. Server set-up
|
||||
|
||||
The next step, on the virtual server, is to run the ["Server set-up" section](https://docs.coopcloud.tech/operators/tutorial/#server-setup) of the Co-op Cloud docs:
|
||||
|
||||
```bash
|
||||
ssh speedrun.coopcloud.tech
|
||||
# docker install convenience script
|
||||
wget -O- https://get.docker.com | bash
|
||||
|
||||
# setup swarm
|
||||
docker swarm init
|
||||
docker network create -d overlay proxy
|
||||
```
|
||||
|
||||
(Skipping adding the current user to the `docker` group, because `root` already has permission to access the Docker daemon)
|
||||
|
||||
> As above, `wget ... | bash` is a bit wacky, this is the Docker-recommended installation method but there are others – patches welcome!
|
||||
|
||||
Lastly, back on the local machine, `abra app server add speedrun.coopcloud.tech`
|
||||
|
||||
### 3. Traefik
|
||||
|
||||
```bash
|
||||
abra app new traefik
|
||||
abra app config traefik.speedrun.coopcloud.tech
|
||||
abra app deploy traefik.speedrun.coopcloud.tech -c -n
|
||||
```
|
||||
|
||||
(`-c` to skip waiting for the container to come up, and `-n` to skip the confirmation prompt)
|
||||
|
||||

|
||||
|
||||
### 4. Keycloak
|
||||
|
||||
```bash
|
||||
abra app new keycloak --secrets
|
||||
abra app config keycloak.speedrun.coopcloud.tech
|
||||
abra app deploy keycloak.speedrun.coopcloud.tech -c -n
|
||||
```
|
||||
|
||||
Then the Keycloak interface is available at `https://keycloak.speedrun.coopcloud.tech`, necessary to set up the OpenID Connect "clients" for single sign-on for the other apps.
|
||||
|
||||

|
||||
|
||||
### 5. Matrix
|
||||
|
||||
```bash
|
||||
abra app new matrix-synapse
|
||||
```
|
||||
|
||||
Meanwhile, by this point Keycloak is alive, and ready to create a new "client". Doing so requires specifying a "client ID", and generates a new "client secret", both of which get added:
|
||||
|
||||
```bash
|
||||
abra app config matrix-synapse.speedrun.coopcloud.tech --secrets
|
||||
# fill in SSO details
|
||||
abra app secret insert matrix-synapse.speedrun.coopcloud.tech keycloak_client_secret v1 (value)
|
||||
abra app deploy matrix-synapse.speedrun.coopcloud.tech -n -c
|
||||
```
|
||||
|
||||

|
||||
|
||||
### 6. Fluffychat
|
||||
|
||||
|
||||
```bash
|
||||
abra app new fluffychat
|
||||
abra app config fluffychat.speedrun.coopcloud.tech -n -c
|
||||
```
|
||||
|
||||

|
||||
|
||||
### 7. Hometown
|
||||
|
||||
```bash
|
||||
abra app new hometown
|
||||
```
|
||||
|
||||
Again, a new Keycloak "client" is needed, giving us a client secret and client ID.
|
||||
|
||||
Additionally (at least, for now), it's necessary to do some slightly cursed hacking on the server:
|
||||
|
||||
```bash
|
||||
docker run -it git.coopcloud.tech/coop-cloud-chaos-patchs/hometown:v4.0.15-hometown-1.1.1 bash
|
||||
/usr/local/bin/docker-entrypoint.sh bundle exec rake secret # once for otp_secret
|
||||
/usr/local/bin/docker-entrypoint.sh bundle exec rake secret # then a second time for secret_key
|
||||
/usr/local/bin/docker-entrypoint.sh bundle exec rake mastodon:webpush:generate_vapid_key
|
||||
```
|
||||
|
||||
Then manually insert the secrets, generate the remaining ones, and edit in the `VAPID_PUBLIC_KEY` and the other SSO details:
|
||||
|
||||
```bash
|
||||
abra app secret insert hometown.speedrun.coopcloud.tech vapid_private_key v1 <value>
|
||||
abra app secret insert hometown.speedrun.coopcloud.tech otp_secret v1 <value>
|
||||
abra app secret insert hometown.speedrun.coopcloud.tech secret_key v1 <value>
|
||||
abra app config hometown.speedrun.coopcloud.tech
|
||||
# set OIDC_* settings, and VAPID_PUBLIC_KEY
|
||||
```
|
||||
|
||||
Now, finally, the app can be deployed!
|
||||
|
||||
```bash
|
||||
abra app deploy hometown.speedrun.coopcloud.tech -n -c
|
||||
```
|
||||
|
||||

|
||||
|
||||
### 8. Nextcloud
|
||||
|
||||
```bash
|
||||
abra app new nextcloud --secrets
|
||||
abra app deploy nextcloud.speedrun.coopcloud.tech
|
||||
```
|
||||
|
||||
Annoyingly, Nextcloud needs stuff done in the web interface, and in the PHP config file, for SSO. So, with another new Keycloak client set up, the next step is logging into https://nextcloud.speedrun.coopcloud.tech, going to "Apps", installing "OIDC login by pulsejet", and then editing the config file:
|
||||
|
||||
```bash
|
||||
abra app run nextcloud.speedrun.coopcloud.tech
|
||||
apt update && apt install vim
|
||||
vim config/config.php
|
||||
# fill in from https://git.coopcloud.tech/coop-cloud/nextcloud#how-do-i-integrate-with-keycloak-sso
|
||||
```
|
||||
|
||||
(in the demo, this was done from the server, but the above approach is probably conceptually simpler)
|
||||
|
||||

|
||||
|
||||
## Closing thoughts
|
||||
|
||||
Even though no records got broken, this was fun to make, and definitely a better way to prepare for an in-person demo than silent solo-hacking. It's also nice to get a little "this is how Co-op Cloud is currently looking" demo video out of it.
|
||||
|
||||
If you have ideas for future streams, hit us up on Mastodon ([@coopcloud@social.coop](https://social.coop/@coopcloud/)) or dive into our Matrix ([#coopcloud:autonomic.zone](https://matrix.to/#/#coopcloud:autonomic.zone)). Otherwise, follow us directly on owncast ([`@cast@cast.coopcloud.tech`](https://cast.coopcloud.tech/)) and/or peertube ([@coopcloud@tv.undersco.re](https://tv.undersco.re/a/coopcloud/)) to hear about future streams and videos when they happen!
|
@ -15,7 +15,7 @@ Happy September folks! Time for another recap of what we've been up to.
|
||||
|
||||
Our rewrite of `abra`, the Co-op Cloud command-line tool, continues apace: the `server`/`recipe` commands are completed, progress can be seen on [TODO.md](https://git.coopcloud.tech/coop-cloud/go-abra/src/branch/main/TODO.md). We're working on design and usability as we go. The new command-line seems to remove the need to install Docker locally which is a huge win for portability :partly_sunny:
|
||||
|
||||
`@roxxers` has set up our own Golang package repositories in [coop-cloud/coopcloud.tech#20](https://git.coopcloud.tech/coop-cloud/coopcloud.tech/issues/20#issuecomment-8201), so we can now do things like `go get coopcloud.tech/abra` for package installations.
|
||||
`@roxxers` has set up our own Golang package repositories in [toolshed/coopcloud.tech#20](https://git.coopcloud.tech/toolshed/coopcloud.tech/issues/20#issuecomment-8201), so we can now do things like `go get coopcloud.tech/abra` for package installations.
|
||||
|
||||
`@roxxers` also put together [`abra-git`](https://aur.archlinux.org/packages/abra-git/), an Arch AUR package of `abra` :rainbow:
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
+++
|
||||
title = "abra"
|
||||
vanity = "https://git.coopcloud.tech/coop-cloud/go-abra"
|
||||
vanity = "https://git.coopcloud.tech/toolshed/go-abra"
|
||||
aliases = [
|
||||
"/abra/cli",
|
||||
"/abra/cli/app",
|
||||
@ -15,4 +15,4 @@ aliases = [
|
||||
"/abra/secret",
|
||||
"/abra/web",
|
||||
]
|
||||
+++
|
||||
+++
|
||||
|
@ -1,4 +1,4 @@
|
||||
+++
|
||||
title = "tagcmp"
|
||||
vanity = "https://git.coopcloud.tech/coop-cloud/tagcmp"
|
||||
+++
|
||||
vanity = "https://git.coopcloud.tech/toolshed/tagcmp"
|
||||
+++
|
||||
|
@ -13,6 +13,6 @@
|
||||
},
|
||||
{
|
||||
"left": "What about other alternatives?",
|
||||
"right": "Co-op Cloud helps fill a gap between the personal and the industrial-scale: it's easier to use than [Kubernetes](https://kubernetes.io/) or [Ansible](https://www.ansible.com/), does more to support multi-server, multi-tenant deployments than [Cloudron](https://www.cloudron.io/), and is much easier than manual deployments. [See all the comparisons with other tools](https://docs.coopcloud.tech/intro/faq/#what-about-alternative)."
|
||||
"right": "Co-op Cloud helps fill a gap between the personal and the industrial-scale: it's easier to use than [Kubernetes](https://kubernetes.io/) or [Ansible](https://www.ansible.com/), does more to support multi-server, multi-tenant deployments than [Cloudron](https://www.cloudron.io/), and is much easier than manual deployments. [See all the comparisons with other tools](https://docs.coopcloud.tech/intro/comparisons/)."
|
||||
}
|
||||
]
|
||||
|
BIN
static/img/cc-finance-admin.jpg
Normal file
After Width: | Height: | Size: 271 KiB |
BIN
static/img/keyb.png
Normal file
After Width: | Height: | Size: 2.8 MiB |
BIN
static/img/solifedi.jpg
Normal file
After Width: | Height: | Size: 245 KiB |
BIN
static/img/speedrun-fluffychat.webp
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
static/img/speedrun-hometown.webp
Normal file
After Width: | Height: | Size: 146 KiB |
BIN
static/img/speedrun-keycloak.webp
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
static/img/speedrun-matrix.webp
Normal file
After Width: | Height: | Size: 70 KiB |
BIN
static/img/speedrun-nextcloud.webp
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
static/img/speedrun-traefik.webp
Normal file
After Width: | Height: | Size: 42 KiB |
BIN
static/img/speedrun.jpg
Normal file
After Width: | Height: | Size: 262 KiB |
@ -35,11 +35,11 @@
|
||||
"deprecated": false,
|
||||
"description": "Modern CSS framework based on Flexbox",
|
||||
"devDependencies": {
|
||||
"autoprefixer": "^9.8.6",
|
||||
"autoprefixer": "^10.0.0",
|
||||
"clean-css-cli": "^5.0.0",
|
||||
"node-sass": "^4.14.1",
|
||||
"node-sass": "^9.0.0",
|
||||
"postcss-cli": "^7.1.2",
|
||||
"rimraf": "^4.0.0"
|
||||
"rimraf": "^5.0.0"
|
||||
},
|
||||
"files": [
|
||||
"css",
|
||||
|
@ -350,4 +350,8 @@ div.thumbnail {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.highlight {
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
@ -8,5 +8,9 @@
|
||||
<p>
|
||||
Copyleft {{ now.Format "2006"}} Autonomic Cooperative
|
||||
</p>
|
||||
|
||||
<!-- NOTE(d1): for https://social.coop/settings/verification
|
||||
due to requiring 'rel="me"', we can't stuff this in the config.toml -->
|
||||
<a style="display:none;" rel="me" href="https://social.coop/@coopcloud">Mastodon</a>
|
||||
</div>
|
||||
</footer>
|
||||
|
@ -1,6 +1,6 @@
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
{{ $title := print .Site.Title " | " .Title }}
|
||||
{{ if .IsHome }}{{ $title = .Site.Title }}{{ end }}
|
||||
{{/* scss compiling */}}
|
||||
@ -8,8 +8,12 @@
|
||||
{{ $style := resources.Get "scss/main.scss" | resources.ToCSS $options }}
|
||||
{{ template "_internal/opengraph.html" . }}
|
||||
{{ template "_internal/twitter_cards.html" . }}
|
||||
<link href='{{ $style.RelPermalink }}' rel="stylesheet">
|
||||
<meta name="go-import" content="coopcloud.tech/tagcmp git https://git.coopcloud.tech/coop-cloud/tagcmp">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<link href='{{ $style.RelPermalink }}' rel="stylesheet" />
|
||||
{{ with .OutputFormats.Get "rss" -}}
|
||||
{{ printf `<link rel=%q type=%q href=%q title=%q />` .Rel .MediaType.Type .Permalink site.Title | safeHTML }}
|
||||
{{ end }}
|
||||
|
||||
<meta name="go-import" content="coopcloud.tech/tagcmp git https://git.coopcloud.tech/coop-cloud/tagcmp" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<title>{{ $title }}</title>
|
||||
</head>
|
||||
|