Manages the services hosted on the Flow Platform.
Find a file
2023-12-16 17:22:52 +00:00
assets/gotosocial fix(gts): add custom fonts to GTS 2023-08-15 13:37:57 +01:00
config@d332a51218 chore: update config for Forgejo backups 2023-12-16 17:22:52 +00:00
example/gotosocial/css fix(gts/css): update word-wrap for fields 2023-08-23 00:39:06 +01:00
internal refactor: internal actions package 2023-11-26 07:46:10 +00:00
magefiles refactor: internal actions package 2023-11-26 07:46:10 +00:00
templates chore: upgrade GTS to v0.12.0 and update config 2023-11-17 21:48:54 +00:00
.gitattributes chore: add fonts to LFS 2023-08-15 13:29:43 +01:00
.gitignore chore: upgrade Forgejo to v1.21.2-1 2023-12-16 12:09:26 +00:00
.gitmodules chore: add config submodule and update render script 2022-11-21 17:31:28 +00:00
go.mod refactor: update project structure 2023-11-24 09:56:35 +00:00
go.sum fix(traefik): update the root domain redirect rule 2023-08-01 16:40:45 +01:00
LICENSE chore: add LICENSE 2023-02-12 21:11:04 +00:00
README.asciidoc docs: update README 2023-12-16 17:20:48 +00:00

Flow Services

Overview

The repository manages the services hosted on Flow Platform with the use of Go and Mage.

Currently hosted services

Name Description Link

Landing

The front page of the Flow Platform.

https://dananglin.me.uk

Free Flow

A single-user ActivityPub instance powered by GoToSocial.

https://freeflow.dananglin.me.uk

Code Flow

The Flow Platforms software forge powered by Forgejo.

https://codeflow.dananglin.me.uk

Work Flow

A simple CI engine powered by Woodpecker.

https://workflow.dananglin.me.uk

Mage targets

$ mage -l
Targets:
  clean       cleans the workspace.
  deploy      deploys the services to the Flow Platform.
  prepare     prepares the service's build directory.
  shutdown    shuts down the Flow Platform in a given environment.
  stop        stops a running service within the Flow Platform.

Deployment guide

The config directory contains the Flow Platforms configuration (e.g. versions of hosted software, etc). It is a submodule of a hidden repository due to the sensitive nature of the configuration.

  1. (Optional) Run mage prepare <environment> <service> to run preparations before deployment. Here the relevant files to run the service are downloaded, templates are rendered and static assets are copied to the build directory (if required). Step is optional because the 'deploy' stage automatically runs 'prepare' as a dependency. For example:

    mage prepare production forgejo
  2. To deploy changes to Platform, run mage deploy <environment> <service>. The deploy target runs the prepare target as a dependency. For example:

    mage deploy production forgejo