Add Focalboard service
This commit is contained in:
parent
5be2dfbd37
commit
a7896dc7aa
5 changed files with 108 additions and 0 deletions
46
docs/services/focalboard.md
Normal file
46
docs/services/focalboard.md
Normal file
|
@ -0,0 +1,46 @@
|
|||
# Focalboard
|
||||
|
||||
[Focalboard](https://www.focalboard.com/) is an open source, self-hosted alternative to [Trello](https://trello.com/), [Notion](https://www.notion.so/), and [Asana](https://asana.com/)
|
||||
|
||||
|
||||
## Dependencies
|
||||
|
||||
This service requires the following other services:
|
||||
|
||||
- a [Postgres](postgres.md) database
|
||||
- a [Traefik](traefik.md) reverse-proxy server
|
||||
|
||||
|
||||
## Configuration
|
||||
|
||||
To enable this service, add the following configuration to your `vars.yml` file and re-run the [installation](../installing.md) process:
|
||||
|
||||
```yaml
|
||||
########################################################################
|
||||
# #
|
||||
# focalboard #
|
||||
# #
|
||||
########################################################################
|
||||
|
||||
focalboard_enabled: true
|
||||
|
||||
focalboard_hostname: mash.example.com
|
||||
focalboard_path_prefix: /focalboard
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
# /focalboard #
|
||||
# #
|
||||
########################################################################
|
||||
```
|
||||
|
||||
In the example configuration above, we configure the service to be hosted at `https://mash.example.com/focalboard`.
|
||||
|
||||
You can remove the `focalboard_path_prefix` variable definition, to make it default to `/`, so that the service is served at `https://mash.example.com/`.
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
After [installation](../installing.md), you can go to the Focalboard URL you've configured above.
|
||||
|
||||
You can use the signup page to register the first (administrator) user. The first signup is always allowed. Users after the first one need an invitation link to sign up.
|
|
@ -8,6 +8,7 @@
|
|||
| [Docker Registry Browser](https://github.com/klausmeyer/docker-registry-browser) | Web Interface for the Docker Registry HTTP API V2 written in Ruby on Rails | [Link](services/docker-registry-browser.md) |
|
||||
| [Docker Registry Purger](https://github.com/devture/docker-registry-purger) | A small tool used for purging a private Docker Registry's old tags | [Link](services/docker-registry-purger.md) |
|
||||
| [Gitea](https://gitea.io/) | A painless self-hosted Git service. | [Link](services/gitea.md) |
|
||||
| [Focalboard](https://www.focalboard.com/) | An open source, self-hosted alternative to [Trello](https://trello.com/), [Notion](https://www.notion.so/), and [Asana](https://asana.com/). | [Link](services/gitea.md) |
|
||||
| [Miniflux](https://miniflux.app/) | Minimalist and opinionated feed reader. | [Link](services/miniflux.md) |
|
||||
| [Nextcloud](https://nextcloud.com/) | The most popular self-hosted collaboration solution for tens of millions of users at thousands of organizations across the globe. | [Link](services/nextcloud.md) |
|
||||
| [PeerTube](https://joinpeertube.org/) | A tool for sharing online videos | [Link](services/peertube.md) |
|
||||
|
|
|
@ -65,6 +65,8 @@ devture_systemd_service_manager_services_list_auto: |
|
|||
+
|
||||
([{'name': (docker_registry_purger_identifier + '.timer'), 'priority': 3000, 'groups': ['mash', 'docker-registry-purger']}] if docker_registry_purger_enabled else [])
|
||||
+
|
||||
([{'name': (focalboard_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'focalboard']}] if focalboard_enabled else [])
|
||||
+
|
||||
([{'name': (gitea_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'gitea', 'gitea-server']}] if gitea_enabled else [])
|
||||
+
|
||||
([{'name': (nextcloud_identifier + '-server.service'), 'priority': 2000, 'groups': ['mash', 'nextcloud', 'nextcloud-server']}] if nextcloud_enabled else [])
|
||||
|
@ -122,6 +124,12 @@ devture_postgres_systemd_services_to_stop_for_maintenance_list: |
|
|||
|
||||
devture_postgres_managed_databases_auto: |
|
||||
{{
|
||||
([{
|
||||
'name': focalboard_database_name,
|
||||
'username': focalboard_database_username,
|
||||
'password': focalboard_database_password,
|
||||
}] if focalboard_enabled and focalboard_database_type == 'postgres' and focalboard_database_hostname == devture_postgres_identifier else [])
|
||||
+
|
||||
([{
|
||||
'name': gitea_config_database_name,
|
||||
'username': gitea_config_database_username,
|
||||
|
@ -458,6 +466,53 @@ docker_registry_purger_gid: "{{ mash_playbook_gid }}"
|
|||
|
||||
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
# focalboard #
|
||||
# #
|
||||
########################################################################
|
||||
|
||||
focalboard_enabled: false
|
||||
|
||||
focalboard_identifier: "{{ mash_playbook_service_identifier_prefix }}focalboard"
|
||||
|
||||
focalboard_base_path: "{{ mash_playbook_base_path }}/focalboard"
|
||||
|
||||
focalboard_uid: "{{ mash_playbook_uid }}"
|
||||
focalboard_gid: "{{ mash_playbook_gid }}"
|
||||
|
||||
focalboard_systemd_required_systemd_services_list: |
|
||||
{{
|
||||
(['docker.service'])
|
||||
+
|
||||
([devture_postgres_identifier ~ '.service'] if devture_postgres_enabled and focalboard_database_hostname == devture_postgres_identifier else [])
|
||||
}}
|
||||
|
||||
focalboard_database_type: "{{ 'postgres' if devture_postgres_enabled else '' }}"
|
||||
focalboard_database_hostname: "{{ devture_postgres_identifier if devture_postgres_enabled else '' }}"
|
||||
focalboard_database_port: "{{ '5432' if devture_postgres_enabled else '' }}"
|
||||
focalboard_database_password: "{{ '%s' | format(mash_playbook_generic_secret_key) | password_hash('sha512', 'db.focalboard', rounds=655555) | to_uuid }}"
|
||||
|
||||
focalboard_container_additional_networks: |
|
||||
{{
|
||||
([mash_playbook_reverse_proxyable_services_additional_network] if mash_playbook_reverse_proxyable_services_additional_network else [])
|
||||
+
|
||||
([devture_postgres_container_network] if devture_postgres_enabled and focalboard_database_hostname == devture_postgres_identifier else [])
|
||||
}}
|
||||
|
||||
focalboard_container_labels_traefik_enabled: "{{ mash_playbook_traefik_labels_enabled }}"
|
||||
focalboard_container_labels_traefik_docker_network: "{{ mash_playbook_reverse_proxyable_services_additional_network }}"
|
||||
focalboard_container_labels_traefik_entrypoints: "{{ devture_traefik_entrypoint_primary }}"
|
||||
focalboard_container_labels_traefik_tls_certResolver: "{{ devture_traefik_certResolver_primary }}"
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
# /focalboard #
|
||||
# #
|
||||
########################################################################
|
||||
|
||||
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
# gitea #
|
||||
|
|
|
@ -85,6 +85,10 @@
|
|||
name: docker_registry_purger
|
||||
version: v1.0.0-0
|
||||
|
||||
- src: git+https://github.com/mother-of-all-self-hosting/ansible-role-focalboard.git
|
||||
name: focalboard
|
||||
version: v7.8.0-0
|
||||
|
||||
- src: git+https://github.com/mother-of-all-self-hosting/ansible-role-gitea.git
|
||||
name: gitea
|
||||
version: v1.18.5-3
|
||||
|
|
|
@ -60,6 +60,8 @@
|
|||
- role: galaxy/docker_registry_browser
|
||||
- role: galaxy/docker_registry_purger
|
||||
|
||||
- role: galaxy/focalboard
|
||||
|
||||
- role: galaxy/gitea
|
||||
|
||||
- role: galaxy/miniflux
|
||||
|
|
Loading…
Add table
Reference in a new issue